Most engineers won’t like what’s coming

What will the future software engineer do?

Writing code always took a surprisingly small amount of time of a software engineer. Maybe as a junior you’d spent a majority of your time writing code, but for senior people, it was maybe 30% of the time actually typing into an editor. The rest of the time would be spent doing architecture work, code reviews, mentoring and some testing.

Maybe this mismatch between expectations and reality is why software engeering degress have some of the highest rates of attrition among technical degrees. When starting coding, you get dopamine hits from writing all those lines of code, but then you do it less and less.

With agentic AI for coding this number will go down even more. I’m already hearing of teams where 90% of code is written by AI. In 10 years, we will have less code written by humans, than we still have hand written assembly today.

Some of this time will be used for tasks that until now were too much effort so they were done rarely: cleanups, performance tests, increasing test coverage, better automation and so on. This is the fun part: you get to do more proper engineering.

But a lot of the time will go towards QA like activities. Previously, when writing code, you run it often and you get a lot of feedback on whether the code works or not. But now you just get a notification that the agent finished working and the code is ready to review. Reading carefully thousands of lines of codes is impossible, so most people skim it to find blatant mistakes. And then you do lots of testing. Does this program actually behave the way you thought it should?

And many times, you will realize you underspecified the prompt and you need to go back and clarify things. Other times, by testing it you realize you actually need to do something else. Sometimes the existing code can be modified, but sometimes this means throwing it away and starting over.

And this is a very different job than what people signed up for years ago. If you get your dopamine hit from solving problems, it’s still good. I’ve talked to engineering managers who tell me that they are finally back in “coding” because of agents and they are really enjoying it. But if the dopamine hit was from writing code and wrangling compiler errors, people will not like this.

Which are you — the problem-solving dopamine hit, or the writing-code dopamine hit? Does using agents increase your enjoyment of the job or is it a source of frustration?