Job Summary
We are seeking a Mid-Level Java Developer to join our core engineering team. This role is designed for a developer who excels in high-throughput, distributed environments and is passionate about building scalable, real-time data pipelines.
You will be a key contributor to our backend services, primarily utilizing Spring Boot, Apache Kafka, and MongoDB. As we move toward a fully real-time architecture, you will help us bridge our relational and non-relational worlds using modern Change Data Capture (CDC) patterns. We value a candidate who is strong in SQL and excited to work with or learn specialized tools like Debezium.
Key Responsibilities
- Microservices Development: Design and develop robust, high-performance microservices using Java (11/17+) and the Spring Boot framework.
- Real-time Data Streaming: Implement and manage Kafka producers, consumers, and stream processing logic to handle high-volume event data.
- NoSQL Data Architecting: Build and optimize document-based schemas in MongoDB, focusing on aggregation, indexing, and performance tuning.
- CDC & Data Integration: Work with (or learn to implement) Debezium connectors to capture row-level changes from relational databases and stream them into Kafka.
- Cloud-Native Deployment: Support the containerization of services using Docker and assist in managing deployments within a Kubernetes environment.
Hybrid Data Management: Leverage your SQL expertise to interface with legacy relational databases (SQL Server/Oracle/PostgreSQL) and ensure data consistency across systems
Skill Requirements
- Java Mastery: 5–6 years of professional backend development experience with Java and Spring Boot.
- Messaging & Streaming: Hands-on experience with Apache Kafka (topic design, consumer groups, and partitions).
- NoSQL Proficiency: Solid experience with MongoDB (schema design and aggregation framework).
- SQL Experience: Strong proficiency in SQL and experience working with relational databases (SQL Server, Oracle, or similar).
Other Requirements
- CDC Tools: Experience with Debezium or similar Change Data Capture frameworks is a huge plus. Candidates without experience must be willing to self-learn this technology.
- Kubernetes: Experience deploying and scaling applications in Kubernetes clusters (understanding Pods, Services, and ConfigMaps).
- Containerization: Proficiency with Docker and container orchestration.