We are looking for an experienced Tech Lead to drive the design development and delivery of our backend this role you will combine hands-on engineering with technical leadership - setting direction mentoring engineers and owning the quality and scalability of the services your team builds.
You will work primarily within a Python ecosystem (Django or Flask) deploy and operate workloads on AWS and design event-driven data flows using Apache Kafka. Beyond writing code you will be accountable for architecture decisions engineering standards and the growth of the people on your team.
Key Responsibilities
Lead the technical design and architecture of backend services APIs and data pipelines balancing scalability reliability and maintainability.
Own delivery of features end to end - from requirements and design through implementation code review testing deployment and production support.
Provide hands-on engineering contribution writing high-quality well-tested Python code and setting the standard for the team.
Mentor and guide engineers conducting code reviews pairing and supporting career growth and skill development.
Define and enforce engineering best practices around coding standards testing CI/CD observability and security.
Collaborate with product managers designers and other stakeholders to translate business goals into technical roadmaps.
Design and operate event-driven systems using Kafka for reliable scalable inter-service communication.
Manage cloud infrastructure and deployments on AWS optimising for cost performance and resilience.
Identify and resolve technical debt performance bottlenecks and production incidents.
Required Qualifications & Experience
The following sections outline the core experience we require. Strong candidates will demonstrate depth across all of these areas.
Breadth: A minimum of 8 years of professional software engineering experience with a track record of shipping and maintaining production-grade systems.
Depth: Demonstrated progression from individual contributor to a senior or lead-level engineer with ownership of significant features or systems.
Fundamentals: Strong grounding in software design principles data structures algorithms API design and system architecture.
Lifecycle: Experience across the full software development lifecycle - requirements design implementation testing deployment and maintenance.
2. Python & Web Frameworks (5 years Django or Flask)
Core Python: At least 5 years of hands-on experience building applications in Python with deep knowledge of the language and its ecosystem.
Frameworks: Production experience with Django or Flask including building and maintaining RESTful APIs and web services.
Data & ORM: Proficiency with relational databases (e.g. PostgreSQL MySQL) and ORMs such as Django ORM or SQLAlchemy including query optimisation.
Quality: Strong testing discipline using frameworks such as pytest or unittest and experience integrating tests into CI pipelines.
Performance: Experience profiling debugging and scaling Python services under real-world load.
3. Cloud Engineering on AWS (Developer Perspective)
Hands-on: Practical developer-focused experience building and deploying applications on AWS - not just consuming managed services superficially.
Core services: Working knowledge of services such as EC2 S3 Lambda RDS IAM and API Gateway in the context of application development.
Deployment: Experience packaging and deploying applications using containers (Docker) and familiarity with ECS/EKS or similar.
Operations: Understanding of monitoring logging and alerting on AWS (e.g. CloudWatch) to keep services healthy in production.
Best practices: Awareness of security cost-efficiency and infrastructure-as-code (e.g. CloudFormation or Terraform) is a strong plus.
4. Technical Leadership & Team Management (3 years)
Leadership tenure: A minimum of 3 years leading engineering teams or squads whether as a tech lead team lead or engineering manager.
Mentorship: Proven ability to mentor and grow engineers through code reviews pairing and structured feedback.
Delivery ownership: Experience planning estimating and delivering projects on time while managing scope and technical trade-offs.
Collaboration: Skilled at working cross-functionally with product design and other engineering teams to align on goals and priorities.
Communication: Excellent written and verbal communication able to explain complex technical concepts to both technical and non-technical audiences.
5. Event Streaming with Apache Kafka (1 year)
Practical experience: At least 1 year of hands-on experience working with Apache Kafka in a production or near-production environment.
Producers & consumers: Experience designing and implementing Kafka producers and consumers including topic and partition design.
Event-driven design: Understanding of event-driven architecture patterns message ordering delivery guarantees and schema management.
Reliability: Familiarity with handling failure scenarios such as retries dead-letter queues and consumer lag monitoring.
Preferred / Nice-to-Have
Experience with asynchronous task queues (e.g. Celery RQ) and caching layers (e.g. Redis).
Exposure to microservices architecture and service-to-service communication patterns.
Familiarity with CI/CD tooling (e.g. GitHub Actions GitLab CI Jenkins).
Contributions to open-source projects or an active engineering community presence.
Experience working in Agile / Scrum environments.
What We Value
A pragmatic ownership-driven mindset and a bias toward delivering value.
Strong problem-solving skills and sound technical judgement under ambiguity.
A collaborative attitude and genuine investment in the growth of your teammates.
Commitment to quality security and continuous improvement.
Tech Lead Backend Engineering - Python (Django / Flask) Role Overview We are looking for an experienced Tech Lead to drive the design development and delivery of our backend this role you will combine hands-on engineering with technical leadership - setting direction mentoring engineers and owni...
Tech Lead
Backend Engineering - Python (Django / Flask)
Role Overview
We are looking for an experienced Tech Lead to drive the design development and delivery of our backend this role you will combine hands-on engineering with technical leadership - setting direction mentoring engineers and owning the quality and scalability of the services your team builds.
You will work primarily within a Python ecosystem (Django or Flask) deploy and operate workloads on AWS and design event-driven data flows using Apache Kafka. Beyond writing code you will be accountable for architecture decisions engineering standards and the growth of the people on your team.
Key Responsibilities
Lead the technical design and architecture of backend services APIs and data pipelines balancing scalability reliability and maintainability.
Own delivery of features end to end - from requirements and design through implementation code review testing deployment and production support.
Provide hands-on engineering contribution writing high-quality well-tested Python code and setting the standard for the team.
Mentor and guide engineers conducting code reviews pairing and supporting career growth and skill development.
Define and enforce engineering best practices around coding standards testing CI/CD observability and security.
Collaborate with product managers designers and other stakeholders to translate business goals into technical roadmaps.
Design and operate event-driven systems using Kafka for reliable scalable inter-service communication.
Manage cloud infrastructure and deployments on AWS optimising for cost performance and resilience.
Identify and resolve technical debt performance bottlenecks and production incidents.
Required Qualifications & Experience
The following sections outline the core experience we require. Strong candidates will demonstrate depth across all of these areas.
Breadth: A minimum of 8 years of professional software engineering experience with a track record of shipping and maintaining production-grade systems.
Depth: Demonstrated progression from individual contributor to a senior or lead-level engineer with ownership of significant features or systems.
Fundamentals: Strong grounding in software design principles data structures algorithms API design and system architecture.
Lifecycle: Experience across the full software development lifecycle - requirements design implementation testing deployment and maintenance.
2. Python & Web Frameworks (5 years Django or Flask)
Core Python: At least 5 years of hands-on experience building applications in Python with deep knowledge of the language and its ecosystem.
Frameworks: Production experience with Django or Flask including building and maintaining RESTful APIs and web services.
Data & ORM: Proficiency with relational databases (e.g. PostgreSQL MySQL) and ORMs such as Django ORM or SQLAlchemy including query optimisation.
Quality: Strong testing discipline using frameworks such as pytest or unittest and experience integrating tests into CI pipelines.
Performance: Experience profiling debugging and scaling Python services under real-world load.
3. Cloud Engineering on AWS (Developer Perspective)
Hands-on: Practical developer-focused experience building and deploying applications on AWS - not just consuming managed services superficially.
Core services: Working knowledge of services such as EC2 S3 Lambda RDS IAM and API Gateway in the context of application development.
Deployment: Experience packaging and deploying applications using containers (Docker) and familiarity with ECS/EKS or similar.
Operations: Understanding of monitoring logging and alerting on AWS (e.g. CloudWatch) to keep services healthy in production.
Best practices: Awareness of security cost-efficiency and infrastructure-as-code (e.g. CloudFormation or Terraform) is a strong plus.
4. Technical Leadership & Team Management (3 years)
Leadership tenure: A minimum of 3 years leading engineering teams or squads whether as a tech lead team lead or engineering manager.
Mentorship: Proven ability to mentor and grow engineers through code reviews pairing and structured feedback.
Delivery ownership: Experience planning estimating and delivering projects on time while managing scope and technical trade-offs.
Collaboration: Skilled at working cross-functionally with product design and other engineering teams to align on goals and priorities.
Communication: Excellent written and verbal communication able to explain complex technical concepts to both technical and non-technical audiences.
5. Event Streaming with Apache Kafka (1 year)
Practical experience: At least 1 year of hands-on experience working with Apache Kafka in a production or near-production environment.
Producers & consumers: Experience designing and implementing Kafka producers and consumers including topic and partition design.
Event-driven design: Understanding of event-driven architecture patterns message ordering delivery guarantees and schema management.
Reliability: Familiarity with handling failure scenarios such as retries dead-letter queues and consumer lag monitoring.
Preferred / Nice-to-Have
Experience with asynchronous task queues (e.g. Celery RQ) and caching layers (e.g. Redis).
Exposure to microservices architecture and service-to-service communication patterns.
Familiarity with CI/CD tooling (e.g. GitHub Actions GitLab CI Jenkins).
Contributions to open-source projects or an active engineering community presence.
Experience working in Agile / Scrum environments.
What We Value
A pragmatic ownership-driven mindset and a bias toward delivering value.
Strong problem-solving skills and sound technical judgement under ambiguity.
A collaborative attitude and genuine investment in the growth of your teammates.
Commitment to quality security and continuous improvement.