How I work in ML in 2026
March 19, 2026
What skills do I need?
I know I should take the discussions on social media with a huge grain of salt. But they’re hard to miss and there’s probably some truth in there. The way we work is going to change a lot over the next few years. Parts of jobs, probably not entire jobs, will get automated. We already see it in software engineering. At my level of SWE, I’m barely writing any code myself anymore. This might be different for more security-sensitive parts of the architecture, or for people working on bigger, more stable codebases. But I’m pretty convinced most SWEs work the way I do now: find a bug or think of a feature, go to Claude Code planning mode, prompt back and forth a few times, then let it rip. Some testing. Done.
The loud version of this on social media gets exaggerated to “software engineering is dead, no need to hire SWEs, fire 50% of the workforce.” That’s wishful thinking from people selling a narrative. My job has changed, but I don’t have less work. My focus has shifted. I’m writing this mostly for myself, to figure out how I want to use my skills going forward and what new ones I should pick up.
What am I good at?
I consider myself an all-rounder. I did an apprenticeship as an electronics technician when I was 16: soldering, programming microprocessors, designing simple circuits, plus 10–14 weeks of mechanical shop work where we learned to drill, turn parts on a lathe, mill, and do a bit of CNC programming.
I’m not good at any of these anymore, but I’m sure I could pick them up again pretty quickly. More importantly, it was my first contact with the real business world, and it shaped how I approached university. To be frank, by the end of the apprenticeship I knew I didn’t want to stay in that profession at all, so I went back to do my high-school degree and then studied physics. Physics felt like a good bet because it teaches relevant math and a bit of programming, and I was vaguely considering finance later, where physicists are in demand.
While studying physics I started to enjoy the process of learning for its own sake, which is why I wanted to do a PhD. There’s a lot of discourse right now claiming PhDs are useless and you should just go to industry. I disagree, especially if you’re someone like me who just wants to keep learning. Being surrounded by brilliant people for more than five years was transformative. You can do that in industry too, but you’ll have much less freedom to chase rabbit holes; most of the time you’re on a tighter schedule. That has its own advantages, of course. If you have a clear career goal and a PhD is just a means to get there, you probably won’t enjoy the PhD itself. For context: I never planned to stay in academia. In Switzerland a PhD is a fairly common advanced degree.
After a one-year postdoc, I went to industry. First to a startup called Menten, where we tried to show how quantum computing could improve or accelerate protein design. The premise was cursed from the start: classical optimization on a quantum computer just doesn’t work. Menten realized this and pivoted away from quantum at the same time I did, and I had a gig lined up at Extropic where I started as a Staff Scientist. Extropic was the perfect blend of research and industry: figuring out how to build a new computing paradigm and designing algorithms for it. I left when they decided to relocate everyone to the US, which wasn’t possible for me at the time.
That brought me to Axiomatic as AI Lead, where I had a deep dive on agentic AI. The pace was insane. Late 2024 to December 2025 felt like a different decade every quarter. December 2025 in particular was when Claude Code became really good. So good that most people just started running it with --dangerously-skip-permissions. It changed the way I work.
I’m now at Noumenal and the work is extremely diverse. From general discussions about the direction of the company, to grant applications, to writing code for our robots, to testing them in the lab. We all do everything, and AI agents make that genuinely possible. I let an agent plan my meetings, give me briefs and reminders ahead of time, and help me track my own and others’ tasks. The main operational benefit is that it lowers the cost of switching tasks. I don’t yet let it do many things autonomously (like sending emails), but I use it as a second memory and as a virtual assistant that brings me up to speed before I context-switch into something.
On the development side, AI agents do a lot of the heavy lifting. Anyone who has worked with ROS knows how painful that software is, and an agent can just take care of wrapping our Python scripts into ROS nodes for me. I had never used ROS before this job, and I can take care of all of it myself. Same for quick prototypes of frontend interfaces, scripts to parse a new dataset, or one-off tools I need for an afternoon. All of that previously would have meant either a context-switch into an unfamiliar stack or asking someone else to do it.
Spare a thought for the juniors
I don’t envy the next generation. The uncertainty is big, and it’s genuinely hard to learn deep skills if you never get the chance to explore. Thinking about code, really thinking, including on an architectural level, is what teaches you to code. Watching an agent produce something that works isn’t the same thing.
It’s also why a lot of vibe-coded projects fail. People who don’t really know how software works make big architectural mistakes from the very beginning, and agents aren’t yet good enough to fix those ad hoc. Worse, a messy codebase actively makes the agent perform worse, which makes the codebase messier, which makes the agent worse. You end up in a hole you can’t get out of. Jank in, jank out.
I don’t have a clean answer to either of these. I think there will still be deeply skilled engineers in five years, and they’ll be more valuable, not less. But the path to becoming one looks much harder from where I’m standing.