Senior Software Engineer- Remote - Permanent - Tech Stack (BackEnd Java and Springboot, Restful API)
Africonology Solutions
Date: 4 days ago
Contract type: Full time
Remote

A Global Client of ours with head office in New Zealand and staff located across South Africa, UK, India and Europe are seeking a Software Engineer (based in Cape Town) to work remotely) - BACK-END SERVICES USING JAVA and SPRING BOOT
The role shall collaborate closely with:
- The role is responsible for designing, developing, and optimizing scalable microservices while ensuring robustness, security, and scalability.
- The role includes working with various databases, integrating messaging systems, and ensuring high performance and observability.
- Develop and maintain highly scalable and robust back-end services using Java and Spring Boot.
- Design and implement RESTful APIs, ensuring their integration with various messaging systems (Kafka, RabbitMQ).
- Work with relational (Postgres) and NoSQL databases (Cassandra, OpenSearch, Pinot), ensuring optimal performance through tuning and optimization.
- Utilize Kafka for data streaming and manage workflows using Apache Airflow.
- Implement unit and integration testing using JUnit/Mockito, TestContainers, and BDD frameworks.
- Ensure secure, scalable, and efficient microservices adhering to system design and architecture best practices.
- Implement observability with logging, tracing, and monitoring tools like Prometheus and Grafana.
- There is an expectation that the role accountabilities and duties will evolve over time. It may be necessary to review this job description through a consultative approach and make alterations in response to the changing nature of our work environment, including but not limited to technological requirements or statutory changes
The role shall collaborate closely with:
- Engineering teams
- Marketing and sales teams
- Customer support teams
- Executive leadership
- External clients from time to time
- This position requires a high degree of autonomy and the ability to collaborate effectively with cross-functional teams.
- The role has no authority to incur routine expenditure, commit capital expenditure, approve loans, or extend credit without approval from the Managing Director or the Managing Director's designated representative.
- The role has no authority to bind the Company to agreements with any other party without approval the Managing Director or the Managing Director's designated representative.
- Extensive experience in back-end development with a strong focus on Java, including concurrency, collections, streams, and design patterns.
- Proficiency in Spring Boot, Spring Data, Spring Security, and Hibernate/JPA.
- In-depth knowledge of RESTful API design, microservices architecture, and containerized deployments using Docker and Kubernetes.
- Experience with message-driven architectures and tools like Kafka or RabbitMQ.
- Strong understanding of relational databases (Postgres) and NoSQL databases (Cassandra, OpenSearch, Pinot).
- Proficiency with Git and experience with CI/CD pipelines (GitLab CI) and DevOps practices.
- Experience with designing systems that ensure at least one message delivery and idempotent data pipelines.
- Familiarity with telemetry tooling (Prometheus, Grafana)
- A positive professional approach and presentation.
- Well-developed organisation and time management skills.
- Accuracy and conciseness in written and verbal communications.
- Proficiency with Microsoft Office products
- Ability to work collaboratively in multidisciplinary, agile teams.
- Strong communication skills, particularly in explaining complex technical solutions and trade-offs.
- Experience in iterative development and adapting to feedback quickly.
- Capacity for problem-solving and making informed decisions in a collaborative environment.
- Exposure to other programming languages such as Scala or Python.
- Experience with reactive programming and functional programming in Java.
- Familiarity with Kubernetes and Docker containers for managing microservices.
- Experience with GitLab CI for continuous integration and deployment.
- Knowledge of event-driven architectures and distributed systems.
- Experience with Kafka Streams and Kafka Connect.
See more Remote jobs