Some teams use juniors to reduce the amount of time senior developers have to deal with toil, and I expect that as AI is good in dealing with toil, the need for hiring a bunch of people to deal with toil will decrease.
Other teams are using juniors to do interesting projects, especially interesting projects that are not that tied up in the main business logic - of which there are many - while having seniors do the organisational work of making all of these projects turn into a useful product. That requires a culture that empowers juniors to learn and be creative, but is pretty powerful and becomes even more powerful with AI, as people with less experience are better able to take up projects in new areas.
I might have misunderstood the idea but it seams to me you're saying AI can teach juniors how to code properly.
By "properly" I don't mean syntax, using libraries or peripheral stuff like bash scripts & SQL. I mean understanding abstraction levels, coupling/cohesion, testability, consistent DSL-s throughout the codebase - things LLMs get right only a fraction of the time (in my experience) and it takes a seasoned professional to spot the difference.
When an organisation wants to cut their investment in juniors (and expect the same returns), they've already taken the wrong path.
I approve of using genies as resources ... however, another resource is a human mentor.
I never had a mentor - at least not a real-time one - I had to read my way to understanding software.
It seems to me that human mentors are a sure-way for juniors to develop that understanding. Genies can help, but to me they seem an unreliable way to develop a small part of the same understanding mentors can inspire.
However, a junior+mentor+genie ... now *that* is an interesting combo.
Some teams use juniors to reduce the amount of time senior developers have to deal with toil, and I expect that as AI is good in dealing with toil, the need for hiring a bunch of people to deal with toil will decrease.
Other teams are using juniors to do interesting projects, especially interesting projects that are not that tied up in the main business logic - of which there are many - while having seniors do the organisational work of making all of these projects turn into a useful product. That requires a culture that empowers juniors to learn and be creative, but is pretty powerful and becomes even more powerful with AI, as people with less experience are better able to take up projects in new areas.
I might have misunderstood the idea but it seams to me you're saying AI can teach juniors how to code properly.
By "properly" I don't mean syntax, using libraries or peripheral stuff like bash scripts & SQL. I mean understanding abstraction levels, coupling/cohesion, testability, consistent DSL-s throughout the codebase - things LLMs get right only a fraction of the time (in my experience) and it takes a seasoned professional to spot the difference.
When an organisation wants to cut their investment in juniors (and expect the same returns), they've already taken the wrong path.
I expect the juniors to teach themselves about programming using the genie as one of their resources.
I approve of using genies as resources ... however, another resource is a human mentor.
I never had a mentor - at least not a real-time one - I had to read my way to understanding software.
It seems to me that human mentors are a sure-way for juniors to develop that understanding. Genies can help, but to me they seem an unreliable way to develop a small part of the same understanding mentors can inspire.
However, a junior+mentor+genie ... now *that* is an interesting combo.
I like the idea of managing for learning rather than production. But this sounds like it might be at odds with impact-focused performance management.
Would love to see more resources around managing for learning.