We are looking for a Principal full-stack engineer with a strong backend bias to join the Platforms team. This role sits within a collaborative engineering function building world-class edtech solutions including the Impact Platform and AI Coach. This is not a people management role but the person will serve as the go-to technical voice on the team - contributing to system design, writing architectural documents, leading code reviews, and helping shape the technical direction of the product. Think pseudo team lead with a strong hands-on coding output. The ideal candidate has proven production experience in Python/Django and React/TypeScript, with a 70/30 backend-to-frontend working ratio. They will be comfortable owning complex data models, designing scalable systems, and contributing to the evolution of the broader architecture - not just executing tickets.A key requirement for this hire is a pragmatic and experienced approach to AI-assisted development. We are not looking for an AI-only engineer - we are looking for someone who has genuinely integrated AI tools into their development workflow, understands where AI creates leverage and where it creates risk, and can bring a fresh perspective to help the team evolve how they work with these tools responsibly. The role requires strong written communication skills. The client operates a writing-focused culture where collaboration, planning, and ideation happen largely in written form. The ability to communicate technical decisions clearly and contribute to documentation is as important as coding ability.Mentorship is a genuine expectation - this person will help junior engineers grow into more technically self-sufficient contributors.Timezone requirement: The candidate must be willing and able to align working hours with Eastern Time (ET). This is a firm requirement. South Africa (GMT+2) and Kenya-based candidates are considered provided they can demonstrate a genuine commitment to ET overlap hours
Responsibilities
Build
- Ship high quality, testable, readable, and maintainable code iteratively and regularly in a Python/Django and React/TypeScript environment
- Own complex data models and develop a deep understanding of how data flows through intricate, large-scale production systems
- Design and implement solutions with scale, security, performance, and privacy as primary considerations
- Use AI-assisted development tools (Claude Code or Cursor) responsibly to improve velocity without compromising code quality - able to articulate where AI creates leverage and where it creates liability
- Contribute to the evolution of the broader system architecture - not just feature delivery but the long-term health and direction of the platform
Lead
- Serve as the go-to technical voice on the team - the person others turn to for system design decisions, architectural guidance, and technical problem solving
- Write and maintain architectural documents and technical specifications - able to communicate complex technical decisions clearly in written form
- Lead and participate in code reviews, share learnings through presentations and documentation
- Guide and mentor junior engineers on best practices, helping them become more technically capable and self-sufficient
- Drive the team's approach to AI integration - helping define where and how AI tools fit into the development workflow to maximise productivity without quality deterioration
- Propose and implement improvements to engineering processes, particularly as AI tooling continues to evolve rapidly
Collaborate
- Contribute early in the product development process - review research on clients and learners and weigh in on product strategy and roadmap
- Partner closely with Product Managers to provide multiple viable technical paths for new features and improvements
- Participate in Design and Operational Reviews to guide technical decision-making and surface performance issues early
- Collaborate effectively in a writing-focused, largely async culture - planning, ideation, and decision-making happen primarily in written form
- Work within a remote-first, cross-timezone team - must be comfortable and effective operating with Eastern Time alignment
Deliver
- Manage and improve complex production systems, including refactoring legacy code and resolving data consistency challenges without impacting customer experience
- Contribute to observability and performance monitoring - familiar with tools such as Datadog or equivalent
- Work within CI/CD pipelines and infrastructure-as-code environments (Terraform or equivalent)
- Maintain high standards for security, reliability, and code integrity across all output
Experience and education
Required
- 7+ years of total software engineering experience in a professional production environment
- Proven experience coding in a production Python/Django environment - candidate must have at least baseline proficiency and cannot be brand new to the stack
- Experience with React and TypeScript in a production environment
- Experience writing SQL queries and designing relational data models
- Experience using AI-assisted and agentic development workflows - must be able to demonstrate practical, hands-on use of AI tools in a real engineering context
- Experience as the go-to technical voice or pseudo team lead on an engineering team - does not need to have held a formal tech lead or management title but must have functioned in this capacity
- Experience writing architectural documents, technical specifications, and contributing to system design decisions
- Experience working in a remote-first, async, writing-focused engineering culture
- Must be willing and able to align working hours with Eastern Time (ET) with a cross over
Preferred
- Experience with infrastructure-as-code tooling such as Terraform
- Experience with observability and performance monitoring tools such as Datadog or equivalent
- Experience with tiered web application architecture including backend services, APIs, and frontend integration
- Experience improving or refactoring complex production systems - particularly under conditions involving legacy code, tight synchronisation, or data consistency challenges
- Experience working with Go or other backend-adjacent languages in addition to Python
- Exposure to CI/CD pipelines and deployment workflows
- Experience working with or alongside Product Managers in an agile, iterative delivery environment
- Familiarity with AI coding tools such as Claude Code, Cursor, or equivalent - and the ability to contribute to team-wide standards and workflows around these tools
- Passion for mentoring and growing junior engineers
Education
- No specific degree requirement - demonstrable experience and a strong engineering track record will be weighted above formal qualifications
- Relevant certifications in cloud infrastructure, security, or software engineering are a plus
Important Calibration Note for AI Matching
- Years of Python/Django experience is flexible - total engineering experience and overall profile strength are weighted above stack-specific years. A well-rounded senior engineer with strong related experience and baseline Python/Django proficiency will be considered.
- The candidate must be backend-heavy in their recent and current work. Candidates whose recent experience is predominantly frontend will not be progressed regardless of broader full-stack history