Senior Software Engineer (Java Specialist)
Fully remote senior role (South Africa) focused on designing, building, and deploying Java-based applications and microservices using Spring Boot, REST APIs, and relational databases. The engineer optimizes performance, participates in code reviews, contributes to architecture, and mentors junior engineers.
- Compensation
- Not disclosed
- Location
- South Africa
- Work setup
- Remote
- Seniority
- Senior
- Employment
- Not specified
- Experience
- Not specified
- Category
- Software engineering
- Posted
Skills
Must have
- Bachelor's degree in Computer Science, Engineering, or related field, or equivalent practical experience
- Significant experience as a Software Engineer with a strong focus on Java development
- Proficiency in Java and the Spring framework (Spring Boot, Spring MVC)
- Experience building and consuming RESTful web services
- Solid understanding of relational databases (e.g., PostgreSQL, MySQL) and ORM technologies (e.g., Hibernate)
- Experience with build tools (Maven, Gradle) and version control systems (Git)
- Strong analytical and problem-solving skills
- Excellent communication and teamwork abilities in a remote setting
Nice to have
- Familiarity with microservices architecture, containerization (Docker), and cloud platforms (AWS, Azure, GCP)
Full description
About the Role
Our client is seeking a highly proficient Senior Software Engineer specializing in Java to join their dynamic, remote-first engineering team. While based remotely, this role is ideal for professionals who align with the innovative spirit often found around Kimberley . You will be instrumental in designing, developing, and deploying robust, scalable, and high-performance Java-based applications and microservices. This role offers the chance to work on cutting-edge technologies, influence architectural decisions, and mentor junior engineers. The ideal candidate possesses a strong command of the Java ecosystem, a passion for clean code, and a proven ability to deliver complex software solutions. Embrace a collaborative, fully remote work environment where your contributions are valued and have a direct impact on our product's success.
Key Responsibilities
- Design, build, and maintain efficient, reusable, and reliable Java code.
- Develop and implement backend services and APIs using modern Java frameworks (e.g., Spring Boot).
- Write high-quality, testable, and maintainable code, adhering to best practices and coding standards.
- Collaborate with cross-functional teams to define, design, and ship new features.
- Identify bottlenecks and bugs, and devise solutions to these problems.
- Optimize applications for maximum speed, scalability, and robustness.
- Participate in code reviews, providing constructive feedback to peers.
- Contribute to architectural discussions and technical roadmap planning.
- Ensure the technical feasibility of UI/UX designs and translate them into functional requirements.
Requirements
- Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent practical experience.
- Significant experience as a Software Engineer, with a strong focus on Java development.
- Proficiency in Java and the Spring framework (Spring Boot, Spring MVC).
- Experience with building and consuming RESTful web services.
- Solid understanding of relational databases (e.g., PostgreSQL, MySQL) and ORM technologies (e.g., Hibernate).
- Familiarity with microservices architecture, containerization (Docker), and cloud platforms (AWS, Azure, GCP) is highly desirable.
- Experience with build tools (Maven, Gradle) and version control systems (Git).
- Strong analytical and problem-solving skills.
- Excellent communication and teamwork abilities in a remote setting.
Benefits
- Highly competitive salary and potential for bonuses.
- Full remote work flexibility, promoting excellent work-life balance.
- Comprehensive health, dental, and vision insurance.
- Generous paid time off and professional development opportunities.