As of 2025, the Data Science market for specialists continues to be overheated. Despite the abundance of resumes on career platforms, finding a really strong Data Science Engineer with advanced skills in working with ML models in production and a deep understanding of business metrics is not an easy task. This is especially true in the fintech sector, where an engineer is required not only to know technology, but also to be able to think like a product specialist.
Customer request
We were approached by a fintech startup that is actively developing a microfinance product. The team was looking Middle+/senior Data Science Engineer with a focus on:
- Experience in building and implementing ML models (primarily scoring and fraud detection)
- Deep knowledge of Python (Pandas, Scikit-Learn, FastAPI)
- Experience with Airflow, MLFlow, Docker
- Strong knowledge of SQL and understanding of working with large amounts of data
- English — at least Upper-Intermediate
The advantage was working with A/B testing systems and the experience of interacting with a team of analysts/product analysts.
Difficulties encountered
The main challenges we faced were:
- Candidates with relevant experience are more likely to be focused on ML Engineer or Researcher roles rather than an engineering product position.
- Many candidates had no experience in implementing models in production or worked in highly academic teams.
- The customer's budget did not allow us to compete with large banks and BigTech companies.
- Experience working in a startup environment or on rapidly changing projects was important — there are significantly fewer such candidates.
Recruitment process
Step 1: Preparing and refining the profile
- We met with the client's team, clarified the specifics of the product, the stack and the immediate tasks for the future of Data Science Engineer.
- We jointly identified must-to-have and nice-to-have skills.
- They focused on: the practical experience of production models, the ability to take responsibility for a full ML pipeline, and experience in a rapidly changing product.
- We created a “portrait of an ideal candidate” and adapted the job description to several channels (official, “human” for communities, a short pitch for personal messages).
Step 2: Active search and outreach
We did not limit ourselves to standard job platforms and launched a multichannel funnel:
Search channels:
- LinkedIn: search by key skills+filtering by startup experience.
- Habr Career: responding and inviting candidates with relevant projects.
- GitHub: search for active ML repositories and participation in open-source.
- Kaggle: communication with participants and winners of competitions.
- Telegram communities: posted vacancies on ML/DS channels and did live outreach.
- Alternative sources: Alumni parties at MIPT, Moscow State University, Higher School of Economics; participants in AI hackathons.
Scope:
- 200+ candidates received individual messages pitching the position.
- Twenty preliminary interviews were conducted.
- 5 candidates were sent to the client for the technical stage.
Step 3: Support and Facilitation
- We led candidates at all stages: we gave feedback, helped with questions, and coordinated interviews.
- With the client — prompt feedback, advice on the interview format, support in selecting finalists.
- They quickly processed objections (salary, work format, tasks) and adapted the job application.
The result of our work
It took place exactly from the moment the recruitment was launched to the acceptance of the offer 21 days. The key factor in this speed was not only the wide coverage of candidates, but also the structured communication with the client.
How did we get to the offer quickly and successfully:
- EVP was clearly reported (the employer's value proposition) to candidates: flexibility in decision-making, product autonomy, real impact on business through models, an understandable team roadmap and an open culture.
- During the interview together with the client, we highlighted the key “triggers” for candidates: lack of bureaucracy, work in conjunction with product and analytics, real challenges (not “toy ML”).
- They helped us communicate with the finalist set realistic growth expectations, tasks for 3—6 months, and the format of interaction within the team.
- We transparently discussed and justified the level of compensation, pointing out intangible advantages (influence, development, flexibility, culture).
- Thanks to this open strategy, the candidate accepted the offer immediately, without a bargaining stage — he saw the conditions transparent and felt confident in the team and the product.
Final candidate:
- Experience: 4 years in Data Science, 2 years in building ML production systems.
- Projects: scoring in a microfinance platform, anti-fraud on transactions, A/B platform.
- Stack: Python, Scikit-Learn, MLFlow, Docker, Airflow, FastAPI, PostgreSQL.
- Software: quickly integrates into the team, offers solutions, and is focused on product results.
The candidate's interim results after 2 months of work:
- I rewrote the outdated pipeline for Airflow — I accelerated calculations by 40%.
- I increased the accuracy of the scoring model by 12% by working with new features.
- Implemented ML experiment tracking via MLFlow.
- I launched the first A/B test for my scoring module together with analysts.
The client was fully satisfied not only with the technical level, but also with the candidate's initiative. After a successful hire, we continued our cooperation with this company — now we are selecting ML Product Manager.
Дата