We are seeking a highly skilled Java Developer to join our dynamic and growing engineering team. The ideal candidate will be proficient in object-oriented programming and have extensive experience with Java technologies, particularly Spring and Spring Boot. This role requires a deep understanding of web services development, database management, and cloud infrastructure to drive our backend solutions forward.
Key Responsibilities:
- Design, develop, and maintain efficient, reusable, and reliable Java code using Spring and Spring Boot frameworks.
- Implement and maintain security measures using Spring Security.
- Develop RESTful web services and manage their integration with microservices architecture.
- Handle database integration and management tasks with RDBMS such as Postgres and MySQL, as well as NoSQL databases like MongoDB.
- Configure and manage web servers, primarily Tomcat, and have familiarity with Weblogic.
- Work with build and dependency management tools like Maven and Gradle.
- Create and maintain Docker containers and manage orchestration with Kubernetes.
- Develop unit tests using JUnit, Mockito, and Powermock frameworks to ensure robustness and reliability.
- Integrate and manage messaging queues such as Kafka for asynchronous processing needs.
- Utilize Azure services and other cloud technologies to enhance deployment and scalability.
- Engage in CMS solutions development to meet specific business requirements.
- Implement best practices for multithreading and concurrency in Java applications.
- Collaborate in a team environment using Agile methodologies (Scrum or Kanban).
- Use Git for version control and actively participate in the CI/CD pipeline processes.
Qualifications:
- Bachelor’s or Master’s degree in Computer Science, Engineering, or a related field.
- Proven experience as a Java Developer with a strong background in Spring and Spring Boot.
- Solid understanding of object-oriented design principles.
- Demonstrable experience with RDBMS and NoSQL databases.
- Proficiency in developing and deploying RESTful web services.
- Knowledge of unit testing frameworks and experience with automated testing.
- Familiarity with Docker, Kubernetes, and cloud services (Azure, AWS).
- Excellent problem-solving and analytical skills.
- Strong communication skills, both written and verbal.