Working Model:

Full-time | Initially office-based, transitioning to a hybrid working arrangement after the onboarding period (approximately 2–3 months)

Salary:

R750,000 – R1,300,000 per annum (depending on experience / flexible)

About the Opportunity

We are looking for an experienced Senior Python Software Engineer to play a key role in designing, building and maintaining mission‑critical Python applications that power our data and analytics platform. This role is ideal for an engineer who enjoys taking innovative ideas and transforming them into scalable, reliable production systems.

Working closely with Software Development, Data Engineering and Data Science teams, you'll help bridge the gap between research and production by applying strong engineering practices, modern tooling and cloud‑native development principles.

If you're passionate about clean architecture, automation, high‑quality code and continuously improving engineering standards, we'd love to hear from you.

Key Responsibilities Production Software Development Design, develop and maintain high‑quality Python services, APIs and cloud‑native applications. Convert proof‑of‑concept solutions and data science models into secure, scalable and production‑ready software. Improve the structure, maintainability and reliability of Python codebases through engineering best practices. Reduce technical debt by modernising tooling, improving packaging, increasing automated test coverage and establishing consistent development standards. Contribute to architectural decisions around application design, deployment strategies and service boundaries. Champion software engineering best practices including clean code, automated testing, code reviews and continuous integration. Build and enhance CI/CD pipelines, developer tooling and automation to improve deployment speed and software quality. Monitor and optimise application performance, scalability and reliability. Work with infrastructure and database teams to improve application efficiency and optimise cloud resource usage. Proactively identify technical risks and communicate potential impacts to stakeholders throughout the delivery lifecycle. Partner with Development, Data Engineering and Data Science teams to deliver robust production solutions. Collaborate across technical teams to ensure solutions are scalable, maintainable and aligned with business objectives. Participate in technical planning, architecture discussions and solution design. Support successful project delivery through clear communication and effective stakeholder engagement. Promote modern Python development practices across the engineering team. Mentor developers through code reviews, technical guidance and collaborative problem‑solving. Support the growth of junior engineers and graduates by encouraging high engineering standards and continuous learning. Act as a trusted technical resource for complex Python development challenges. Skills & Experience Minimum 5 years' experience developing and delivering production‑grade Python applications. Strong background in software engineering rather than scripting or notebook‑based development. Solid understanding of software design principles, clean architecture and object‑oriented programming. Experience with automated testing, version control, CI/CD pipelines and peer code reviews. Strong knowledge of the modern Python ecosystem, including packaging, dependency management, linting, formatting and type checking. Experience working alongside Data Science or Analytics teams to productionise research and machine learning solutions. Hands‑on experience developing cloud‑native applications, preferably within Microsoft Azure. Strong debugging, troubleshooting and performance optimisation skills. Ability to independently analyse problems, design solutions and deliver production‑ready software. Excellent communication skills with the ability to explain technical decisions and trade‑offs to both technical and non‑technical stakeholders. Databricks, Apache Spark or Delta Live Tables. Building RESTful APIs using Fast API or other asynchronous Python frameworks. Experience with AI agent frameworks such as Lang Chain, Lang Graph or the Model Context Protocol (MCP). Docker and containerised application development. Modern Python development tools including uv, Ruff, Pyright or similar. Azure Dev Ops and YAML‑based CI/CD pipelines. Exposure to Rust or an interest in systems programming. Strong understanding of software architecture, design patterns and scalable distributed systems. #J-18808-Ljbffr
Similar jobs

Python developer

Apply Now
Back to search page