Senior software engineer (java)
Summary
Senior Java backend engineer for an enterprise software provider in Vereeniging, South Africa: designs, builds, and maintains scalable backend services and microservices using Java and Spring Boot, contributes to architecture decisions, and mentors junior engineers in a hybrid work model.
Our client, a leading provider of enterprise software solutions, is looking for an experienced Senior Software Engineer with a strong background in Java development to join their team in Vereeniging, Gauteng. This role is essential for designing, developing, and maintaining high-performance, scalable, and reliable backend systems and applications. You will work on challenging projects, contribute to architectural decisions, and mentor junior engineers. The ideal candidate possesses a deep understanding of object-oriented programming, distributed systems, and modern software development practices. This position offers a hybrid work model, allowing for a balance between focused office collaboration in Gauteng and remote flexibility. Join a company committed to technological innovation and professional growth.
Key Responsibilities Design, develop, test, and deploy robust and scalable backend services using Java and related frameworks (e.g., Spring Boot). Architect and implement microservices-based solutions. Optimize application performance, ensuring efficiency and reliability. Collaborate with cross-functional teams, including product managers, frontend developers, and QA engineers. Write clean, maintainable, and well-documented code, adhering to coding standards. Participate in code reviews and provide constructive feedback to peers. Troubleshoot and resolve complex technical issues in development and production environments. Contribute to system design discussions and technology selection. Mentor junior software engineers and promote best practices. Stay updated with the latest Java technologies and industry trends. Requirements Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent practical experience. 5+ years of professional software development experience, with a strong emphasis on Java. Expertise in Java and the Spring framework (Spring Boot, Spring MVC). Proficiency in building RESTful APIs and microservices. Experience with relational databases (e.g., Postgre SQL, My SQL) and ORM frameworks (e.g., Hibernate). Familiarity with messaging queues (e.g., Kafka, Rabbit MQ) is a plus. Experience with cloud platforms (AWS, Azure, GCP) and containerization (Docker, Kubernetes) is desirable. Strong understanding of data structures, algorithms, and object-oriented design principles. Excellent problem-solving, analytical, and debugging skills. Effective communication and teamwork abilities. Benefits Competitive salary package. Hybrid work model for work-life balance. Comprehensive health insurance and retirement benefits. Opportunities for professional development and advanced training. Collaborative work environment in Vereeniging. Annual performance bonuses. Access to cutting-edge technologies.