Pipeline to handle mid-level developers
Posted by Mr_Nice_@reddit | ExperiencedDevs | View on Reddit | 28 comments
How are you making use of mid-level and below developers these days?
The old way was to have senior developers write very detailed tickets that basically outline everything step by step, with QA teams doing several cycles to make sure the work matched the ticket. These days, that feels pointless. A good senior developer writing a ticket can just send it straight to AI, wait a bit, and check the output. A senior developer working with AI is simply better than mid or junior developers working on the same problem.
When AI started getting good, we tried to focus on hiring seniors only. The problem is that when a senior leaves, you really feel it. It takes a big hole out of your pipeline.
For context, we're a very small company, fewer than five people on the entire dev team.
We have one developer who has been with us for a while. They have solid framework knowledge but a poor overall understanding of how software is architected and, for want of a better term, just lack common sense. We were so worried about their pull requests on anything meaningful that we've since transitioned them purely to QA work, finding regressions that pull requests have caused. That's actually been useful and they're contributing to the team. But relying solely on senior developers for actual development isn't going to be sustainable.
I feel like we need to learn a new way to document software, write tickets, catch the sloppiness that developers introduce in PRs when they're using AI lazily, and train and evaluate new people. We have to be able to bring juniors onto the team and maintain some turnover without it massively affecting our consistency of output.
I imagine the problems we face are very different from those of large organizations. Is anyone out there working in a small team who has built a system where developers without deep knowledge can still get features shipped and be useful, without constant worry about what they're going to break? And where you're solely relying on AI to catch the nonsense that AI itself introduced?
notger@reddit
You invest into people and upskill the mid-level devs, like you always did. But now you have great tools to help them learn without hogging the time of senior devs.
carterdmorgan@reddit
Exactly. This isn’t a problem if you have talented engineers. Our juniors are crushing it because they’re able to use AI to unblock themselves, rather than relying on senior engineers.
ninetofivedev@reddit
Seriously had a "Senior" engineer going through their AI setup today who was asking a question about how to tell what configuration claude was using.
One of the other engineers replied "Ask Claude"...
They thought they were being snarky, but that was actually the best course of action the senior engineer could have taken.
Something I'll say that has always existed, even with "senior" engineers is learned helplessness.
Good engineers have always been ones that try and figure things out and know when to ask for help. People might argue "Yeah, but if they spend an hour trying to figure it out when I could have helped them figure it out in 2 minutes"... My response to that is more-so it's about learning how to solve problems. Because what ends up asking is this learned helplessness. Engineers learn that when they get stuck, they just ask the Lead for help, and they wait around "blocked" in the meantime.
notger@reddit
There are no shortcuts to learning and the currency of learning is feedback on mistakes.
If you do not invest the time and if you do not fail, you do not learn.
Learning is not about what you build while learning, it is about the human you shaped on the way getting there.
carterdmorgan@reddit
Earlier in my career, I definitely fell into the “learned helplessness” bucket. I’d run into some problem with an API or setting up my dev environment and think “Why spend the hour when a senior could unblock me in five minutes?” It wasn’t great. I wonder how I would have operated had I had LLMs? Hopefully I’d have used them to unblock myself and move faster, but maybe I would’ve just become a slop cannon.
DebateRealistic4840@reddit
I've found that giving mid-level devs ownership of smaller features or modules works well. It forces them to think about the whole picture, not just the implementation details. We pair them with a senior for design reviews and architecture discussions, but let them drive the implementation and testing. It's a good way to build confidence and responsibility without overwhelming them.
ProfessionalLimp3089@reddit
The comments are mostly right that AI helps mid-levels unblock themselves faster. But I think the harder problem you're describing is evaluation, not output. When a senior writes code you can read it and roughly gauge what they understand. When a mid-level uses AI to generate code they don't fully understand, the output can look clean and be completely wrong in ways that only show up under load or in weird edge cases. Your PR review process hasn't changed but the signal it gives you has. The old "does this person actually get what they're doing" check just got a lot harder to run.
Mibsty@reddit
Feels like more of a process/feedback loop issue than a people one tbh
What helped for us was tightening CI + making feedback super fast (tests, smaller PRs, catching stuff early). juniors + AI get wa yeasier to manage when the system flags issues quickly instead of relying on seniors
Also if ur builds/tests are slow, its worth fixing that too — we used Incredibuild and it helped speed things up a lot
AdUnlucky9870@reddit
The premise that "a senior + AI is just better than a mid-level" is true for isolated ticket completion but misses what mid-levels actually give you — organizational resilience and a pipeline to senior.
We run a small team too. What changed things for us was redefining what mid-level developers own. They're not ticket machines anymore. Their job is:
The developer you moved to QA — that's actually a great instinct. The role isn't "manual QA" though, it's "AI output validation." That's a legitimate and increasingly important job function.
Stop thinking of your team as a hierarchy of code producers. Think of it as a system where seniors architect and set constraints, mid-levels validate and integrate, and AI produces the first draft. The bottleneck was never typing speed — it was always judgment, and judgment only comes from letting people operate at the edge of their ability.
coinbase-discrd-rddt@reddit
Why are senior devs doing mid level scoped work and mid level devs doing new grad scoped work? You should fix that before doing anything else imo.
but_why_n0t@reddit
I wonder what the junior eng do at this company.
but_why_n0t@reddit
If your mid level eng require that much handholding they're junior engineers.
GroundbreakingMall54@reddit
this is the thing nobody wants to say out loud. ai doesnt replace juniors, it replaces the mentorship pipeline that made juniors into seniors. we're gonna have a wild gap in 5 years where everyone is either a principal eng or a vibe coder with no middle ground
ninetofivedev@reddit
I think people just have the wrong mental model of all of this.
We're not going to have some dichotomy. We're going to have people who know how to be productive with this technology and those who refused to learn how to.
Correct_Drive_2080@reddit
I know people who refused to get onboard with AI because "they would lose their edge" (not that they had much tbh) and now are so far behind still taking weeks to do things manageable in an afternoon.
When questioned about it, they're all like "if I deliver it with AI, the code will have poor quality"... Oh honey, it does anyway.
Sorry guys, had a shitty day.
Distinct_Bad_6276@reddit
Wait till you find out about the principal eng vibe coders
FeistiestMeat@reddit
They’re the really scary productive ones now.
shinto29@reddit
Only thing scary is the amount of slop they’re producing…
aMonkeyRidingABadger@reddit
Scary in that they can do a lot of damage.
Wide-Pop6050@reddit
"Outline step by step" seems a bit far. I think our tickets are pretty detailed in terms of having allllllll of the information you need in them, but its not step by step. I expect the engineers to update the ticket with more details and more detailed steps as they figure it out
ninetofivedev@reddit
I'm old and this was never the way.
Maybe I'm crazy, but often I just throw them into the deep end and check in on them for progress.
mikkolukas@reddit
Do pair programming and you'll have upgraded developers worth their salt in no time 🙄
Gold_Emotion_5064@reddit
Why are mid level engineers requiring detailed tickets? They should be efficient enough to handle ambiguity in the systems they already work on. Not have their hand held by a senior. Juniors need detailed tickets.
Careful_Ad_9077@reddit
One thing that had helped is to write the detailed stories ALONG the juniors, give them a chance to drive a bit, then fill in the holes.
coinbase-discrd-rddt@reddit
Why are senior devs doing mid level scoped work and mid level devs doing new grad scoped work? You should fix that before doing anything else imo.
ConspicuousPineapple@reddit
You do it like before. You have the senior write the detailed instructions, give that to a mid/junior and have them use AI on it and check the output. Then you also check the output yourself, and it'll be a bit faster.
Do that enough and before you know it, you'll have new seniors right there.
GoodishCoder@reddit
My process hasn't changed. I've never changed how stories are written for mids and juniors. I assign stories directly to them and pair up with them for a while until they're familiar enough with the code base, then I keep stepping back as much as I can depending on how they're progressing. Eventually they're self sufficient and don't need me beyond a few one off questions.
kevinossia@reddit
I hand tasks to my mid-level engineers that are aligned with the complexity they can handle, plus a little bit more, so that they’re forced to grow.
They can use AI as they like, to speed up their coding.
I don’t have time to do everyone else’s work. So even if (me + AI) were faster than a mid-level engineer, I’m too busy with my own stuff to spend time on that.
That’s sort of why you hire other engineers.