As a Mid-Level Java EE and Spring Boot Engineer at Zeraki, you will be responsible for designing, developing, and maintaining back-end services for our platform. You will collaborate with front-end engineers, product managers, and other stakeholders to deliver robust and scalable solutions that drive our mission of improving education across Africa. Your role will focus on improving code quality, optimizing performance, and mentoring junior engineers.
Key Responsibilities
Application Development: Design and implement scalable back-end services and APIs using Java EE and Spring Boot.
Code Quality: Write clean, maintainable, and efficient code that adheres to best practices and standards.
System Integration: Integrate third-party services and APIs into the platform and ensure smooth data flows.
Performance Optimization: Optimize the performance of back-end services, including database queries and application logic.
Collaboration: Work closely with front-end engineers, DevOps, and product teams to deliver integrated and cohesive solutions.
Code Reviews: Conduct code reviews, ensuring code quality and providing constructive feedback to peers and junior engineers.
Mentorship: Assist junior engineers with technical challenges and promote best practices within the team.
Testing: Write unit, integration, and functional tests to ensure the reliability and robustness of the back-end systems.
Continuous Improvement: Stay up-to-date with the latest industry trends and Java/Spring Boot technologies, applying them to improve the existing infrastructure.
Requirements
Qualifications
Bachelor's degree in Computer Science, Software Engineering, or a related field.
2-5 years of experience in back-end development with Java EE and Spring Boot.
Strong knowledge of relational databases (e.g., MySQL, PostgreSQL) and experience with ORM tools like Hibernate.
Experience with RESTful APIs, microservices architecture, and asynchronous processing (e.g., RabbitMQ, Kafka).
Familiarity with Docker and containerization technologies.
Strong understanding of software development best practices, including test-driven development (TDD) and continuous integration/continuous deployment (CI/CD).
Familiarity with cloud environments, particularly AWS or Azure, is a plus.