Python Developer (Mid to Senior)

Ditto Hire group

Cape Town

On-site

ZAR 800,000 - 1,200,000

Full time

10 days ago
Application generator

An application made for this job — a tailored resume and cover letter that speak straight to the posting.

Get past ATS filters

Benefits offered by this job

Competitive pay
Generous leave
Small experienced team
Direct access to decision makers
Relaxed office
Experiment with new tools
Growth opportunities

Job summary

Ditto is a Cape Town-based recruitment technology company building software used by recruiters, hiring teams and job seekers across the world.

We’re looking for engineers who enjoy hard problems—messy data, matching the right candidate to the right job at scale, and improving large existing systems for busy recruiters. You’ll work on Python and Django features, AI-driven search and automation, and help shape how Ditto.Work grows.

Qualifications

  • 4+ years of professional Python development experience.
  • Strong Django experience.
  • Solid understanding of software design principles and patterns.
  • Strong SQL and database design skills.
  • Frontend experience with HTML, CSS, JavaScript and Vue.js.
  • Experience working with Docker.
  • Comfortable working with Git and modern software development workflows.
  • Good understanding of security best practices.
  • Ability to work comfortably in an existing, evolving codebase.
  • Strong problem-solving skills and ability to work with ambiguity.
  • Hands-on experience using AI coding tools or building with LLMs is a strong plus.

Responsibilities

  • Designing, building and maintaining features in Python and Django.
  • Working directly with product, customer success and sales to turn client problems into specs and working software.
  • Building and improving AI-driven features, including search, matching and automation.
  • Working with large datasets and improving search, rank and understanding of candidate information.
  • Finding and fixing performance bottlenecks and bugs before users see them.
  • Improving existing systems rather than only building greenfield features.
  • Writing code that others can read, test and extend.
  • Taking ownership of problems from idea through to production.

Skills

Python
Django
SQL
Frontend (HTML/CSS/JS/Vue.js)
AI coding tools / LLMs

Tools

Docker
Git

Job description

About Ditto

Ditto is a Cape Town-based recruitment technology company building software used by recruiters, hiring teams and job seekers across the world.

At the centre of what we do is Ditto.Work, our recruitment operating system. It gives recruitment teams one place to manage candidates, jobs, clients, communication, reporting, automation and the hundreds of moving parts that go into making a placement.

We've been building recruitment technology since 2016, and today Ditto processes millions of applications and sits behind the day-to-day hiring operations of recruitment agencies and companies across multiple markets.

AI is becoming a fundamental part of how we build our products. We're using it to rethink things like candidate search, matching and automation, particularly the enormous amount of valuable data sitting untouched inside recruitment databases.

We're not a huge corporate with six layers between an idea and something going live. We're a relatively small team building a fairly big product, which means the work you do here actually matters.

You'll see things you build go live, get used by real customers and, occasionally, get told very quickly when you've broken something.

How we build

We use the latest tools, especially in AI. AI coding assistants are part of how we work every day.

If you're curious about what these tools can do, and sceptical enough to know where they can't be trusted, you'll fit right in.

But tools don't solve problems. People do.

We're looking for engineers who enjoy hard problems: messy data, matching the right candidate to the right job at scale, improving large existing systems and making complex workflows feel simple to busy recruiters.

We're less interested in someone who wants to be handed perfectly written tickets all day, and more interested in someone who can understand a problem, ask the right questions and figure out how to solve it.

Our culture

Our office is fast-paced, informal and very hands-on. We work hard, move quickly, laugh a lot and generally don't take ourselves too seriously.

There's very little corporate theatre here. You won't find endless meetings, layers of approval or people hiding behind job titles.

If you have a good idea, say it. If something is broken, fix it. If you need help, ask.

We're ambitious and expect people to take ownership of their work, but the environment itself is relaxed. There's plenty of banter, strong personalities and the occasional bit of organised chaos.

It's probably not the right place for someone looking for a very structured, traditional corporate environment.

But if you like autonomy, building things, solving problems and working with people who genuinely care about what they're doing, you'll probably fit in well.

What you'll be doing
  • Designing, building and maintaining features in Python and Django
  • Working directly with product, customer success and sales to turn real client problems into clear specs and working software
  • Building and improving AI-driven features, including search, matching and automation
  • Working with large datasets and improving the way we search, rank and understand candidate information
  • Finding and fixing performance bottlenecks and bugs before our users do
  • Improving existing systems rather than only building greenfield features
  • Writing code that the next engineer, or AI agent, can read, test and extend
  • Taking ownership of problems from initial idea through to production
What we're looking for
  • 4+ years of professional Python development experience
  • Strong Django experience
  • A solid understanding of software design principles and patterns
  • Strong SQL and database design skills
  • Front-end experience with HTML, CSS, JavaScript and Vue.js
  • Experience working with Docker
  • Comfortable working with Git and modern software development workflows
  • A good understanding of security best practices
  • The ability to work comfortably in an existing, evolving codebase
  • Strong problem-solving skills and the ability to work with a reasonable amount of ambiguity
  • Hands-on experience using AI coding tools or building with LLMs is a strong plus

We handle a significant amount of personal data, so privacy, security and POPIA are taken seriously.

What we offer
  • Competitive compensation
  • Generous leave
  • A small, experienced team where your work has a visible impact
  • Direct access to the people making product and business decisions
  • A relaxed, informal office without layers of corporate nonsense
  • The freedom to experiment with new tools and technologies
  • Plenty of difficult problems to solve and room to grow with the company
Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Python Developer (Mid to Senior)
Python Developer (Mid to Senior)

Ditto • Cape Town

On-site
ZAR 600,000 - 900,000
Competitive pay
Generous leave
Visible impact
+4
Senior Python/Django Engineer — AI & Data Impact
Senior Python/Django Engineer — AI & Data Impact

Ditto Hire group • Cape Town

On-site
ZAR 800,000 - 1,200,000
Competitive pay
Generous leave
Small experienced team
+4
Senior Python/Django Engineer — AI-Driven, High-Impact
Senior Python/Django Engineer — AI-Driven, High-Impact

Ditto • Cape Town

On-site
ZAR 600,000 - 900,000
Competitive pay
Generous leave
Visible impact
+4
Client Success Manager
Client Success Manager

Ditto Hire • Cape Town

On-site
ZAR 360,000 - 540,000
Competitive salary
Direct exposure to leadership
Clear growth path
+1
Sales & Client Success Associate
Sales & Client Success Associate

Ditto Hire • South Africa

On-site
ZAR 223,200 - 390,600
Client Success Manager
Client Success Manager

Ditto • Cape Town

On-site
ZAR 300,000 - 450,000
Competitive salary
Real responsibility
Clear growth path
Senior React Engineer
Senior React Engineer

Ditto Hire • South Africa

On-site
ZAR 500,000 - 700,000
Senior React Engineer
Senior React Engineer

Ditto Hire • Wes-Kaap

On-site
ZAR 500,000 - 800,000
Intermediate Full Stack Software Engineer
Intermediate Full Stack Software Engineer

Babylonstoren • Franschhoek

On-site
ZAR 480,000 - 720,000
Daily catered lunch
Flexible working hours: core 9am–3pm
Choice of equipment (Apple)
+6
Client Success & Account Executive
Client Success & Account Executive

Ditto Hire • South Africa

On-site
ZAR 300,000 - 500,000
Competitive salary
Real responsibility from day one
Clear career growth opportunities