Key Responsibilities:
Design, develop, and maintain high-performance, scalable backend services using Java and Spring Boot.
Implement and manage distributed messaging systems with Apache Kafka, ensuring real-time data streaming and processing.
Integrate Kafka with various services and systems to ensure seamless data flow.
Optimize and troubleshoot Kafka clusters, brokers, topics, and configurations.
Collaborate with cross-functional teams (front-end, DevOps, data engineers) to design and develop efficient microservices.
Ensure code quality through automated tests and participate in code reviews.
Monitor application performance and take proactive actions to mitigate potential issues.
Stay up-to-date with new Java and Kafka features and technologies to improve existing systems.
Required Skills & Qualifications:
3+ years of experience in Java-based backend development.
Strong knowledge of Java 8+ and frameworks like Spring Boot, Spring Data, and Spring Cloud.
Hands-on experience with Apache Kafka: working with Kafka brokers, producers, consumers, and stream processing.
Familiarity with Kafka Streams, Kafka Connect, and Schema Registry.
Experience with RESTful APIs and microservices architecture.
Proficient in relational (e.g., MySQL, PostgreSQL) and NoSQL databases (e.g., MongoDB, Cassandra).
Knowledge of containerization tools like Docker and Kubernetes.
Familiarity with message brokers like RabbitMQ, ActiveMQ, or others.
Solid understanding of distributed systems and multithreading concepts.
Experience with CI/CD pipelines and version control systems like Git.
Preferred Qualifications:
Experience with cloud platforms like AWS, Azure, or Google Cloud.
Knowledge of DevOps practices and tools.
Familiarity with event-driven architecture and CQRS.
Exposure to other messaging systems or event platforms.
Soft Skills:
Strong problem-solving abilities and a keen attention to detail.
Excellent communication and collaboration skills.
Ability to work independently and within a team.
Bachelor's degree in Computer Science