Job Description Our client; a top business platform that equips small business owners across Africa, is looking to hire a senior full-stack software engineer in Cape town, South Africa.
The experienced Senior Full-Stack Developer is to join and lead one of our scrum teams that is building next-generation business intelligence software for small businesses.
The ideal candidate will have substantial experience of leading teams, developing front-ends using React/JavaScript/HTML5/CSS3 & back-end RESTful services in Java and Spring Boot, and be very familiar with Scrum, TDD, and CI.
Responsibilities
- Design, develop, test, and maintain back-end RESTful APIs using Java, and Spring Boot and front-ends using React, JavaScript, HTML5 and CSS3.
- Help refine and adhere to our coding standards, best practices, and guidelines to ensure code quality and maintainability.
- Collaborate with product managers, and other stakeholders to understand requirements, and contribute to architectural discussions and design decisions.
- Champion Test-Driven Development (TDD) principles, writing unit tests and integration tests to ensure software robustness, reliability, and maintainability.
- Ensure your team follows our end-to-end SDLC (based on scrum) and help drive efficiency and productivity by helping track appropriate metrics, identifying areas for improvement and helping implement them.
- Contribute towards and guide your team in producing appropriate (pragmatic and concise) technical documentation.
- Help troubleshoot and resolve issues with production systems.
- Provide technical leadership and mentorship to less experienced developers, fostering a culture of continuous learning and growth within the team.
- Ensure your team remains happy, engaged, and motivated.
Desired Experience and Qualifications
- You have accumulated considerable knowledge and experience of software development (front-end and back-end) through a strong relevant engineering degree and at least 8 years of relevant working experience.
- You have 6+ years of experience of Java development with Spring Boot and JPA.
- You have 2+ years of experience of front-end development with React.
- You are well-versed with TDD, unit testing and CI.
- You have worked as a member of a scrum team and you have a good working knowledge of the key principles of scrum and agile methodologies in general.
- You are intimately familiar with good development practices and principles such as SOLID, DRY, and design patterns.
- You have worked with both relational and NoSQL databases and have a good working knowledge of SQL.
- Familiarity with AWS and Kubernetes would be a distinct advantage, but is not essential.