There are two ways to think about AI in software development. The first is AI-Augmented Development - how we do the work. The second is AI-Enhanced Products - what we build. Let's focus on the first: the role of coding assistants and what they mean for how we organize teams and think about growth.
Coding assistants are a game changer. We're just starting to scratch the surface of what's possible, and the trajectory over the next two to three years is uncertain. But what is clear is that AI assistants are a force multiplier - and they demand a shift in how we think about our work, how it gets done, and the impact on hiring and roles.
Instead of slotting people into narrow buckets like data engineer, React front-end developer, QA tester, etc., we should be broadening roles and responsibilities. Technical professionals should function as liaisons between the business and the technology stacks. Because technical workers can now accomplish so much more, so much faster, they work best as conduits - bridging the gap between the needs of the business and the technical execution through a continuous cycle of product release, client feedback, and improvement. As coding friction decreases, iteration cycles tighten dramatically.
Using a coding assistant is like pair programming with an agent that writes code. The output is still too granular for a non-technical person to direct - at least for now. The human developer choreographs the work while the agent composes it. Code is checked, reviewed, integrated, and the loops are getting much shorter. The interplay is two-way: the agent codes a version, the human developer tweaks or retrofits it, and often sends it back to the agent to continue the development process. Tasks that used to take a couple of hours can now be completed in just 20 to 30 minutes.
This works best with seasoned, experienced developers who understand architecture, software engineering principles, and the tech stack deeply. That expertise makes them far better at choreographing the agent's work. The real value isn't in typing code faster; it's in directing the right work, catching errors early, and maintaining quality at speed.
I'm drawing the conclusion that a developer in the LLM era functions more like a conductor than a traditional technical resource. At most large organizations, work is organized like an assembly line where each person specialized. This allowed the product to move through the line more efficiently - and it made sense on a team of 10–15 IT knowledge workers. But I no longer think this is how things work among smaller teams of senior engineers armed with AI agents. Specialization is just a prompt away; breadth and experience are now much more important factors in building an efficient, innovative, and productive technical team.
This does put an onus on the technical worker. While the tedium of coding is mitigated, the expectations are greater. Developers need to understand the business. They need to be solid communicators and team players, capable of working in and understanding multiple domains: DevOps, client development, cloud infrastructure, data, security, and more. The idea I have - and we've both talked about it - is a small team of experienced, highly productive developers (5x–10x performers) driving product that is aligned to a business unit
The thread explores how AI coding assistants reshape software development roles and team organization. The original post argues for broader, conductor-like roles over narrow specialization, requiring experienced developers who bridge business and technology. Discussion has identified two key shifts: the reversal of the hyperspecialization trend (making deep generalists valuable again) and an emerging concern about junior developer pipeline - the grinding, error-driven apprenticeship that historically built senior expertise may disappear, creating a bifurcated market of AI-era-trained developers who can execute but lack first-principles reasoning compared to those trained traditionally.