About the Role
Our client is seeking a highly skilled and motivated Senior Software Engineer with expertise in Java and the Spring framework to join their dynamic technology team in **Soweto, Gauteng**. This role involves designing, developing, and maintaining robust, scalable, and high-performance enterprise-level applications. You will be a key contributor to all phases of the software development lifecycle, from requirements gathering and design to implementation, testing, and deployment. The ideal candidate possesses a strong foundation in object-oriented programming, a deep understanding of backend architecture, and a passion for writing clean, efficient, and maintainable code. This is an excellent opportunity to work on challenging projects and contribute significantly to the technological advancements of our client within the vibrant **Soweto** community.
Key Responsibilities
- Design, develop, and implement robust and scalable backend solutions using Java and the Spring framework.
- Write clean, efficient, well-documented, and testable code following best practices.
- Collaborate with cross-functional teams, including product managers, frontend developers, and QA engineers, to define and deliver software solutions.
- Participate in code reviews, providing constructive feedback to peers and ensuring code quality.
- Troubleshoot, debug, and resolve software defects and issues.
- Contribute to architectural design discussions and decisions.
- Optimize application performance and ensure system scalability and reliability.
- Stay up-to-date with the latest Java technologies, Spring ecosystem updates, and industry trends.
- Develop and maintain unit and integration tests.
- Assist in the deployment and maintenance of applications in production environments.
Requirements
- Bachelor's degree in Computer Science, Software Engineering, or a related field, or equivalent practical experience.
- Minimum of 5 years of professional experience in software development with a focus on Java.
- Strong proficiency in Java programming language and the Spring Framework (Spring Boot, Spring MVC, Spring Data).
- Experience with building RESTful APIs and microservices architecture.
- Solid understanding of database technologies (e.g., SQL, PostgreSQL, MySQL) and ORM frameworks (e.g., Hibernate).
- Experience with version control systems, particularly Git.
- Familiarity with build tools like Maven or Gradle.
- Understanding of testing frameworks (e.g., JUnit, Mockito).
- Excellent problem-solving, analytical, and debugging skills.
- Strong communication and teamwork abilities.
- Experience working in an Agile development environment.
Benefits
- Competitive salary and performance-related bonuses.
- Opportunity to work on impactful enterprise applications.
- Professional growth and development opportunities.
- Collaborative and supportive team culture in **Soweto**.
- Comprehensive medical aid and retirement fund contributions.
- Generous annual leave allowance.