Responsibilities
- Design and develop high-quality software solutions using Java Spring Boot 3.1 as the backend framework and NextJS with TailwindCSS for frontend development.
- Collaborate with cross-functional teams to understand business requirements and translate them into technical specifications.
- Write clean, efficient, and maintainable code that adheres to industry best practices and coding standards.
- Implement and maintain secure and scalable RESTfuI APIs and microservices using Spring Boot.
- Build responsive UI components using NextJS and TailwindCSS, ensuring a seamless user experience.
- Create and optimize database schemas, queries, and procedures using PostgreSQL for efficient data storage and retrieval.
- Perform code reviews to ensure code quality, scalability, and maintainability.
- Collaborate with system engineers to deploy applications to Kubernetes cluster, and continuous integration and deployment (CI/CD) processes.
- Troubleshoot and debug production issues, and provide timely resolutions.
Key Result Areas
- Software Development: Successfully design, develop, and maintain high-quality software solutions using Java Spring Boot, NextJS with TailwindCSS, and PostgreSQL. Deliver efficient and scalable code that meets business requirements and adheres to industry best practices.
- Technical Expertise: Demonstrate proficiency in Java, Spring Boot, NextJS, TailwindCSS and PostgreSQL. Stay up-to-date with emerging technologies and industry trends. Apply technical knowledge to drive innovation and enhance software development processes.
- API and Microservices Department: Design and implement RESTful APIs and microservices using Spring Boot. Ensure seamless integration and interoperability of various system components. Maintain security and performance standards for API development.
- Database Design: Develop and optimise database schemas, queries and procedures using PostgreSQL. Ensure data integrity, performance, and scalability. Implement best practices for data storage, retrieval, and indexing.
- Deployment and Production: Collaborate with DevOps engineers to deploy applications to a Kubernetes cluster. Contribute to the CI/CD processes, ensuring smooth and efficient deployments. Troubleshoot and resolve production issues promptly.
- Mentoring: Provide technical guidance and mentorship to junior engineers. Foster a culture of collaboration and continuous learning within team. Share knowledge and promote best practices to enhance the overall team performance.
- Communication and Collaboration: Effectively communicate and collaborate with cross-functional teams including product managers, designers and QA engineers. Participate in meetings, provide timely updates, and contribute to a positive and collaborative work environment.
Requirements
- Degree in Computer Science, Software Engineering, or a related field.
- 2 – 5 years of proven experience as a Software Developer, with a focus on Java Spring Boot and NextJS.
- Strong proficiency in Java, Spring Boot, and related frameworks/libraries.
- Solid understanding of frontend development using NextJS and proficiency with modern frontend technologies such as TailwindCSS.
- Experience in designing and developing RESTful APls and microservices.
- Proficiency in working with relational databases, particularly PostgreSQL.
- Familiarity with containerization technologies, preferably Kubernetes, and deploying applications to a Kubernetes cluster.
- Strong problem-solving skills and ability to debug complex issues in a distributed system.
- Knowledge of software development best practices such as CMMi, including code reviews, testing methodologies, and CI/CD processes.
