Skip to main content

Command Palette

Search for a command to run...

Can Claude Code get a job as an ML engineer?

Updated
4 min read
D
{mathematician, coder, human}

Claude Code is so good at coding that it’s easy to forget how much it knows about so many other useful areas of knowledge. I was reminded of this recently when I was coding up a suite of pedagogical Machine Learning apps, whose goal is to allow you to train neural network models in a graphical environment. I thought it would be fun to gamify the model training experience by wrapping it in an app with a nice GUI. And indeed, the apps are fun to play with and help me learn about ML concepts.

While playing with one of these apps I called Math Symbol Trainer, a rudimentary OCR model focused on mathematical symbols, I realized that I don’t understand how to set the learning rate in an optimal way as well as I'd like to, and wished there was someone I could consult. My next thought was that, of course, I could consult Claude Code. But Claude Code, which helped me code the Machine Learning apps I was using, wasn't seeing what I was seeing while using the app, so it felt like it would be tedious to explain to it exactly what I was seeing as context for my question about setting the learning rate, or to ask it to do some clunky experiment of simulating app use itself by using Playwright MCP, or by adding logging or diagnostics. (This is a general phenomenon I've noticed: when you are coding something up with Claude Code, it will be intimately familiar with the code and with what your project is trying to achieve, but there will still be an invisible boundary separating you as a user of your own app from Claude Code as the engineer coding it up. This creates a small but frequent source of frustration.)

How do we bridge that invisible gap? The solution that occurred to me is to turn the app itself into an agentic system. As I now realize after doing the same thing a few times with other app, it's surprisingly easy to do: you simply ask Claude Code to add an AI assistant to your app who understands the app's user interface, can activate the different controls (defined through tools in the Claude Agent SDK, the currently-canonical API for coding up agentic Claude Code-style assistants), and can read the data the app is displaying to you, also through tools.

I set this system up and called this new app the Agentic Symbol Trainer. The app's AI assistant is called ML Engineer. The setup works, and is a lot of fun to use. Now I can be lazy and simply go to the app's chat pane and ask ML Engineer "design my neural network architecture", "train my model" etc. and watch the network being trained, with ML Engineer producing a useful stream of instructive commentary explaining what it's doing as it is fulfilling my request. And if I want to be less lazy, I can do the training myself - the app's "manual" UI still works fine - and when needed I can go to ML Engineer with questions about what to do next or how to calibrate some parameter. There is no invisible boundary anymore between the user side and the developer side - ML Engineer lives right there inside the app and can see everything that I'm seeing.

I haven't done any rigorous testing or assessment of the quality of ML Engineer's work (and probably lack the expertise to do it, although I assume Claude Code could help with that as well), but to my non-expert eyes, it's fairly clear that ML Engineer - or really, Claude Code, which powers the Claude Agent SDK under the hood - is a competent engineer who has exactly the sort of knowledge and expertise that a couple of years ago would have qualified a human to have an actual paid job as an actual ML engineer. Maybe that's not even a strong enough statement; even today, Claude Code can clearly automate or semi-automate many ML engineering tasks, and I'm willing to bet that people who work at AI companies know that very well and use it routinely for their work training ML models and doing similar tasks requiring ML expertise.

Bottom line: if you ever think to ask yourself "Can Claude Code get a job as [insert name of knowledge-heavy job] ?" the answer to that question is quite likely "yes". For the case of ML engineering specifically, I'm pretty sure that is the case.

13 views