Software Engineer (Machine Learning)
About this role
Detecting and neutralizing rapidly evolving online scams and phishing attempts requires sophisticated machine learning models capable of operating against adaptive adversaries. Netcraft is addressing this challenge by hiring a software engineer to join the Novel Classification team and build automated blocking systems that process internet-scale threat data.
Members of this group design and deploy multi-modal embeddings, LLM classifiers, and computer vision models that handle high-volume live traffic. The person in this role will build, evaluate, and tune production classifiers while managing the underlying GPU-backed serving infrastructure.
Ideal candidates bring a solid foundation in web technologies and machine learning, paired with an empirical mindset and a willingness to learn languages like Go and modern Perl. Success here means translating experimental outcomes into reliable production systems that protect organizations worldwide from cybercrime.
What you will do
- Build, evaluate, and tune classifiers that determine which online content gets blocked and taken down.
- Deploy and operate model serving infrastructure on Kubernetes, including LLM inference engines like vLLM.
- Optimize models for high-volume and low-cost serving across production environments.
- Run experiments against live data by measuring precision, recall, and false positive rates to guide shipping decisions.
- Integrate machine learning models into core production classification platforms.
- Construct feature extraction pipelines, monitoring tools, and scheduled retraining workflows behind the models.
- Investigate and resolve production issues ranging from model regressions to performance bottlenecks.
What you need
- Demonstrate strong web fundamentals including HTTP, DNS, and deep knowledge of how websites function from requests to rendering.
- Possess a working understanding of machine learning fundamentals such as training, evaluation, overfitting, and precision-recall trade-offs.
- Communicate complex technical concepts clearly and concisely to a wide range of internal stakeholders.
- Apply an empirical mindset to design experiments, measure outcomes, and validate impact through metrics.
- Show a willingness to learn Go and modern Perl, including asynchronous programming paradigms.
- Maintain high attention to detail and a strong sense of responsibility regarding classification accuracy.
Nice to have
- A keen interest in cybercrime or cybersecurity.
- Experience fine-tuning models and conducting related evaluations.
- Experience with LLM agents, evaluation, and serving tools like vLLM or llama.cpp.
- Familiarity with cloud-native technologies such as Kubernetes, Flux, Argo, and API gateways.
- Experience with multi-modal models, embeddings, or similarity search at scale.
Benefits
- 33 days annual leave including public holidays with flexibility to work public holidays if preferred
- Generous enhanced family leave and pay alongside enhanced company sick pay from day one
- Salary sacrifice pension with matched employer contributions up to 5% plus NI savings
- Private health cover including access to a private GP service and life assurance at 4x salary
- Hybrid and flexible working options with meals, snacks, and drinks provided in the office
- Two paid Learning & Development days per year plus access to Udemy and Coursera
Skills and tech stack
Questions candidates ask
What are the location and remote work options for this role?
Netcraft offers hybrid and flexible working options, with positions preferably based in London though Manchester and Bath are also available options.
What kind of machine learning projects will I work on?
Recent projects include multi-modal embeddings that power classification and search, LLM classifiers, computer vision models for logo detection, and ensemble predictors that combine visual and semantic signals.
What qualifications or background do I need to apply?
You need strong web fundamentals, a working understanding of machine learning basics, good communication skills, an empirical mindset, and a willingness to learn Go and modern Perl. Even if you cannot tick every box, Netcraft encourages applications and supports individual growth.