Senior Java Developer

Johannesburg, Gauteng, South Africa

Job Description

About the Role
We are seeking a highly experienced Senior Java Developer to join our team. You will design, develop, and maintain scalable enterprise-grade applications using Java and modern frameworks.
This role emphasizes cloud-native development, microservices architecture, and high-performance, secure coding practices. It is ideal for a seasoned engineer who thrives in collaborative Agile environments, embraces continuous learning, and is passionate about delivering robust, maintainable software solutions.
Key Responsibilities * Development & Architecture

  • Design, develop, and maintain backend applications using Java 8+, Spring, and Spring Boot.
  • Build microservices-based architectures with reusable and modular components.
  • Develop and integrate RESTful APIs and event-driven services.
  • Implement solutions using Apache Kafka for messaging and streaming.
  • Ensure high availability, scalability, and security of applications.
  • Apply best practices in coding, architecture, and DevOps for maintainable and extensible solutions.
  • Databases & Cloud
  • Work with relational databases such as MS SQL and PostgreSQL and NoSQL databases like MongoDB.
  • Design and optimize database queries, schema, and indexes for performance.
  • Implement cloud-native solutions using AWS services such as EC2, S3, RDS, Lambda, and API Gateway.
  • Monitor and optimize cloud-based applications for performance and cost efficiency.
  • Containerization & DevOps
  • Containerize applications using Docker and manage orchestration using Kubernetes / EKS.
  • Implement CI/CD pipelines using Jenkins, GitHub Actions, or Azure DevOps.
  • Monitor applications using logging and performance tools such as CloudWatch, Prometheus, Grafana.
  • Maintain unit tests, integration tests, and automated test frameworks to ensure code quality.
  • Collaboration & Process
  • Collaborate with product managers, QA engineers, DevOps, and other developers in an Agile/Scrum environment.
  • Participate in code reviews, architecture discussions, and knowledge-sharing sessions.
  • Mentor junior developers and contribute to team growth and skill development.
  • Translate functional and technical requirements into high-quality software solutions.
Requirements & Qualifications
Must-Have Skills:
  • 5+ years of professional experience in Java development.
  • Strong experience with Spring and Spring Boot frameworks.
  • Hands-on experience with MS SQL, PostgreSQL, and MongoDB.
  • Experience with Apache Kafka for messaging and streaming.
  • Cloud experience with AWS (EC2, S3, RDS, Lambda).
  • Containerization experience using Docker and orchestration with Kubernetes / EKS.
  • Familiarity with microservices architecture and RESTful APIs.
  • Strong problem-solving skills, attention to detail, and secure coding practices.
Highly Desirable Skills:
  • Experience with event-driven architectures and message queues.
  • Knowledge of performance optimization, monitoring, and observability.
  • Familiarity with CI/CD pipelines, automated testing, and DevSecOps practices.
  • Exposure to Infrastructure as Code (Terraform, CloudFormation, or ARM templates).
Education
  • Bachelor's degree, higher certificate, or diploma in Computer Science, Software Engineering, IT, or a related field.
Additional Information
  • Contract Duration: 12 Months (with possibility of renewal)
  • Salary: Negotiable
  • Location Options: Johannesburg / Cape Town / Remote
  • Must be located in South Africa or have a valid work permit for South Africa

Skills Required

Beware of fraud agents! do not pay money to get a job

MNCJobs.co.za will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD1599628
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Johannesburg, Gauteng, South Africa
  • Education
    Not mentioned