Position Overview
Seeking a skilled Kafka Developer (& support specialist) to join for a client engagement. This role combines development and support responsibilities, focusing on maintaining existing Kafka clusters and enhancing applications as business needs evolve.
Key Responsibilities
Kafka Cluster Management & Support
- Monitor, maintain, and optimise existing Kafka clusters to ensure high availability and performance
- Troubleshoot and resolve Kafka-related issues in production and non-production environments
- Perform regular health checks, capacity planning, and performance tuning of Kafka infrastructure
- Implement and maintain Kafka security configurations and access controls
- Support incident management and provide timely resolution for Kafka-related incidents
Development & Enhancement
- Develop and enhance Kafka-based applications using Java
- Design and implement Kafka producers, consumers, and stream processing applications
- Write clean, maintainable, and well-documented code following best practices
- Collaborate with development teams to integrate Kafka solutions into existing applications
- Conduct code reviews and ensure adherence to coding standards
- Implement monitoring and alerting solutions for Kafka applications
Continuous Improvement
- Identify opportunities for automation and process improvements
- Stay updated with latest Kafka features and industry best practices
- Contribute to technical documentation and knowledge sharing
- Participate in capacity planning and infrastructure scaling activities
Technical Skills
- Kafka Expertise: Strong hands-on experience with Apache/ Confluent Kafka, including:
- Kafka cluster setup, configuration, and administration
- Kafka topics, partitions, replication, and consumer groups
- Kafka Connect and Kafka Streams
- Performance tuning and troubleshooting
- Java Development: Proficient in Java programming with:
- Strong understanding of Java fundamentals and object-oriented programming
- Experience with Kafka Java client libraries
- Knowledge of multithreading and concurrent programming
- Familiarity with build tools (Maven/Gradle)
- Additional Technical Knowledge:
- Experience with message serialisation formats (like, JSON)
- Understanding of distributed systems and microservices architecture
- Knowledge of monitoring tools (Prometheus, Grafana, or similar)
- Familiarity with version control systems (Git)
- Experience with CI/CD pipelines is a plus
Professional Experience
- Minimum 3-5 years of hands-on experience with Apache Kafka
- Proven track record in both development and support roles
- Experience in production support and incident management
- Background in maintaining mission-critical systems