Location : Johannesburg, South Africa (Hybrid Remote)
Level : Intermediate (3–5 years experience)
Sector : FinTech • Digital Banking Technology
Reporting to : Lead Engineer / Technical Director
Role Overview
We are looking for anIntermediate Software Engineerwho enjoys solving real engineering problems — not just delivering tickets.
You will design and build backend services poweringhigh-availability financial systems, working closely with experienced engineers and cross-functional stakeholders.
You’ll have autonomy in how you approach problems, while still having support whenever you need it.
This role is perfect for someone who :
- Wants to grow quickly in ahigh-trust, delivery-focused environment
- Can take an idea from discussion ? implementation ? deployment
- Learns fast and adapts well when priorities shift
- No prior banking experience is required —we will enable you on the domain.
- What matters is yourPython engineering strengthand yourability to think.
What You’ll Do
Backend Development
- Build and maintain API-driven services usingPython(FastAPI / Django / Flask)
- Contribute to modularmicroservicesthat support analytics and operational systems
- Apply asynchronous programming where performance matters
Systems Design & Problem Solving
- Participate in design discussions, propose solutions, improve reliability and performance
- Help break down complex requirements into manageable technical work
Cloud & DevOps Exposure
- Deploy containerised applications using Docker and CI / CD pipelines
- Contribute to monitoring, logging and stability improvements
Data and Integration
- Work with relational databases (e.g., PostgreSQL) and caching layers (e.g., Redis)
- Integrate services with messaging systems (e.g., Kafka / RabbitMQ)
Quality & Support
- Write maintainable, tested code
- Assist in troubleshooting production issues as needed
What Success Looks Like
Technical Ability
- Write clean, reliable Python services; improve performance with guidance
Learning Agility
- Pick up new concepts fast (tech + financial domain)
Delivery Ownership
- Follow through on commitments; communicate early if blocked
Collaboration
- Work openly with engineers, analysts and business users
Professionalism
- Show maturity, punctuality, and care when working with clients
Minimum Requirements
- Degree or NQF Level 7 equivalent in Computer Science, Engineering, Mathematics or similar
- 3–5 yearsprofessional software engineering experience
- Strong proficiency in Python 3.x
- Hands-on experience building backend APIs / services (FastAPI, Django or Flask)
- Experience withDockerand CI / CD pipelines (GitHub Actions, Jenkins, etc.)
- Good understanding of databases & writing efficient queries
- Ability to workindependently in a hybrid environment
- Exposure to distributed / event-driven systems
- Basic knowledge of async programming and messaging systems (advantageous)
- Experience with Kubernetes or cloud platforms (advantageous)
Tech Stack You’ll Work With
- Python 3.x(primary language)
- FastAPI / Django / Flask
- Docker • CI / CD (GitHub Actions, Jenkins, GitLab CI)
- PostgreSQL • Redis • MongoDB
- Kafka / RabbitMQ (depending on projects)
- Prometheus • Grafana • Sentry (observability)
Growth & Culture
- Applying engineering thinking toreal-world business problems
- Designing the solution, not just following instructions
- Learning new concepts fast and stepping into challenges
Building structure where none exists
You'll have strong mentorship and a clear path to grow intoSenior Software Engineer.
Important Notes
This is aclient-facing rolein a regulated environment
Hybrid setup withflexible remote days
Supportive team, high pace — you'll always be learning
You are required to undergocredit / criminal checksrequired by financial institutions
Apply if you want tosolve real engineering challenges, build credible experience in the FinTech domain, and grow fast in a team that values both people and delivery.