There is an interesting “new” problem in software development these days, and I suspect it’s keeping many a dev manager up at night. That problem is the tension between many devs and this new upending technology of LLMs. I’ve written a lot about the individual’s resistance to this new paradigm, but I’d like to talk through strategies of how companies should be handling it, and how I may be able to help out if that’s you.
Create More Stuff
The first thing that companies need to realize is that through this process they need to expand their software offerings. This is basically non-negotiable, because no matter what the ultimate goal of AI adoption is for your company, you absolutely cannot start it off with layoffs. That is going to kill morale to a point where it destroys individual experimentation and the “jumping point” of your average dev to someone who now thinks in the new paradigm. What you need is to start with saying (and also showing) that the point of these new tools is so we can get more done, not so that we can get the same amount done with less workers. This is a very important difference.
Time To Pay Up
The next thing is that you need to think about how you have to now transform your codebases and tools to support this new paradigm. This is also non-negotiable. You can try to get the latest model to work on some incomprehensible part of the codebase to fix a bug (and obviously these places are more likely to contain the bugs in your backlog) but what are the chances that it gets it right? Not only that, how do you know it got it right? These are the questions that you need to ask yourself, and fixing these kinds of issues starts with identifying technical debt and improving test suites.
Basically every team I’ve ever worked for had less-than-ideal codebase layout, test architecture, etc, and the issue is now these things aren’t just slowing down the humans who can over time learn to get around all the inefficiencies, now it’s slowing down AI agents that can’t learn to get around them, at least like a human can. So this means, if you really want to keep up with the rest of the world in terms of output, you’re going to have to apply resources to the issues of technical debt. The ROI on this will be so much higher now than it ever has been in the past, and so it should be an easy sell to management. But if a company is not willing to make that investment, well, I’d personally start looking for another job.
It Can Be Fun Too
Semi-related is that one of the easy wins in all of this is working on internal dev tools. This has always been my favorite thing to work on as a developer, and now it’s so fast that the ROI of time investment is huge, if it sufficiently helps other developers speed up as well. In my opinion all teams should have some percent of devs whose whole job is to think about tools they can create to make the lives of other developers better during work. For my personal job, I’ve created tools to make all of these new services we use talk to each other, convenience tools for devs to display all the information they need right in their editor, better debugging tools, etc. And it’s worked out great, everyone is enjoying the lift they’ve gotten from these tools and are working more efficiently than prior when we were just fighting the tools because “no one has time to create anything better”. I think this is one of the biggest lifts a team can get and also just improves team morale all around. Win win win.
In general, this dev/management relationship doesn’t have to be adversarial. In fact, at least for the foreseeable future, it should be a happy one, where deadlines become easier, devs get to work on fun new stuff with fun new tools, and in general teams are much more productive.
I will also be the first to admit I have no idea what will happen to this industry in the next, say, three years. I have some ideas, but it’s all speculative, and to be honest I’m not optimistic about the profession as a whole on a long enough timeline. But until then, there are opportunities to make everyone’s lives easier, so let’s start there, shall we?
If your team is struggling with any of this—whether it’s figuring out how to get developers on board, restructuring codebases to work better with AI agents, or just making sense of what’s actually worth investing in—I now offer consulting services on exactly these topics. Happy to chat.