← к выдаче
разработка

Full Stack Engineer

Johannesburg2 дн. назад

Описание от работодателя

SENIOR FULL STACK SOFTWARE ENGINEER Java / JVM | Distributed Systems | Microservices | Kafka | APIs | Cloud Cape Town OR JHB - Hybrid Working Arrangement 12-Month Contract possibility conversion Senior Software Engineer / Technical Lead We are looking for a highly technical Senior Full Stack Software Engineer to join a large-scale financial technology environment working on business-critical, high-volume systems . This is not a traditional CRUD development role . We need an engineer who understands systems end-to-end — including applications, APIs, databases, messaging, distributed services, observability and production operations. What You'll Be Doing Design, develop and maintain scalable, resilient distributed applications Work across backend and frontend development Develop and integrate REST APIs and microservices Work with event-driven architectures and messaging platforms Design and optimise databases, queries and application logic Troubleshoot complex production issues and perform root-cause analysis Implement effective monitoring, logging, alerting and observability Build and optimise systems handling high transaction volumes Contribute to architectural and technical design decisions Develop clean, maintainable and reusable code Implement automated testing and CI/CD practices Work with cloud and containerised environments Participate in code reviews and engineering standards Mentor developers and help raise the team's technical capability Technical Experience We are looking for strong experience in: 6 - 10 years' commercial software development Full-stack software development Java / JVM technologies — highly preferred Spring Boot or equivalent backend frameworks Distributed systems and microservice architecture REST APIs and system integration Event-driven architecture and messaging Kafka — highly advantageous Strong SQL and relational database knowledge, including query optimisation Production troubleshooting and debugging Observability, monitoring, logging and alerting AWS and/or Azure Docker and Kubernetes CI/CD and automated testing Software design principles, design patterns and clean architecture Experience with other JVM technologies such as Scala will also be considered. Strong .NET engineers will be considered where they can demonstrate genuine experience with distributed systems, messaging, cloud, APIs, databases and large-scale production environments. What We're Looking For The right person will: Think beyond individual applications and understand systems end-to-end Understand how applications, APIs, messaging, databases and infrastructure interact Have experience working on real production systems at scale Be able to diagnose complex technical problems independently Understand scalability, resilience, failure handling and performance Be comfortable going deep into the technical detail Be able to explain why a technical solution works, not just which technology was used Take ownership of system reliability and production performance Be comfortable mentoring and supporting other engineers Communicate technical concepts clearly with both technical and business stakeholders Banking / Payments Experience Experience in banking, payments, fintech or other high-volume financial environments is highly advantageous. However, financial-services experience is not mandatory . We will consider engineers from other environments where they have worked on large-scale, distributed, transaction-heavy or business-critical systems . This Role Will Suit You If... You enjoy understanding how the whole system works , not just writing code for an individual application. You should be comfortable discussing: Distributed Systems | Kafka | APIs | Databases | Microservices | Event-Driven Architecture | Scalability | Failure Handling | Observability | Cloud | Kubernetes | Production Troubleshooting If you're a senior engineer who enjoys solving difficult technical problems and helping other engineers become stronger, we'd like to hear from you.