The ideal candidate will be responsible for developing high-quality applications. They will also be responsible for designing and implementing testable and scalable code.
Responsibilities
- Develop, and maintain high-performance Java backend applications and microservices
- Build and manage real-time streaming pipelines using Apache Flink and/or Kafka Streams
- Develop event-driven microservices integrated with Kafka, Schema Registry, and serialization formats (AVRO/JSON)
- Implement and optimize database interactions using PostgreSQL or SQL Server with Spring Data JPA/JDBC
- Participate in code reviews, performance tuning, and troubleshooting production issues
- Collaborate with cross-functional teams (product, QA, DevOps) to deliver reliable solutions
- Support CI/CD pipelines, containerization (Docker), and deployment on Kubernetes
- Implement monitoring, logging, and alerting using tools like Spring Actuator
- Ensure adherence to security best practices, including encryption and access control
- Create and maintain technical documentation using Jira and Confluence
Key Skills (Must Have):
- Programming: Strong Java, SQL
- Frameworks / Stream Processing: Apache Flink OR Spring Boot Microservices
- (At least one profile with Apache Flink)
- Kafka Streaming: Experience building Java Microservices with Kafka Streaming (AVRO or JSON) and integration into Schema Registry
- Database: PostgreSQL OR SQL Server with Spring Data JPA/JDBC
- Caching: Spring Cache/Caffeine, Redis, or in-memory caches
- Concurrency & Parallelism: Multi-threading, async processing
- Testing: Unit & integration tests, mocking
Good to Have:
- Python, Linux/shell scripting, database schema design
- CDC concepts, Kafka integration
- DevOps & Monitoring: Docker, Kubernetes, Spring Actuator
- Security: Encryption, RBAC, secure Kafka & DB
- Documentation: Jira, Confluence