Intermediate Software Engineer
Listed on 2025-12-28
-
Software Development
Software Engineer, Backend Developer
Location: Johannesburg, South Africa (Hybrid Remote)
Level: Intermediate (3–5 years experience)
Sector: Fin Tech
• Digital Banking Technology
Reporting to: Lead Engineer / Technical Director
Role OverviewWe are looking for an Intermediate Software Engineer who enjoys solving real engineering problems — not just delivering tickets.
You will design and build backend services powering high-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 a high-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 your Python engineering strength and your ability to think
.
- Build and maintain API-driven services using Python (FastAPI / Django / Flask)
- Contribute to modular microservices that support analytics and operational systems
- Apply asynchronous programming where performance matters
- Participate in design discussions, propose solutions, improve reliability and performance
- Help break down complex requirements into manageable technical work
- Deploy containerised applications using Docker and CI/CD pipelines
- Contribute to monitoring, logging and stability improvements
- Work with relational databases (e.g., Postgre
SQL) and caching layers (e.g., Redis) - Integrate services with messaging systems (e.g., Kafka / Rabbit
MQ)
- Write maintainable, tested code
- Assist in troubleshooting production issues as needed
Write clean, reliable Python services; improve performance with guidance
Learning AgilityPick up new concepts fast (tech + financial domain)
Delivery OwnershipFollow through on commitments; communicate early if blocked
CollaborationWork openly with engineers, analysts and business users
ProfessionalismShow 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 years professional software engineering experience
- Strong proficiency in Python 3.x
- Hands-on experience building backend APIs/services (FastAPI, Django or Flask)
- Experience with Docker and CI/CD pipelines (Git Hub Actions, Jenkins, etc.)
- Good understanding of databases & writing efficient queries
- Ability to work independently 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)
- Python 3.x (primary language)
- FastAPI / Django / Flask
- Docker
• CI/CD (Git Hub Actions, Jenkins, Git Lab CI) - PostgreSQL
• Redis
• MongoDB - Kafka / Rabbit
MQ (depending on projects) - Prometheus
• Grafana
• Sentry (observability)
You don’t need experience in all of these —
curiosity and willingness to learn are key
.
You’ll enjoy this role if you like:
- Applying engineering thinking to real-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 into Senior Software Engineer
.
- This is a client-facing role in a regulated environment
- Hybrid setup with flexible remote days
- Supportive team, high pace — you’ll always be learning
- You are required to undergo credit/criminal checks required by financial institutions
Apply if you want to solve real engineering challenges
, build credible experience in the Fin Tech domain, and grow fast in a team that values both people and delivery.
To Search, View & Apply for jobs on this site that accept applications from your location or country, tap here to make a Search: