We are seeking a highly skilled and experienced Java Spring Boot Developer to join our dynamic team. As a key member of our development team, you will be responsible for designing, developing, and implementing high-quality Java Spring Boot micro service applications to meet our clients' needs. The ideal candidate will have at least 3 years of experience in Java development (ideally java 11+), with a strong focus on Spring Boot framework.
Responsibilities:
1. Design, develop, and implement Java Spring Boot applications, including web applications, RESTful/SOAP APIs, and microservices.
2. Collaborate with cross-functional teams to define, design, and ship new features.
3. Write clean, maintainable, and efficient code adhering to coding standards.
4. Perform code reviews, ensuring code quality and adherence to best practices.
5. Troubleshoot, debug, and resolve application issues in a timely manner.
6. Optimize application performance and scalability.
7. Implement security and data protection measures.
Requirements:
1. Strong proficiency in Java programming language.
2. Experience with Spring Boot framework, including Spring MVC, Spring Web, Spring Data, and Spring Security.
3. Experience with RESTful/SOAP web services development.
4. Knowledge of microservices architecture and design patterns.
5. Proficiency in database technologies such as MySQL, MongoDB, Cassandra & Redis.
6. Experience working with JPQL using Spring Data
7. Experience with JMS (ActiveMQ/RabbitMQ & Kafka)
8. Experience with HTTP persistent connection pooling
9. Knowledge of Pojo object mappings and it's benefits
10. Experience working with multi-threaded applications and concepts of Future Tasks
11. Experience with version control systems such as Git (BitBucket) and it's branching strategy.
12. Knowledge of Spring Scheduling.
13. Good to have WebSockets/STOMP implementation knowledge
14. Good to have SMPP/Kannel knowledge
15. Good to have load-balancer knowledge and it's working pattern
16. Excellent problem-solving and analytical skills.
17. Strong communication and collaboration skills.
Preferred Qualification/Experience:
1. Bachelor's degree in Computer Science, Engineering, or related field.
2. Minimum of 3 years of experience in Java development.
3. Familiarity with cloud platforms such as AWS, Azure, or Tencent, Firebase.
3. Familiarity with containerization and orchestration tools such as Docker and Kubernetes.
4. Experience with Agile development methodologies.