Required Skills & Qualifications
- Bachelor''s or Master''s degree in Computer Science, Software Engineering, or a related technical field.
- 5+ years of hands-on experience in backend software development, with a strong focus on distributed systems.
- Expert-level proficiency in Java and the JVM ecosystem.
- Extensive experience with Spring Boot for building and deploying production-grade microservices.
- Solid understanding and practical experience with Spring Batch for developing batch processing applications.
- Proven experience with Apache Kafka for building event-driven architectures and streaming data pipelines.
- Hands-on experience with Apache Spark (using Java APIs) for big data processing, transformations, and analytics.
- Experience in designing, developing, and deploying stream processing applications using Apache Flink.
- Strong understanding of RESTful APIs, data structures, algorithms, and design patterns.
- Experience with relational databases (e.g., PostgreSQL, MySQL) and/or NoSQL databases (e.g., Cassandra, MongoDB).
- Familiarity with containerization technologies (Docker, Kubernetes) and cloud platforms (AWS, Azure, GCP).
- Experience with version control systems (Git) and CI/CD tools.
Preferred Skills (Bonus Points)
- Experience with other messaging systems (e.g., RabbitMQ, Pulsar).
- Knowledge of data warehousing concepts and ETL processes.
- Familiarity with monitoring tools like Prometheus, Grafana, ELK Stack.
- Experience with performance tuning and optimization of Java applications and distributed systems.
- Understanding of data governance and security best practices in a distributed data environment.
- Experience in the [relevant industry, e.g., Financial Services] domain.
Mandatory Competencies
Programming Language - Java Full Stack - Angular Components and Design Patterns
Middleware - Java Middleware - Springboot
Middleware - Message Oriented Middleware - Messaging (JMS, ActiveMQ, RabitMQ, Kafka, SQS, ASB etc)
User Interface - React - React
User Interface - Typescript - Typescript
Beh - Communication and collaboration