Machine Learning Engineer (Mid/Senior)
Join TryHackMe as a Mid/Senior AI Engineer to help millions learn cyber security. Build production LLM, recommendation and embedding systems, including our AI tutor Echo, in a remote team.
Machine Learning Engineer (Mid/Senior)
TryHackMe · UK & Europe (Remote / Hybrid)
About TryHackMe
TryHackMe is the fastest-growing online cyber security training platform, with a community of more than 9 million learners. We make security skills accessible, hands-on and fun, for individuals and for the businesses that train their teams with us.🥷
About the role
We’re looking for a Machine Learning Engineer to design, build and own production ML systems that shape how millions of people learn cyber security. You’ll work across LLM-powered experiences, recommendation and personalisation, and embedding-based systems that help us understand learners and content.
You’ll work closely with product squads, the data team and engineering. You’ll take problems from a fuzzy idea to a measurable result in production. At senior level, you’ll also set technical direction, raise the bar on ML engineering practice and mentor others.
What you’ll do
Design, build and run LLM applications in production, including RAG pipelines, agentic workflows and evaluation frameworks, with a focus on quality, latency and cost.
Evolve Echo, our AI tutor, so it gives learners context-aware, personalised guidance as they work through labs and challenges. (tryhackme.com/echo)
Build and improve recommendation and personalisation systems, covering next-best-content, learning paths and difficulty adaptation, based on learner behaviour.
Develop embedding models and pipelines for semantic search, content similarity, skill mapping and learner modelling.
Own the full ML lifecycle: data pipelines, offline evaluation, A/B testing, deployment, monitoring and iteration.
Make pragmatic build-vs-buy calls across open-source and hosted models, and decide when to prompt, fine-tune or train.
Partner with product to define success metrics and tie model improvements to learner outcomes and engagement.
(Senior) Lead technical design for ML initiatives, mentor engineers and shape our ML platform and standards.
What we’re looking for
Mid: 3-5 years in ML engineering. Senior: 5+ years, with a track record of leading ML systems end to end.
Hands-on experience shipping LLM-based products to real users, with practical knowledge of RAG, prompt and context engineering, and LLM evaluation.
Practical experience building recommendation or personalisation systems at scale.
Solid understanding of embeddings, including model selection, fine-tuning or adaptation, vector search and retrieval quality.
Strong Python and software engineering fundamentals: testing, code review, CI/CD and secure coding.
Experience deploying and operating ML services with Docker, Kubernetes, REST APIs and microservices.
Comfort with SQL and large-scale data processing.
Ability to design experiments and reason about metrics, both offline and online.
Clear communication with both technical and non-technical stakeholders.
Nice to have
Cyber security background or genuine interest, such as CTFs, homelabs, a security role, or being a TryHackMe user yourself.
Experience fine-tuning open-source LLMs (LoRA/QLoRA, SFT, preference tuning) and serving them efficiently (vLLM, quantisation).
Vector databases (pgvector, Qdrant, Weaviate, Pinecone or similar).
Learner modelling, knowledge tracing or EdTech experience.
PyTorch, Hugging Face and scikit-learn; MLOps tooling such as MLflow, feature stores and model monitoring.
Experience with agent frameworks and tool-use or LLM guardrails.
Why TryHackMe?
High Impact & High Autonomy: Work in a small team where your work directly reaches millions of learners building careers in cyber security, as well as global enterprises, rather than getting lost inside a 500-person engineering department. You’ll have real ownership, a big surface area and a short path from idea to production.
A Rare Technical Mix: Work across LLMs, recommendation systems and security, all in one role.
Elite Sports Team Mindset: We foster a candid, direct feedback culture built on rapid execution, high trust and extreme ownership.
Profitable & Fast-Growing: Enjoy the velocity of an early-stage scale-up backed by the stability of a highly profitable, self-sustaining business.
Benefits & Perks
🚣 100% Remote: Work from anywhere within the UK or approved EU regions.
💻 Top-Tier Tools: Latest MacBook Pro + budget for any workspace accessories you need.
👕 Swag Bundle: Start your journey with exclusive TryHackMe gear.
💪 Personal Development: £2,500 annual training budget for certifications, courses, and conferences.
⛱️ Company Retreat: Fully paid annual company-wide retreat.
🍕 Lunch on Us: Covered during recurring virtual team lunches.
🧡 Health Insurance: Provided in regions without universal coverage.
🍼 Enhanced Leave: Generous maternity and paternity packages.
💸 Pension / 401(k): Company contribution options for retirement savings.
Our Hiring Process
Stage 1: Introductory Chat with Talent Partner (~15 mins)
Stage 2: Technical & Experience Interview with the Head of Engineering
Stage 3: Take-Home AI-Assisted Technical Assessment + Follow up with the Engineers
Stage 4: Founders Interview (Culture & Operating Alignment) with Co-Founder
- Department
- Software Engineering
- Role
- Software Engineer
- Location
- Remote
- Remote status
- Fully Remote
- Employment type
- Full-time
About TryHackMe
TryHackMe takes the pain out of learning and teaching cyber security. Our platform makes it a comfortable experience to learn by designing prebuilt courses that include virtual machines (VM) hosted in the cloud and ready to be deployed. This avoids the hassle of downloading and configuring VMs. Our platform is perfect for CTFs, Workshops, Assessments, or Training. We've come a long way since launching in 2018, with over 8 million users on the platform!