At a Glance
- Tasks: Develop robust Python applications and enhance ML systems for impactful automation.
- Company: Join Mimica, a forward-thinking tech company revolutionising workplace efficiency.
- Benefits: Generous salary, stock options, remote work, flexible schedules, and ample paid time off.
- Other info: Fully remote role with opportunities for professional growth and exciting team dynamics.
- Why this job: Shape the future of work with cutting-edge AI technology and a collaborative team.
- Qualifications: 8+ years in software engineering, strong Python skills, and experience in leading projects.
The predicted salary is between 80000 - 100000 £ per year.
Mimica's mission is to empower enterprises, teams, and individuals to reclaim their most precious resource — time and work more efficiently, with greater purpose and impact. Our AI-powered task mining observes employee actions across the desktop and categorises them into detailed process maps. Mimica’s process intelligence highlights inefficiencies, prioritises improvements based on ROI, recommends the optimal technology for automation (RPA, intelligent document processing, GenAI), and provides a blueprint for building new automations and transforming work.
We’ve achieved strong product-market fit and are now scaling with intention. You’ll join a 45-person team of Senior+ engineers and Product leaders who prioritise product impact over mere headcount. We have 8 cross-functional teams, including a dedicated Platform team focused on infra & developer experience. We started building proprietary ML before the LLM boom, so we don't just consume models - we train them from the ground up.
Our approach to engineering:
- We prioritise customer needs first
- We work in small, project-based teams
- We have flexibility in terms of the problems we work on
- We own the full lifecycle of our projects
- We avoid silos and encourage taking up tasks in new areas
- We balance quality and velocity
- We have a shared responsibility for our production code
- We each set our own routine to maximise our productivity
What will you own:
In this role, you will own and support the development of backend systems that interface with ML models. You will build apps and core components of our ML systems, deliver new AI features and drive improvements to our infrastructure and services.
We are currently looking for Engineers to join one of our teams:
- Data Intelligence Team: whose goal is to provide ML-enriched data for downstream tasks and ensure user data privacy. You will support our data orchestration and processing pipeline, as we build with scalability in mind.
- Miner Team: whose goal is to enable rapid and accurate labelling and segmentation of data in the Miner product through automation and ML methods. You will support the automation and scalability of the existing ML systems that back up our Miner product.
- Maker Team: a team responsible for building out the automation engine, as one of its founding members. We're building a new product from scratch, and that means being a part of the design of its architecture, experimentation and development.
In all cases, we're looking for a Lead/Staff-level engineer to join the Python Chapter, who will have the opportunity to shape our technical direction, architecture, processes, and culture, and to level up the team and Chapter in development practices.
What you will be doing:
- Write Python applications that are resilient, robust, and integrate well with other apps in a service architecture.
- Furthering Developer Experience (DevEx) by mentoring others in writing code that is intuitive, clear, and easy to test.
- Developing observability for new and existing ML applications and GenAI/LLM integrations, making use of the Grafana Stack (Prometheus, Loki, Tempo).
- Develop integrations and services that communicate with Google Services.
- Working closely with Data Scientists and ML Engineers throughout the lifecycle of productionising their models.
- Being responsive to incidents regarding ML applications - including an understanding of how to triage and resolve issues relating to CPU, memory, and GPU utilisation.
- Documenting procedures and guides to facilitate knowledge sharing and help other engineers level up through pairing and mentoring.
- Participating in hiring and onboarding new team members; taking on end-to-end project management responsibilities as we grow.
Who are we looking for:
- At least 8 years of experience and above as a Software Engineer, and previous Lead/Staff/Principal level of responsibilities.
- Strong proficiency with Python and Backend-Engineering.
- Strong experience with async/concurrent programming.
- Experience owning projects from start to finish, including speccing, architecture, development, testing, deployment, release and monitoring.
- Strong skills in building maintainable tests.
- Strong experience with observability and tracing.
- Knowledge of best practices for performance optimisation, memory management.
- Experience mentoring others, especially in good software development practices, patterns, and fundamentals.
- Drive to continually develop your skills, improve team processes and reduce technical debt.
- Fluency in English and ability to effectively communicate abstract ideas, complex concepts and trade-offs.
Nice to have:
- Having been a founding/early member of an Engineering team.
- Experience working within a fast-growing Scale-up environment – delivering value quickly and iteratively.
- Experience with GCP.
Who you are not:
- You're not a Junior or Mid-level engineer. While we value mentoring, coaching, and curiosity, at this stage, we're looking for Senior+ Engineers to help lay a solid foundation before expanding to junior engineers.
- You use Python, but you're not familiar with its fundamentals. In this role, we're looking for people who can set standards, have seen good practices and can explain and defend technical options.
- You don't have experience with complex architectures. We have a high technical bar, as we're building with scalability in mind, so this role would not be a good fit if you have a shallow understanding of architecture and networking of data-intensive applications.
Recruitment Stages:
- Stage 1 | Recruiter Screen with Technical Recruiter
- Stage 2 | Take-home Challenge (async) + Follow-up (Live) - with Engineering Manager + colleague in an equivalent role
- Stage 3 | System Design (Live) - with Engineering Manager + someone you'd work closely with.
- Stage 4 | Founders/Behavioural Interview - with TL + Co-founder/CTO
Location: This is a fully remote position. You can be based anywhere in the UK, Europe, or the Americas within a UTC-7 to UTC+3 timezone.
What we offer:
- Generous compensation + stock options - aligned with our internal framework, market data, and individual skills.
- Distributed work: Work from anywhere - fully remote, in our hubs, or a mix.
- Company-issued laptop, remote setup stipend, and co-working budget.
- Flexible schedules and location.
- Ample paid time off, in addition to local public holidays.
- Enhanced parental leave.
- Health & retirement benefits.
- Annual learning & development budget.
- Annual workaways and regular virtual & in-person socials.
- Opportunity to contribute to groundbreaking projects that shape the future of work.
Note: Some benefits may vary depending on location and role.
Mimica will only contact candidates from an @mimica.ai email address. We do not request banking or sensitive personal information during the recruiting process.
Staff/Lead Python Engineer (ML Platform/Ops) in London employer: Mimica
Contact Detail:
Mimica Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Staff/Lead Python Engineer (ML Platform/Ops) in London
✨Tip Number 1
Network like a pro! Reach out to folks in your industry on LinkedIn or at meetups. A friendly chat can lead to opportunities that aren’t even advertised yet.
✨Tip Number 2
Prepare for those interviews! Research the company, understand their products, and think about how your skills can help them achieve their mission. We want to see you shine!
✨Tip Number 3
Show off your projects! Whether it’s a GitHub repo or a personal website, having tangible examples of your work can really set you apart from the crowd. Let us see what you can do!
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, we love seeing candidates who are proactive!
We think you need these skills to ace Staff/Lead Python Engineer (ML Platform/Ops) in London
Some tips for your application 🫡
Tailor Your Application: Make sure to customise your CV and cover letter for the role. Highlight your experience with Python and backend engineering, and show how your skills align with our mission at Mimica. We want to see how you can contribute to our ML platform!
Showcase Your Projects: Include examples of projects you've owned from start to finish. We love seeing how you've tackled complex architectures and implemented observability in your work. This will help us understand your hands-on experience and problem-solving skills.
Be Clear and Concise: When writing your application, keep it straightforward. Use clear language to explain your technical expertise and experiences. We appreciate a well-structured application that gets straight to the point without unnecessary fluff.
Apply Through Our Website: We encourage you to apply directly through our website. It’s the best way to ensure your application gets into the right hands. Plus, you’ll find all the details about the role and our company culture there!
How to prepare for a job interview at Mimica
✨Know Your Python Inside Out
Make sure you brush up on your Python skills, especially around async and concurrent programming. Be ready to discuss your past projects in detail, focusing on how you approached architecture and performance optimisation.
✨Showcase Your Mentoring Skills
Since this role involves mentoring others, prepare examples of how you've helped junior engineers or peers improve their coding practices. Highlight any specific instances where your guidance led to better project outcomes.
✨Understand the ML Landscape
Familiarise yourself with machine learning concepts and how they integrate with backend systems. Be prepared to discuss your experience with observability tools like Grafana and how you've used them to enhance ML applications.
✨Be Ready for System Design Challenges
Expect to tackle system design questions during the interview. Practice designing scalable architectures and be ready to explain your thought process, trade-offs, and how you would approach real-world problems in a fast-paced environment.