Case
ML Engineers and Python Developers for a new AI division: a team of 6 senior engineers in 5 months
We split an "impossible" ML + Python role into two profiles and hired a team of 6 senior engineers in 5 months
An international enterprise automation company was creating its own ML division and was looking for engineers who can not only build an AI agent but also deploy and maintain it in production. Hiring a team of people who combine strong ML and high-load Python within a tight deadline was unrealistic, so NEWHR split the role into two profiles. In 5 months we hired a team of 6 senior engineers: 4 Python Developers and 2 ML Engineers.
Request and constraints
In summer 2025 a long-term client came to NEWHR: one of the leaders in enterprise automation, a company that integrates systems and automates processes with AI and serves 17,000+ enterprise customers worldwide. It has 1,000+ employees and is based in the US. The search ran from August to December 2025.
The client was creating its own ML division. It needed developers who understand how to bring an AI agent into production and maintain it without breaking the product's overall infrastructure. Initially the client was looking for strong ML/AI Engineers with a background in high-load backend services and excellent Python. At the first briefing the client put the request honestly: "We don't know who this should be, backend developers or ML people. We need people who can solve our problem."
- A relevant degree: one of the client's interview stages is a hard algorithms section
- 7+ years of experience and the ability to cover the full development cycle
- Experience at large companies combined with an understanding of how startups work
- Based in a country where the company has offices, or ready to relocate: work is office-only
- Languages other than Python
Large-company experience was needed because the client's customers are large enterprises and banks. An understanding of startups was needed because the team was being built for an entirely new area: people had to be ready for sudden changes and a high development pace.
"Python is not always the language for high-load services. More often it is used for prototypes, and then teams move to other languages, such as Go, C++ or Java. So from the start we looked for candidates with experience coding in several languages."
Yulia Dobrova, Head of Tech Recruitment NEWHR
Why it was hard
Tight deadline
The client needed the new hires quickly.
A rare combination of skills
Strong ML, high-load backend and excellent Python are rarely found in one person.
A whole team was needed
Finding one or two unique specialists is easier than quickly building a whole team of such people.
How we searched
The search was led by Yulia Dobrova, Head of Tech Recruitment NEWHR.
Before searching, we checked whether the market had enough of the right candidates
There were two approaches: search for rare specialists with very specific experience, as the client originally planned, or split the requirements into two roles that work closely together. Finding strong Python Developers and strong ML Engineers separately is more realistic within a tight deadline. Yulia decided to test both hypotheses.
"The client needed new people on a tight deadline, and hiring a team of people who perfectly fit the 'ML+Python' profile could have taken far too long. So I decided not to rush into searching for candidates, but first to make sure there were enough of them on the market."
Yulia Dobrova, Head of Tech Recruitment NEWHR
The market analysis confirmed the concern: searching for ideal candidates would take too long, with no guarantee of success.
We split one role into two profiles
At the next meeting Yulia proposed splitting the vacancy into two profiles:
ML Engineers with a solid technical foundation
Grew out of data science and know how to build agent architecture.
Python Developers with experience in AI products
Understand the ML model lifecycle and can anticipate what problems may arise in production.
The client weighed the arguments and agreed. At that point Anastasia Eremenko, Senior IT Recruiter for Data Science and Data Analytics, joined the search: she took on the search for ML Engineers.
We searched for Python developers by company, not by profile keywords
LinkedIn was the main source. Yulia worked with two strategies:
- searching for "ideal" candidates who had already worked on AI agents and deployed ready-made models to production;
- searching for strong Python or Backend Developers from companies whose product is related to LLMs or ML.
In the second case, at screening Yulia found out how involved the candidate had been in AI work: whether they understand the full development cycle of an AI product, can think ahead about how their code interacts with the ML part, and see the limitations and possible problems of AI agents.
"Even now, far from all developers mention on LinkedIn that they have worked on AI-related products. Or, which also happens a lot, they simply don't update their profiles regularly. That means they are hard to find with a standard keyword search, so I focused on companies.
One of the best engineers, by the way, was exactly like that: he had nothing listed at all, not even his stack. Only from the list of companies could I see that he had definitely worked on a good product. On the first contact it turned out that in his current job he really was solving hard ML problems. Not a word about them in his profile!"
Yulia Dobrova, Head of Tech Recruitment NEWHR
This route takes longer, but it paid off: Yulia found 5 of the 9 candidates presented to the client this way.
Who we screened out and what we checked in interviews
At the very start Yulia excluded Python Developers who had never worked with AI/ML at all. The Python AI Developer role looks attractive and many want to move into it, but the client needed developers with real experience of AI/ML tasks, not theoretical knowledge.
In interviews Yulia checked how complex the problems the remaining candidates had solved were.
"It was important for me to understand the candidate's background: how complex the projects they built were, whether they took part in architectural decisions, whether they had the chance to own the product or part of it."
Yulia Dobrova, Head of Tech Recruitment NEWHR
Funnel
Python Developers
| Stage | Candidates | Conversion from previous stage | Conversion from start |
|---|---|---|---|
| Initial search | 211 | — | 100% |
| Agency interviews | 30 | 14.2% | 14.2% |
| CVs sent to the client | 9 | 30% | 4.3% |
| Client interviews | 8 | 88.9% | 3.8% |
| Offers | 4 | 50% | 1.9% |
| Started work | 4 | 100% | 1.9% |
ML Engineers
| Stage | Candidates | Conversion from previous stage | Conversion from start |
|---|---|---|---|
| Initial search | 130 | — | 100% |
| Agency interviews | 18 | 13.8% | 13.8% |
| CVs sent to the client | 7 | 38.9% | 5.4% |
| Client interviews | 7 | 100% | 5.4% |
| Offers | 2 | 28.6% | 1.5% |
| Started work | 2 | 100% | 1.5% |
Result
8 of the 9 Python developers NEWHR presented to the client were invited to interview, and 4 started work, forming the core of the new team. Anastasia presented 7 ML Engineers to the client; two of them received offers and started work.
The outcome: a senior team of 6 people for the new ML division in under six months.