We are looking for a skilled Java Developer with expertise in building microservices-based applications. As a Senior Software Engineer, you will play a key role in designing, developing, and maintaining scalable and robust microservices to support our applications' architecture. You will collaborate with cross-functional teams to deliver high-quality solutions that meet our business requirements.
Responsibilities:
· Design and develop Java-based microservices following best practices and architectural guidelines.
· Collaborate with architects and other developers to define microservices architecture and integration patterns.
· Implement RESTful APIs to facilitate communication between microservices and external systems.
· Write clean, efficient, and testable code, ensuring the performance and reliability of microservices.
· Implement security measures to protect sensitive data and prevent unauthorized access.
· Conduct unit testing and integration testing of microservices to identify and fix defects.
· Work closely with DevOps teams to ensure smooth deployment and monitoring of microservices in production environments.
· Troubleshoot and resolve issues related to microservices performance, scalability, and availability.
· Participate in code reviews and provide constructive feedback to maintain code quality.
· Stay up-to-date with the latest trends and advancements in Java development and microservices technologies.
Requirements:
· Bachelor's degree in Computer Science, Software Engineering, or a related field.
· Proven experience as a Java Developer, with a strong understanding of core Java concepts and principles. ( more than 2 years of experience)
· Hands-on experience in building microservices using frameworks like Spring Boot.
· Proficiency in implementing and consuming RESTful APIs.
· Knowledge of containerization and orchestration technologies like Docker and Kubernetes.
· Familiarity with cloud platforms like Google Cloud for deploying microservices.
· Experience with database technologies like MySQL, Cassandra.
· Solid understanding of software development best practices, including version control, unit testing, and continuous integration.
· Strong problem-solving skills and the ability to work in a fast-paced, agile environment.
· Excellent communication and collaboration skills to work effectively in a team setting.