Senior Back-End Engineer

Hire Resolve

Cape Town

On-site

ZAR 900,000 - 1,500,000

Full time

6 days ago
Be an early applicant

Get more replies from employers

Send a job-specific resume in minutes.

Job summary

Hire Resolve is seeking a Senior Back-End Engineer to join their technology team developing software for mining operations. The role is senior, autonomous, and focuses on backend development using Python and Go, with exposure to Flask, SQLAlchemy, PostgreSQL and Celery, and a migration of parts of the platform to Go.

The candidate will design, implement and maintain backend features, APIs, and database migrations, while mentoring junior engineers and collaborating with Product, QA and Operations

Qualifications

  • 6+ years of professional backend software development experience.
  • 10+ years' experience is preferred.
  • Strong production experience with Python.
  • Experience with Flask, Django or FastAPI.

Responsibilities

  • Design, develop and deliver backend features using Python and Go.
  • Work with Flask, SQLAlchemy and PostgreSQL.
  • Take ownership of features from requirements through to production.
  • Develop database migrations with attention to data and rollback requirements.
  • Design and maintain background processing using Celery.
  • Diagnose and resolve issues under load and in production environments.
  • Write and optimise SQL where the ORM is not the appropriate solution.
  • Design and maintain stable, versioned REST APIs.
  • Contribute to migration of services to Go.
  • Make technical and architectural decisions.
  • Investigate production issues and identify root causes.

Skills

Python
REST API design
Flask
Go
SQLAlchemy
PostgreSQL
Celery

Tools

Flask
Django
FastAPI
Go
SQLAlchemy
PostgreSQL
Celery
RabbitMQ
Redis
Docker

Job description

An exciting opportunity is available for an experienced Senior Back-End Engineer to join a technology team developing software used to support and manage mining operations.

This is a senior, largely autonomous engineering role for someone who enjoys solving complex technical problems, taking ownership of projects and working with modern backend technologies. You will be responsible for taking ambiguous requirements, shaping them into practical technical solutions and delivering features through to production.

The role will primarily involve Python, with Flask, SQLAlchemy, PostgreSQL and Celery, while also contributing to an ongoing migration of parts of the platform to Go.

Key Responsibilities
Technical Delivery
  • Design, develop and deliver backend features using Python and Go.
  • Work with Flask, SQLAlchemy and PostgreSQL.
  • Take ownership of features from requirements through to production.
  • Develop database migrations while considering existing client data and rollback requirements.
  • Design and maintain background processing using Celery.
  • Diagnose and resolve issues under load and in production environments.
  • Write and optimise SQL where the ORM is not the appropriate solution.
  • Design and maintain stable, versioned REST APIs.
  • Ensure API backward compatibility.
  • Contribute to the migration of existing services to Go.
  • Make appropriate technical and architectural decisions.
  • Investigate production issues and identify root causes.
Engineering Quality
  • Write automated tests using pytest.
  • Conduct code reviews with a focus on architecture, maintainability and long-term quality.
  • Identify technical debt and potential technical risks.
  • Improve documentation and record technical decisions.
  • Promote sustainable development practices.
  • Collaborate with DevOps on CI/CD, infrastructure-as-code and deployment strategies.
Mentoring & Team Collaboration
  • Mentor junior and intermediate engineers.
  • Provide technical guidance through code reviews and pairing sessions.
  • Help less experienced engineers understand the codebase and business domain.
  • Contribute to technical design and architecture discussions.
  • Work closely with Product, QA and Operations teams.
  • Translate business and mining-domain requirements into practical technical solutions.
  • Challenge requirements where necessary and provide appropriate alternatives.
Continuous Improvement
  • Drive improvements to development processes, tooling and engineering practices.
  • Identify opportunities to improve system performance and reliability.
  • Stay current with relevant backend engineering technologies and best practices.
  • Contribute to establishing engineering standards as the team grows.
Minimum Requirements
  • 6+ years' professional backend software development experience.
  • 10+ years' experience is preferred.
  • Strong production experience with Python.
  • Strong experience with Flask, Django or FastAPI.
  • Working experience with Go, or strong backend fundamentals with the ability to learn new languages quickly.
  • Strong experience with an ORM, preferably SQLAlchemy or equivalent.
  • Confident writing and tuning hand-written SQL.
  • Strong experience with PostgreSQL or similar relational databases.
  • Experience with background processing and message queues such as Celery, RabbitMQ, Redis or equivalent.
  • Experience designing and evolving REST APIs.
  • Understanding of API versioning and backward compatibility.
  • Understanding of authentication and authorisation.
  • Strong Git experience, including branching strategies and code review.
  • Comfortable using Docker for local development.

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 (GoLang, Python)
Senior Backend Engineer (GoLang, Python)

Hire Resolve • Cape Town

On-site
ZAR 1,200,000 - 1,800,000
Senior Backend Engineer - Python/Go, Own Projects & Impact
Senior Backend Engineer - Python/Go, Own Projects & Impact

Hire Resolve • Cape Town

On-site
ZAR 900,000 - 1,500,000
Senior Backend Engineer - Python
Senior Backend Engineer - Python

Placements24 • Pretoria

Hybrid
ZAR 900,000 - 1,300,000
Competitive salary
Fully remote work arrangement
Health, dental and vision insurance
Intermediate Python Developer
Intermediate Python Developer

ATS Client • Johannesburg

On-site
ZAR 600,000 - 900,000
Senior Backend Engineer
Senior Backend Engineer

Placements24 • Noord-Kaap

Hybrid
ZAR 900,000 - 1,500,000
Competitive salary
Medical aid
Retirement fund
+2
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
Software Engineer: Back-End III
Software Engineer: Back-End III

Capitec • Sandton

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

Opensource • Gauteng

Hybrid
ZAR 850,000 - 1,200,000
Hybrid working
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
Senior Backend Developer
Senior Backend Developer

ATS Client • Johannesburg

On-site
ZAR 900,000 - 1,300,000