Senior Backend Engineer (GoLang, Python)

Hire Resolve

Cape Town

On-site

ZAR 1,200,000 - 1,800,000

Full time

5 days ago
Be an early applicant

Get more replies from employers

Send a job-specific resume in minutes.

Job summary

Hire Resolve client in Cape Town seeks a Senior Backend Software Engineer to own backend design and delivery. You will work with Python (Flask) and Go, manage migrations, and optimize SQL for large data sets while maintaining stable APIs.

You will mentor engineers, review code, and help migrate services to Go as part of a broader modernization. A strong background in Celery/Redis/RabbitMQ and Docker is important.

Qualifications

  • :6+ years of backend development experience.
  • Strong Python experience with Flask, Django, or FastAPI.
  • Go language experience or strong backend fundamentals.
  • ORM proficiency with direct SQL when needed.
  • Background processing with Celery, Redis, or RabbitMQ.
  • Docker for local development.
  • REST API design with versioning and auth considerations.
  • Git and code-review discipline.

Responsibilities

  • Own the design and delivery of backend features in Python and Go, from requirements to production.
  • Write migrations and plan rollbacks for data integrity in production.
  • Design and maintain background processing and job queues (Celery, Redis, RabbitMQ).
  • Write and optimize SQL directly when ORM is not suitable.
  • Develop stable, versioned APIs with backward compatibility.
  • Lead migration of services to Go and shape service architecture.
  • Diagnose production issues and drive root-cause fixes.

Skills

Backend
Python
Go
ORM
SQL
Celery
RabbitMQ
Redis
Docker
Git
REST APIs

Tools

Flask
Django
FastAPI
PostgreSQL

Job description

Our client within the mining consulting industry is looking for a Senior Backend Software Engineer to join their team in Cape Town, WC.

Role Overview

We are looking for a senior backend engineer to join the team building WIRE, the platform our clients use to run their mining operations.

Day to day, you will be writing Python - our backend is Flask and SQLAlchemy on PostgreSQL, with Celery handling the heavier processing behind it. We are also migrating parts of the platform onto Go, and this role will play a hands-on part in that migration rather than watching it happen from the sidelines.

This is a senior, largely autonomous delivery role. You will take ambiguous or partially-formed requirements, shape them into a workable design, and see the work through to production. You will be trusted to make the call on smaller architectural decisions yourself and to bring options, not just problems, on the bigger ones. Alongside delivery, you will help raise the bar for the engineers around you through review, mentoring, and setting a good example in the codebase.

Responsibilities:
Technical Delivery
  • Own the design and delivery of backend features in Python and GoLang, using Flask and SQLAlchemy against PostgreSQL, from ambiguous requirements through to production.

  • Write database migrations and think through the impact on existing client data before they run, including rollback plans for anything non-trivial.

  • Design and maintain background processing using Celery, including diagnosing and resolving issues under load.

  • Write and tune SQL directly where the ORM is the wrong tool, particularly for large-volume operational data retrieval.

  • Design and maintain stable, versioned API endpoints, with an eye on backward compatibility for clients already depending on them.

  • Take a leading role in migrating existing services to Go, including making design decisions on how new services are structured.

  • Diagnose and resolve production issues, including under time pressure, and drive the fixes through to root cause rather than just the symptom.

Quality & Engineering Standards
  • Set the standard for testing on your own work using pytest, with tests delivered alongside the change.

  • Review other engineers' code with an eye for architecture and long-term maintainability, not just correctness.

  • Identify and flag technical debt and risk areas proactively, rather than waiting to be asked.

  • Leave documentation better than you found it, and make sure design decisions are recorded, not just implemented.

  • Mentor mid-level and junior engineers through code reviews, pairing sessions, and technical guidance.

  • Identify technical debt and advocate for sustainable solutions that balance delivery pressure with long-term quality.

  • Collaborate with DevOps on CI/CD improvements, infrastructure as code, and deployment strategies.

Team & Stakeholder Engagement
  • Work directly with Product, QA, and Operations to turn mining domain requirements into technical designs, including pushing back where a requirement does not hold up.

  • Mentor intermediate and junior engineers, including pairing, code review, and helping them build judgement, not just skills.

  • Contribute to technical design discussions and architecture decisions beyond your own immediate area of work.

  • Help less experienced engineers find their way around the codebase and the domain.

Continuous Improvement
  • Drive improvements to development processes, tooling, and team practices.

  • Stay current with industry best practices and bring new ideas to the team.

  • Help establish engineering standards as we scale the team and modernise the platform.

Requirements:
  • At least 6 years writing backend code professionally, with a track record of owning delivery end to end.

  • Strong Python, with substantial production experience in Flask, Django, or FastAPI.

  • Working Go experience, or very strong general backend fundamentals with demonstrated ability to pick up new languages quickly. Go will be a real and growing part of this role.

  • Confident with an ORM, and equally confident writing and tuning hand-written SQL when the ORM is not the right tool.

  • Solid experience with background job processing and message queues: Celery, RabbitMQ, Redis, or equivalent.

  • Comfortable with Docker for local development.

  • Demonstrated experience designing and evolving REST APIs, including versioning and backward compatibility, with a clear understanding of where authentication and authorisation fit.

  • Fluent with Git, branching strategies, and code review as a normal, disciplined part of the week.

Highly Desirable
  • Go in production, particularly on a live migration from another language.

  • Experience with time series data, or large volumes of operational data generally.

  • Experience with pandas or similar for data transformation.

  • Experience with multi-tenant software, where keeping client data properly isolated is a hard requirement, not a nice to have.

  • Single sign-on or OIDC integration experience.

  • Database performance work: indexing strategy, query plan analysis, connection pooling.

  • Enough Angular, or any frontend framework, to follow a change through to the screen and have an informed conversation with frontend engineers.

Our client is offering a highly competitive salary for this role based on experience.

Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Senior Backend Engineer (Go & Python) - API & Migrations
Senior Backend Engineer (Go & Python) - API & Migrations

Hire Resolve • Cape Town

On-site
ZAR 1,200,000 - 1,800,000
Software Engineer: Back-End - Johannesburg - R1m PA
Software Engineer: Back-End - Johannesburg - R1m PA

ATS Client • Johannesburg

On-site
ZAR 600,000 - 1,000,000
Senior Backend Developer
Senior Backend Developer

Boardroom Appointments • Johannesburg

On-site
ZAR 900,000 - 1,200,000
Back-End Developer (Advanced) 1848
Back-End Developer (Advanced) 1848

Opensource • Gauteng

Hybrid
ZAR 850,000 - 1,200,000
Hybrid working
Lead Engineer (Cyber security)
Lead Engineer (Cyber security)

Black Pen Recruitment • Cape Town

On-site
ZAR 900,000 - 1,200,000
Senior Full Stack Web Developer: Cloud Services Remote
Senior Full Stack Web Developer: Cloud Services Remote

Datafin • South Africa

Remote
ZAR 600,000 - 800,000
Senior Python Developer
Senior Python Developer

Hire Resolve • Cape Town

On-site
ZAR 600,000 - 800,000
Competitive salary based on experience
Back End Developer (Python)
Back End Developer (Python)

iOLAP, Inc. • Cape Town, Johannesburg

On-site
ZAR 600,000 - 900,000
Performance bonus
Employee Stock Options Grant
Health benefits plan
+2
Back-End / Full Stack Developer (Senior)
Back-End / Full Stack Developer (Senior)

ATS Client • Cape Town

Hybrid
ZAR 1,000,000 - 1,800,000
Backend Python Developer: Intermediate
Backend Python Developer: Intermediate

Global Village Worker • Pretoria

Remote
Medical Aid
Pension/Savings
15 days mandatory leave