Post an “AI Engineer” role today and you'll get applications from four or five genuinely different kinds of people, and most of them will call themselves the same thing on LinkedIn. That's not a candidate problem. It's a title problem, and it's the first thing we untangle in any AI/ML brief before a single CV goes anywhere.
The first group is applied ML engineers: people who take an existing model architecture, fine-tune it against a real dataset, and get it into production behind an API. The second is ML infrastructure engineers, who rarely touch model architecture at all and instead spend their time on the pipelines, feature stores, and serving infrastructure that make the first group's work reliable at scale. Neither is “more senior” than the other — they're different disciplines that happen to share a job title.
Then there's the research-leaning group: people with a genuine research background, often a graduate degree with published work, who are good at reading papers and adapting new techniques, but who may have shipped very little production code. Fourth are the “AI-adjacent” generalists — strong backend or data engineers who've picked up enough ML tooling to build with an LLM API or a pretrained model, without deep ML theory underneath. Increasingly there's a fifth group too: people whose actual job is prompt engineering and LLM-application development, which barely existed as a distinct skill set two years ago and now supports entire product teams on its own.
None of these five are wrong answers to “AI Engineer.” They're wrong answers to a brief that didn't specify which one it actually needed. Before we take a search live, we push a hiring manager to tell us: is this role touching model training, or consuming models someone else built? Is production reliability the job, or is research judgement? Get that answer first, and the shortlist writes itself. Skip it, and you'll spend six weeks interviewing five different jobs' worth of candidates for one role.
