Position Overview
We are seeking a skilled Java Developer to join our team and contribute to the development of Bodhee Microservices. The ideal candidate will be responsible for designing, building, and maintaining high-performance, scalable microservices using Java 21+ and Play/Spring Frameworks. This role requires strong expertise in Java, SQL, database design, and unit testing with JUnit and Mockito. Experience in full-stack development and team leadership is essential. Knowledge of Angular for UI development is a plus.
Key Responsibilities
- Design and develop Bodhee Microservices using Java 21+ and Play Framework or Spring Boot, ensuring scalability, performance, and security.
- Analyze, design, program, test, document, and maintain Bodhee components, ensuring high-quality deliverables.
- Write unit test cases using JUnit and Mockito to ensure robust, reliable, and maintainable code.
- Understand and analyze inter-dependencies between services (application, system, and database) to identify and resolve inefficiencies and bottlenecks.
- Write complex SQL queries and design database tables, views, and indexes for PostgreSQL to support back-end functionality.
- Design and document APIs using Swagger, ensuring clear and reusable interfaces.
- Prepare unit test plans and create prototypes or Proof of Concepts (POCs) to validate technical approaches.
- Write well-designed, testable, reusable, and efficient code, adhering to best practices and coding standards.
- Dockerize Play and Spring Boot applications for seamless deployment and scalability.
- Deploy Bodhee Microservices and provide pre- and post-implementation support to ensure smooth operations.
- Test software to ensure performance, security, and scalability meet required standards.
- Contribute to the continuous improvement of development processes and tools.
Qualifications
- Bachelor's degree in computer science, Software Engineering, or a related field (or equivalent experience).
Skills
Required
- Strong proficiency in RDBMS (PostgreSQL) and experience writing complex SQL queries.
- Knowledge of designing database tables, views, and indexes.
- Good understanding of REST web services, multi-threading, and API design using Swagger.
- Working knowledge of caching mechanisms (e.g., Redis, Memcached) and Cache DB.
- Knowledge of Docker, Git, and deploying applications in a Linux environment.
- Basic understanding of cloud infrastructure (e.g., AWS, Azure, GCP).
- Familiarity with HTML, CSS, JavaScript, and MVC frameworks for full-stack development.
- Strong knowledge of algorithms, data structures, and software design principles.
- Proven ability to write testable, reusable, and efficient code.
- Creative problem-solving and analytical skills with a proactive attitude toward learning.
Preferred
- Experience with front-end development using Angular or similar JavaScript frameworks.
- Familiarity with UI/UX principles and modern front-end development practices.
- Knowledge of microservices architecture and cloud-native development.
- Knowledge of CI/CD pipelines and tools (e.g., Jenkins, Kubernetes).
- Exposure to automated testing frameworks beyond JUnit (e.g., Selenium) and test-driven development.
- Knowledge of MVC framework.