Job Description
Primary Responsibilities:
- Develop and maintain scalable, reliable, and robust Java applications
- Design and implement microservices using Spring Boot, taking into account system scalability, security, and performance
- Integrate data streaming technologies such as Kafka to handle large-scale, real-time data processing
- Work with MongoDB or similar NoSQL databases to manage application data, ensuring performance and scalability
- Collaborate with cross-functional teams to define, design, and ship new features in a dynamic Agile environment
- Follow and contribute to the improvement of coding standards, development best practices, and deployment procedures
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency
- Analyze and resolve technical and application problems, providing third-level support to technical issues
- Participate in sprint planning, retrospective, and review meetings, and provide constructive feedback
- Create and maintain technical documentation for reference and reporting
- Comply with the terms and conditions of the employment contract, company policies and procedures, and any and all directives (such as, but not limited to, transfer and/or re-assignment to different work locations, change in teams and/or work shifts, policies in regards to flexibility of work benefits and/or work environment, alternative work arrangements, and other decisions that may arise due to the changing business environment). The Company may adopt, vary or rescind these policies and directives in its absolute discretion and without any limitation (implied or otherwise) on its ability to do so
Required Qualifications:
- Bachelor’s degree in Computer Science, Software Engineering, or related field
- Proven experience as a Java Developer with a solid grasp of Java fundamentals
- Experience with Kafka for building scalable, distributed, and fault-tolerant streaming applications
- Experience with Agile software development methodologies
- In-depth knowledge of Spring Framework, specifically Spring Boot
- Solid understanding of design principles and patterns
- Proficiency in designing and developing microservices architecture
- Proficient understanding of code versioning tools, such as Git
- Proven excellent problem-solving skills and attention to detail
- Proven solid communication skills and ability to work collaboratively
Preferred Qualifications:
- Experience with MongoDB or other NoSQL databases
- Experience with cloud services like AWS, Azure, or GCP
- Familiarity with containerization technologies such as Docker and orchestration with Kubernetes
- Knowledge of RESTful APIs and web services
- Understanding of continuous integration and continuous deployment (CI/CD) practices