In praise of juniors

Why juniors are high-ROI - and how to set them up for real impact
In praise of juniors

Everyone on LinkedIn is convinced a senior dev with a ChatGPT license is the future of software engineering. Meanwhile?
Brilliant juniors are sitting at home sending out hundreds of applications into the void.

This is wild to me.

We’re living through the best junior talent market in a decade - hungry, undervalued, and wildly overlooked. Yet most companies behave like the only valid engineer is someone who’s already done the job five times before.

I’ve joked before that experience is overrated. Sometimes you don’t need someone who’s “seen it all.” Sometimes you need someone excited enough to try something new, unburdened by scar tissue, precedent, or “this is how we do things here.”

Juniors bring that energy in spades.

They show up with new-puppy energy: eager, curious, optimistic. They want to learn, explore, and make you proud. Leave them alone too long and the sofa gets shredded - but train them well, and they’ll be incredible.

And right now, they’re an absolute bargain - not because they’re cheap, but because their value is wildly mispriced.


Where juniors shine

1. New tooling

Want to explore a new JS framework, test a bleeding-edge library, or try the latest AI-powered dev environment?

Great. They’ve already installed it, broken it, rebuilt it, and added it to their resume as “expert knowledge.”

(Oh Gen Z, never change.)

2. POCs

Got something experimental that might have zero future?
Give it to a junior. Timebox it. Make them present it. Accountability is where the growth happens.

And their naïveté is often a feature:
“Oh, I just went and asked Steve in Accounting for the dataset,”
delivered with a sincerity that exposes half your org’s blockers.

3. MVP implementations

In my world, data scientists hand over notebooks that are 60% prototype, 40% archaeological mystery. Great for a demo. Terrible for production.

You don’t need TDD, perfect OO design, or enterprise-level rigor before you even know if this thing matters.

You need something that:

  • runs most of the time
  • runs on someone else’s machine
  • is easy to debug when it doesn’t, and
  • gets the job done

Juniors excel here.

They’ll happily play business analyst for an afternoon, duct-tape the pieces together, and make it work. A senior might still be optimizing the Docker image in search of an SLA that only matters if you hit 1M users next month.

4. Internal tooling & automation

Every engineering org accumulates repeated tasks that someone really should standardize. Seniors are busy and context-loaded.

Juniors?
Give them a 1-day task that will save the team 5 minutes a day and watch them light up.

It’s the highest-leverage work they can do.

Just remember:

xkcd.com 1205: Is it worth the time matrix

xkcd.com/1205: Is it worth the time?

5. Rapid iterations

Because juniors don’t yet recognize your organization’s sacred cows, they’ll ask the questions that make your staff engineers visibly wince.

This is good.

Point them at something messy, praise the wins publicly, and watch the momentum build.

6. When in doubt, whiteboard

Impostor syndrome hits juniors hard.
If you assign work without a shared mental model, many will vanish into the documentation abyss for days. And reading the docs is not doing the thing.

A whiteboard session saves everyone a ton of pain.


A real project example

These patterns aren’t theoretical - I’ve seen them play out repeatedly on real teams.

Right now, I’m two years deep into a three-year roadmap for a national retailer. Think: hundreds of deployments, multiple use-cases in flight, eight devs and data scientists on my core team, four supporting teams - a proper initiative.

Data scientists deliver solid-but-messy notebooks.
We need them cleaned, simplified, and deployed across ~20 sites as a viability test.

A senior?
Still debating SLAs for a universe where we scale to 2,500 sites.

A junior?
Takes the notebook, extracts the actual code, hooks it up to the cluster, and gets it running in two weeks.

Perfect? No.
Good enough? Absolutely.

A viable test group beats a perfectly architected solution sitting untouched in your backlog.


What juniors need to thrive

Of course, potential only matters if you create the environment for it to flourish.

Purpose and mission

Gen Z is the most mission-driven cohort I’ve hired.
They don’t want to “do tasks.” They want to understand:

  • Who does this help?
  • Why does it matter?
  • What impact does it have?

Be honest, be direct, give them the bigger picture.

Social connection

CTOs are often shocked when I tell them juniors want to be in the office.

Not for the snacks.
For the community.

The office is their social life - gym buddies, lunch tables, board game nights, Friday beers. Build a healthy in-person culture, and juniors thrive.

Psychological safety

Not the caricatured “safe spaces” version - the “I can ask a question without looking stupid” version.

They have opinions. They see gaps. They notice cracks in your system.
But they won’t speak up if group meetings feel like gladiator arenas.

Lead with questions

The best coaching for juniors is Socratic:

  • “How would you break this down?”
  • “What tradeoffs do you see?”
  • “How will future-you hate yourself for this?”

Guide them.
They grow shockingly fast.

Frequent check-ins

Give them ownership and say:

“If someone asks me about this, I’m sending them to you.”

They’ll panic, then rise to it.

Check in lightly. Ask questions. Keep nudging.

Clear expectations

My PRs for new hires are brutal - I warn them as much.

Not because I enjoy it, but because every comment is a scar from a 2 AM bug I never want them to experience.

Once the bar is clear and the feedback is consistent, they stop guessing and start shipping.

To make that bar explicit - and remove as much ambiguity as possible - my onboarding flow for juniors looks like this:

  1. Give a bug ticket or two
  2. Assign something Important / Not Urgent
  3. Whiteboard the problem for 90 minutes
  4. Have them write up a plan in 24 hours
  5. Check-in, clarify, nudge
  6. Let them run for 2 days
  7. Rinse, repeat.

Founder’s flawed thinking

And yet, despite how powerful juniors can be, many founders hold onto flawed assumptions that prevent them from taking advantage of this talent pool.

“We’ll hire juniors instead of seniors.”

Speed creates technical debt. That’s fine when intentional.

But if you’re dealing with distributed systems, regulatory workloads, or 1-in-1000 transactional bugs?
Juniors aren’t the right tool.

Puppy energy is great.
A room full of puppies is chaos.

“Juniors are cheap labor.”

A junior might cost $60k.
A senior might cost $200k.

Is three juniors better than one senior?
Sometimes. Sometimes not.

If your only logic is cost, you eventually end up believing:

Tradeoffs matter.

“If I invest in them, they’ll leave.”

Some will.

But what if they don’t?

What if you hire mediocre people, don’t train them… and they never leave?

Turnover isn’t the enemy.
Stagnation is.


Paper tigers

There’s one more trap worth calling out - adjacent to junior hiring, but driven by the same misunderstanding of value.

“I need seniors.”
“I need veterans who know what they’re doing.”
And then, quietly:
“…but I don’t want to pay for it.”

And so begins the hunt for unicorns - senior vibes at junior rates.

These candidates exist.
But don’t want them.

You won’t get a senior.
You’ll get a paper tiger: someone who interviews like a staff engineer, quoting patterns, libraries, and buzzwords - but when it’s time to actually ship something, they fold.

This isn’t cost-saving.
It’s an anti-pattern.

If you need seniors, bite the bullet and pay.
If you want juniors, build around juniors.
Trying to buy senior outcomes at junior prices just buys you headaches and cleanup work.


The human element

Step back far enough, though, and all these hiring decisions share a common truth.

Juniors aren’t valuable just because they’re energetic or inexpensive.
They’re valuable because they bring momentum, curiosity, enthusiasm, and community energy into a team - things no amount of experience can manufacture.

They remind teams what excitement feels like.
They ask the questions nobody else thinks to ask.
They give organizations oxygen.

You don’t hire juniors for who they are. You hire them for who they’ll become.

And remember:
every one of us was junior once.

Do the thing
Older post

Do the thing

2025 review - The best of

What distinguishes you from other developers?

I've built data pipelines across 3 continents at petabyte scales, for over 15 years. But the data doesn't matter if we don't solve the human problems first - an AI solution that nobody uses is worthless.

Are the robots going to kill us all?

Not any time soon. At least not in the way that you've got imagined thanks to the Terminator movies. Sure somebody with a DARPA grant is always going to strap a knife/gun/flamethrower on the side of a robot - but just like in Dr.Who - right now, that robot will struggle to even get out of the room, let alone up some stairs.

But AI is going to steal my job, right?

A year ago, the whole world was convinced that AI was going to steal their job. Now, the reality is that most people are thinking 'I wish this POC at work would go a bit faster to scan these PDFs'.

When am I going to get my self-driving car?

Humans are complicated. If we invented driving today - there's NO WAY IN HELL we'd let humans do it. They get distracted. They text their friends. They drink. They make mistakes. But the reality is, all of our streets, cities (and even legal systems) have been built around these limitations. It would be surprisingly easy to build self-driving cars if there were no humans on the road. But today no one wants to take liability. If a self-driving company kills someone, who's responsible? The manufacturer? The insurance company? The software developer?