Position Overview:
We are seeking a highly skilled and motivated Lead or Hands on Architect with Java Spring Boot Development to join our dynamic team. The ideal candidate will have a strong background in Java development, hands-on experience with Spring Boot, expertise in Apache Kafka, and a solid understanding of distributed systems. Additionally, familiarity with BPMN tools such as Camunda is a highly desirable skill. In this role, you will design, build, and maintain high-performance, scalable, and reliable backend solutions that integrate seamlessly into our distributed application landscape.
Key Responsibilities:
Application Development:
- Design, develop, and maintain backend applications and microservices using Java and Spring Boot.
- Ensure code quality through rigorous testing, peer code reviews, and adherence to best practices.
Kafka Integration:
- Design and implement real-time data pipelines and messaging solutions using Apache Kafka.
- Develop producer and consumer applications for distributed data streams.
- Optimize Kafka configurations for performance and scalability.
Distributed Systems:
- Design and build distributed systems that ensure fault tolerance, scalability, and high availability.
- Work with cloud platforms (e.g., AWS, Azure, GCP) to deploy and manage distributed applications.
BPMN Tool Integration (Nice to Have):
- Leverage Camunda or similar BPMN tools to model, execute, and optimize business processes.
- Develop and maintain workflows and integrate them with microservices and other backend systems.
- Support teams in automating workflows and aligning process management with business requirements.
Collaboration and Communication:
- Collaborate with cross-functional teams including product management, frontend developers, and DevOps.
- Translate business requirements into technical solutions and provide technical guidance.
Monitoring and Maintenance:
- Set up monitoring, logging, and alerting for backend services, Kafka pipelines, and BPMN workflows.
- Proactively identify performance bottlenecks and optimize system performance.
Continuous Improvement:
- Stay updated on the latest industry trends, tools, and technologies related to Java, Spring Boot, Kafka, distributed systems, and BPMN tools.
- Contribute to the improvement of development processes and team productivity.