Junior devs have always been useless. You used to give them tasks that take them a week or two even though a senior engineer could do it in a couple hours, not because you wanted them to contribute, but because you wanted them to learn to contribute.
The same ethos makes sense with AI, it's just that every company is trying to avoid paying that training tax. Why turn a junior into a senior yourself if you can get the competition to pay for it instead.
It's interesting that the same dynamic is playing out on a much larger scale with children. A child is far more helpless than a junior engineer - at least a junior engineer can feed themselves, wipe their own butt, avoid destroying the room, and generally keep themselves alive. Everybody wants to offload the cost of raising children to parents, because the economic benefits aren't realized for 25+ years yet the costs are very substantial (frequently, at least one parent's full-time attention, costing them an income). Prospective parents are saying "fuck that shit" and simply choosing not to have children.
The long-term effects are going to be much like the effect of the software industry turning away from juniors: total collapse. When you have no workforce, you'll do no work - hell, there is just...nothing, nonexistence, no consumers either. But the fertility bust operates on a longer timescale (I think the software industry will start feeling the dearth of juniors in ~5 years, the economy as a whole won't feel the dearth of children for ~5), and it's far more fundamental. Rather than one industry disappearing, all industries will disappear, likely refactored into something that looks far different.
It also reminds me of those ecological predator/prey/locust models that I studied in calculus class, where population dynamics for many species have a tendency to overshoot the carrying capacity of the environment. Each individual in the population makes their own reproductive & survival decisions, but the sum total of them leads to population collapse and a near total extinction, followed by recovery once the survivors find resources abundant again.
>Prospective parents are saying "fuck that shit" and simply choosing not to have children.
Or in other words, they've been priced out of the market.
If there will be no sociofinancial niche for their children to inhabit this is in fact the rational course of action. See also: South Korean current birth rates.
Also sort of. Some form of social organization seems to be necessary for humans to function. But humans are also pretty good (well - relatively speaking, it usually seems to require a war or revolution) at changing that form of social organization as technology, population, and environmental conditions change.
I think this is a very likely outcome. We aren't going to get continued population growth next generation; a significant number of the people needed for it will never be born. This is going to have ripple effects across wide swaths of political and economic organization. But you'll have pockets of population that basically barricade themselves off from the wider economic world and insulate themselves from its collapse, and then the people within them, along with whatever form of social organization they happen to adopt.
The Birthrate dropping has multiple causes, none of them have any relation to the topic at hand
It's a negative (from the perspective of reproduction) confluence of both social and economic developments.
E.g. the death of the traditional gender roles has inevitably reduced birth rates - for multiple reasons to boot. Because on the one hand, the women has am easier time not to commit and just sleep around, consequently becoming uninteresting to men that would've preferred to make a family... But also because biologically, men are more attracted to demure women, which on average will ultimately remove even more attraction, consequently removing even more likelihood of families being built.
But that's once again only one factor, you got others too... Like stagnant wages, which force younger people too abstain from making a family simply because the financial situation doesn't allow for it. And if it happens anyway, it's more then likely to end in a broken family instead of something positive
Another factor is the availability of choice. Dating apps are available, statistically women all try to get into a relationship with the same 1% of men - who sleep around and cause toxicity all around. The remaining 99% become bitter and consequently... Are even less attractive to women.
Just to be clear, in case someones brain has completely rotten through and interprets any blame into my comment: neither sex is responsible for this. Our society just decided to move on from gender roles, for supposedly economic reasons.
The consequences are felt both for women and men, with both feeling less valued and miserable on average. Which understandably makes them less attractive to the other sex again.
Still not a full list of factors at play btw, there is also the builtup of micro plastics in the men's balls, harming sperm production along with normalization of pornography, reducing the sexual frustration of people and consequently making them less driven to find partners. There is also the influencer industry, purposefully encouraging para social relationships, satisfying the social urges of a lot of people, consequently reducing the likelihood of them seeking out friendships... Reducing the likelihood of meeting other people and thus reducing the likelihood of getting a natural relationship through that.
Third places have also mostly vanished, likely related to multiple of these effects to etc pp
> statistically women all try to get into a relationship with the same 1% of men - who sleep around and cause toxicity all around. The remaining 99% become bitter and consequently... Are even less attractive to women.
As a regular 30s dude, definitely not 1% by any measure, app dating had its rough spots but generally was a good time, I experienced no bitterness.
Instead I met a bunch of interesting people and found my partner. We now own a house and are talking about kids.
The real toxicity here is the idea that women at large are somehow responsible for anyone's lack of dating success.
For anyone reading this who might be dating and feel disheartened- the hard truth is that you have two options: you can either blame the group of people you're trying to attract for having faulty preferences, or you can reflect and work on yourself and your approach. Only one of these has any chance of helping you.
One thing I do agree with you on: bitterness is extremely unattractive.
For context, I don’t want this to sound bitter. The first time I was single as an adult was from 1996-2002 and dating apps weren’t a thing. The second time I was single was from 2006-2011 and I wasn’t really trying to date and spent most of the time getting my head back in the game and just hanging out with female friends until I started dating my now wife who I met at work. Even she had to make the first move.
That being said as five foot four guy, the chance of me having any success on a dating app at the time from everything I know would have been basically 0 no matter what. “Working on myself” would have done no good. I was objectively in great shape as a part time fitness instructor and I just run my first (and last) two half marathons before I met my wife.
Some guys just haven’t won the genetic lottery to succeed on dating apps. Again I’m not bitter as one of the relatively few straight male fitness instructors, it wasn’t hard to date during my first stint of singleness
FWIW, one of my (male) friends is about 5'2" and met his wife on OKCupid. She's about 4'10".
Dating is kinda like founding a startup or getting a job, in that you have to kiss a lot of frogs, but you only need to succeed once. The point's to eliminate all the unsuitable prospects in the pool and find the one that is a match for you.
> Dating is kinda like founding a startup or getting a job, in that you have to kiss a lot of frogs, but you only need to succeed once. The point's to eliminate all the unsuitable prospects in the pool and find the one that is a match for you.
That's true, but dating apps are still a pretty toxic technology. It's got kind of a McNamara fallacy baked into it, they encourage users to setup filters on easy-to-quantity aspects (height, age) in a fairly thoughtless way, and entourage superficial, consumeristic evaluations. Most people would probably benefit from IRL interactions, which present a more holistic picture.
Perhaps there's a constructive version of this because I agree with the sentiment but it's a little harsh - dude is obviously feeling very betrayed and left out of society and either falling down the incel tunnel or doing recruiting for it.
There's some fallacies here like "anyone not acting in stereotypical Protestant gender roles must therefore be recklessly promiscuous" and that if some people don't want to have kids with some women then therefore -nobody- will do it.
Good luck out there everybody - the world changes in fascinating ways and it can definitely run some folks over but try not to get jaded and fall down a despair spiral.
> There's some fallacies here like "anyone not acting in stereotypical Protestant gender roles must therefore be recklessly promiscuous"
That fallacy isn't in there.
Also, I would like to point out that almost all women have had more then 0 sexual partners before wedding. Hence your statement would actually be kinda correct of you remove the "recklessly". And that's definitely another contributer to declining birth rates/families - because neither of them will feel remotely as committed to each other then they would've otherwise.
None of these are singular causes. They're all contributing to the whole situation. Which is precisely why I never made any such fallacy in my earlier comment.
> Also, I would like to point out that almost all women have had more then 0 sexual partners before wedding. Hence your statement would actually be kinda correct of you remove the "recklessly".
Having premarital sex is not everyone's definition of "promiscuous".
I agree, which itself is also contributing to falling birth rates. I think everyone in this thread is imagining me as a bitter incel being outraged by not getting the attention I supposedly deserve, which couldn't be further from the truth.
I'm merely observing a lot of factors which in aggregate can unquestionably be seen as causing this.
The reality is that the traditional gender roles where very positive in the context of reproduction, which was literally my first sentence of my first comment.
It is not a judgement on wherever we should aim to revert to them, it's just factual.
Arguing against that is basically at a level of arguing that water isn't wet.
Now to link this back to the discussion at hand: a significant chunk of society would consider premarital sex with people whom they aren't planning to marry to be promiscuous. And those people are part of the population which wouldve become families in a different age.
> Also, I would like to point out that almost all women have had more then 0 sexual partners before wedding
By the 1700s the pregnant before marriage rate was roughly 30%. So about a third of all women in the 1700s had premarital sex that resulted in pregnancy. So the actual rate is of course even higher.
A lot of those marriages are a direct result of the pregnancy, too - one thing that did happen was the couple being pushed into marriage ASAP when the pregnancy was discovered.
They’re not completely wrong though. Data does show clearly that online dating has extremely lopsided behaviors. Women really do tend to message the top cohort of men by attractiveness much more so. Men have a more expected distribution. I think that causes a lot of men to really resent dating and women because they struggle and put in enormous effort and get nothing back. Online dating is a very toxic modern invention.
The answer is to remove the parents. Give birth and let the state raise the child. The parents continue to work and live childless without the costs and responsibilities. Society pays and gives this group an equal playing field.
Kinda like in Brave New World, or The Giver - or, for that matter, in hundreds of orphanages in real life?
This doesn't really work either. Having been loved by an attachment figure (usually a parent) seems to be essential to normal psychosocial development. Without it, kids can't really form bonds or groups. They never learn to trust, and without the ability to trust, they can't work in concert with other people. They end up violent and criminal.
If you tried to do this society-wide, society would collapse. Everybody would simply try to grab what they could and kill everybody else.
So Woman have to be pregnant for 9 months for only the state to go take the baby away.
Are you gonna suggest that State enforces procreation too?
This "answer" that you are saying is this close to being an Eugenics project. A govt. which has its officers arrest/detain babies because of their race and you are saying that these are the people that the babies should be left?
Also consider these people in your answer to be the slaves of the govt. because we live in a free world and yet propaganda can be so effective. I can't imagine what the propaganda can be if State raises the child.
Yes, Instead of trying to make the economy affordable so that childcare can be affordable, we go ahead and let the states raise our children.
Has even the notion of affordability become so foreign that we have forgotten it can exist?
I sincerely hope you were joking with this message and this wasn't the first thing which came into your mind.
> The same ethos makes sense with AI, it's just that every company is trying to avoid paying that training tax.
Last time when a junior dev was added to my team I had a similar thought. But then talking with management I was informed that things went beyond just training.
The company had a social responsibility pledge and understanding with the local educational institutions. They had to pledge to be part of the internship and hiring activities every year. The company could not chose to be fair weather friends and try to recruit people only when they saw fit.
The other aspect was cost. A team made of only senior engineers was costly.
The last aspect was leveling up. Unless the company has lots of levels the team might end up lots of engineers at the same level. And with the inverted funnel nature of promotions it meant some engineers might end up waiting years for the promotion.
So, it was better to have teams with some junior, intermediate and experienced engineers. That way costs and promotion flows were controlled.
Now with AI the impact might go beyond junior devs. I see even the intermediate devs being impacted. It is more likely that companies think they can replace say 1 junior + 1 intermediate with 1 junior dev with AI. Or something along those lines.
This kind of flippant approach is equally valid as "just use ai", "let other companies train the juniors", and "don't give promotions just hire new juniors + ai". All of these have obvious problems from their overly myopic viewpoint.
How is that flippant? I went from an “architect” over the entire cloud developmrnt strategy at a 60 person startup making $160K in 2020 to working at AWS ProServe making $220K (cash + signing bonus + RSUs) as an L5 (mid level - no longer there). Do you think I cared about my title?
I said just the opposite - hire fewer seniors + AI and don’t hird juniors.
I’m now a staff level employee again at a 3rd party consulting company working with small and medium businesses (my preference) after taking a detour in BigTech from architectural roles at smaller companies. My quarterly strategic goals were a combination of what the CxO’s/directors defined and what I defined was in the best interest of the company. None of those goals had anything to do with larger societal issues.
But different people have different ambitions. Some might not care for comp and want to become a people manager. Decent management is aware of this "different ambition" dynamic and try to mitigate this.
Also, this doesn't solve the problem of cost. Too many engineers without their comp based on promotions will still mean costly teams. That's why a balance of junior and senior is needed.
What’s the importance of then learning to contribute if they will probably jump ship anyway when they get good enough? Your HR department is not going to give them a market rate raise to keep them - see salary compression and inversion. A junior developer just isn’t worth the investment.
I have never once told my manager “it would be really nice to have a few junior developers. It would really help us get this project done on time”. They do “negative work”.
Yes not having juniors become seniors is an industry problem. But my goal is to reach my company’s quarterly and anual goals - not what’s going to happen 10 years from now.
> I have never once told my manager “it would be really nice to have a few junior developers. It would really help us get this project done on time”. They do “negative work”.
I have. A good junior can do in a week what a senior with domain knowledge can do in a half day, with only an hour of mentoring along the way. This isn’t a great exchange rate per dollar (juniors are cheaper than seniors, but not that much cheaper) — but seniors with domain knowledge are a finite resource, you can’t get more of them for love or money, while juniors are fresh-minted every semester. The cheapest way to shipping may not go through juniors, but the fastest way usually does; and that’s completely ignoring the HUGE side benefit of building seniors “the hard way,” which is still easier than hiring.
And as a senior+ with domain knowledge, with AI I can do the work of two juniors without the communication overhead + do all of the project management, dealing with stakeholders, etc.
But you don’t build seniors, you build capable mid level ticket takers who jump for more money at the first opportunity.
How is that true? As an architect when I was working at product companies, the director/CxO wasn’t going to call the junior developer to the carpet for not getting a task done or even the mid level ticket taker. Hell they don’t even know what the individual tasks are. I’m going to be the one ultimately responsible either way for project success.
Even when I was working at AWS as a mid level/L5 in the Professional Services division (lower title/lot more money), I was the one who was responsible for my “workstream” on larger projects. I couldn’t say “that’s not my fault. Blame the new L4 junior consultant who just got out of the internal boot camp for new grads”.
Now that I have moved back up to a more senior position in consulting, if a project I’m leading goes sideways, I can’t tell the customer that it’s not my fault, it’s the fault of the workstream leads and the workstream leads can’t tell me, it’s the fault of the more junior consultants who work under them. They will never talk to the client. The people under the workstream leads may not even speak English.
And that’s not meant to be an insult. The workstream leads have to he able to speak passable English and they can work with people under then who only speak Spanish.
The problem is that (hypothetical) you as a line level manager don’t control comp and raises. Even in BigTech your manager doesn’t control your promotion and everyone knows it’s better to “boomerang” because you will get paid less being promoted to an L5 (mid) from an L4 than someone hired as an L5.
Its not about treating them well. The environment and culture isnt the problem. Its that tech companies have decided that they dont like giving appropriate raises to current employees. They are somehow fine with paying the same or more money to bring in an equally qualified external hire. But not with retaining people. Idk why, maybe some stupid MBA rule, mayne theres some good reason behind it
> But my goal is to reach my company’s quarterly and anual goals - not what’s going to happen 10 years from now.
Your benefiting from the work of peopke who did worry about what will happen 10, or even 20 30 years down the line. People like you are why the rides gonna stop
It’s telling that OP worked at Amazon because this pretty much sums up the culture there - new grads churning through and burning out in two years while a few seniors stick around and perpetuate the cycle.
I was 46 when I was hired and it was my 8th job out of college. I was far from a naive college grad. I went in with a purpose - keep my head down for 4 years through my initial four year package, put it on my resume, build a network and leave for a smaller consulting shop.
In fact the only reason I got my job there was because a recruiter reached out to me about an SDE job on the retail side. There was no way in hell that I was going to sell my big house in the burbs of Atlanta (at the time), uproot my life after Covid and work for Amazon. I knew what I would be getting into.
She then told me about a “permanently remote”,”field by design” role at AWS ProServe. I was like sure why not?
The main problem with having only seniors is that seniors have many many blindspots. Just by the nature of being there a while, they've built up hundreds of automatic processes that allow them to ignore or work around bad things at the company. In terms of code, tech, relationships, product vision, etc. It's the same reason why telling engineers to QA their own shit is a recipe for disaster. You need fresh perspective.
Who would better be able to see those blind spots - a junior developer with no experience or a mid level or senior developer coming in with a fresh set of eyes?
Fresh eyes are always better equipped to ask “Why” to poke at (no longer necessary) Cheshire Fences. Their ignorance (by virtue of being new) gives them cover to question things. This doesn’t necessarily mean inexperienced people, but that does give even more cover to ask the very necessary “why” and get answers, and excuses their lack of familiarity to intuit the situation.
Junior people also tend to have the humility to know they’re inexperienced and lacking insight, so they tend to be more willing to “follow” the senior employees rather than attempt to leave their mark as a leader. “Too many cooks in the kitchen” and all that jazz.
A junior, they have no baggage. Most software is unbelievably bad - almost all those seniors are come from products and companies that are horribly mismanaged, just in different ways. Or, maybe, the same way.
Every developer from the beginning of time thinks that when they come into a new company that everyone who came before them were idiots. Eventually we mature beyond that.
I worked for two companies as a lead and the first thing I did to make things better is - nothing. I asked questions and understand the why.
But what company have you worked for that you only have to understand code? There is code, underlying architecture, dependencies between teams, database schemas and the politics?
It doesn’t make sense to hire juniors at all other than as a service to society. I haven’t hired a junior in 4 years. The one I hired 4 years ago was because not only did he do reasonably well on the interview but he literally begged me because he trained himself to do it while painting houses so I saw a lot of passion in him.
>What’s the importance of then learning to contribute if they will probably jump ship anyway when they get good enough? Your HR department is not going to give them a market rate raise to keep them - see salary compression and inversion.
Obviously that hasn't historically been true, else there wouldn't be any senior developers as companies would have wised up to that and nobody would hire them as juniors.
- Not everybody is a job hopper (even in Silicon Valley one sees that most junior FAANG devs stick around for a good while).
- The HR department is absolutely going to give junior developers that pass the cut after a year or so a market rate raise.
- In limited hiring periods, they'd be grateful to have the chance to stick around, while in bullish "boom" periods companies can afford to spend to keep people, expand and give them bigger roles, and so on. It's in the in-between that it becomes more problematic, but now we're in a "limited hiring" era.
>Yes not having juniors become seniors is an industry problem. But my goal is to reach my company’s quarterly and anual goals - not what’s going to happen 10 years from now.
That's how companies fail.
It's also not a good strategy at the personal level. If you command more devs, you get more leverage.
This is not true - the average tenure for a developer across the industry has been 3 years for well over a decade.
> The HR department is absolutely going to give junior developers that pass the cut after a year or so a market rate raise.
This is also not true from small companies to FAANG - see “salary compression and inversion”
> That's how companies fail.
The company failing in the long term is really not any current employees main concern unless you are a founder if the average tenure is 3-5 years. Even the stock market doesn’t care about the long term viability of a company.
BigTech for instance can afford dead weight. Amazon has an internship program and for those who come back or through their non traditional programs for their internal consulting division (AWS Professional Services) they have a 3 (6?) month training program.
In ProServe at least (former employee) even for their l5/L6 employees, they have the 3 month training program - “AWSome Builder” where you simulate a customer project and have to pass.
After leaving AWS and being hired as a staff consultant by a third party company, they put me on a plane two weeks in to meet with a customer. They don’t even hire less than senior+ people in the US.
If the median tenure is 3 years and the software business still is very profitable then people must be net useful within that 3 years. A lot of people also just don’t want to job hop much and honestly the interview culture keeps me from hopping more. I do still fall in the 3 years per hop but I’ve always had a good reason to- ie. layoffs, company going in a worse position than when I started, shit management at various levels, forever compounding responsibility…
>This is not true - the average tenure for a developer across the industry has been 3 years for well over a decade.
That counts temps, people who weren't a good fit and were let go early after hiring, mass layoffs, and mixes mixes startups and FAANG and consulting churn, none of which is the typical corporate IT worker scenario, and all of which bring the average down (but are not "hopping").
Corporate IT, government IT, smaller SMEs, and stable SaaS, have higher averages.
That counts people who weren't a good fit and were let go early after hiring, mass layoffs, and mixes mixes startups and FAANG and consulting churn, none of which is the typical corporate IT worker scenario, and all of which bring the average down (but are not "hopping").
Corporate IT, government IT, smaller SMEs, and stable SaaS, have higher averages.
Experience says most absolutely don't jump ship every 2-3 years in the kind of companies I mentioned. Now, if you think companies are playing a rotating musical chairs game and are majority new people every 5 years, ...
So exactly what is the point for a profit seeking company to train someone except thsr you expect them to bring you more business value than they cost during their tenure?
This is the difference between being an engineer and being a clock puncher. You don't care about the business, you don't care about the product, you don't care about society as a whole. So long as you get your paycheck and your annual pay bump, fuck absolutely everyone and everything else, right?
Don't worry, just leave all your problems for someone else to fix. I'm sure that won't have any lasting consequences at all.
I work for one reason and one reason alone - to trade 40 hours of labor for money to support my addiction to food and shelter. The company is not going to give me money for “caring about society”. They are going to give me money to meet my quarterly goals to help them meet their profit goals for the company and in a former life , to make them look good for the public market pre-IPO and at another company for an acquisition.
I give a company 40 hours a week and all of my 30 years of industry experience and they give me money (and in a former life RSUs)
Well I was 46 years old and married at the time (still married). It helped when I could tell my wife she could stop working and getting up early and I was working remotely. It made those late nights and early morning much more enjoyable.
“Whoever said money can’t solve your problems
Must not have had enough money to solve them”
(Partially joking, I make the same post BigTech as a “staff consultant” as an L5 I did mentor as an intern and when they first came back as an L4. Nothing eye popping. But decent)
Sweet summer child. I was once opinionated and driven as you are now. I remember when I got out of college, I also thought like that of the mediocre clock punchers.
Now at my 45 years, I couldn't care less for whatever grand objective the current company I work for has. I exchange my knowledge and time for hard cash, and let the owners , ceo and whatnot run with their grandiose vision.
Funny enough, the more I got into this mindset, I slept better, made more money, and got more autonomy.
Once directors and CxOs know that you are completely aligned with the business goals and ignore everything else that “doesn’t make the beer taste better”, they trust your judgement and basically leave you alone.
More money for me until I retire - well actually I’m past the point where I chase more money - and then after that - it’s not my monkey and not my circus.
Again HN bubble thinking. Most developers in the US are working at banks, airlines, insurance companies, etc in second tier cities - in the “enterprise” and are not making “$400K”. Most developers will never in their career see more than $175K inflation adjusted and I really haven’t seen comp on the top end increase in nominal terms in a decade [1] for enterprise devs.
That leads to my second point, in second tier cities, you see comp go from around $80K —> $115K -> $150K —> $175K, junior -> mid (pull well defined tickets off a board) -> Senior (leads larger initiatives) -> Senior+.
For instance look at what Delta airlines pays based on Atlanta.
> Junior devs have always been useless. You used to give them tasks that take them a week or two even though a senior engineer could do it in a couple hours, not because you wanted them to contribute, but because you wanted them to learn to contribute.
I don't know, I've known kids who can run circles around a lot of seniors, whether it's knowledge, coding chops or just intuition. The reason a newcomer takes a week to complete a task that requires two hours is because the senior has already learn all the ins and outs of the crappy software lifetime processes (usually dealing with half broken build / code review / ticket systems)
Strongly disagree with this. Bad junior devs might be useless, but I’ve seen good ones absolutely tear through features. Junior devs fresh out of school typically have tons of energy, haven’t been burned out, and are serious about wanting to get work done.
Some of you folks think way too highly of yourselves. Junior devs are awesome. You tell them what needs doing, if it's not well defined you have them write a document to figure it out, and then they churn away at it and will often surprise you with a brilliant solution.
Meanwhile, I've never once seen a coding agent give a brilliant solution or design to just about anything, and anything with the barest whiff of undefined-ness will simply zero in on your existing biases.
This whole thread reads like absolute insanity to me. I love getting new junior devs. They do great work.
Or do the same for IAC - same surface area - and use Terraform on one project, CloudFormation on another, and the CDK on a third and to generate code for you when you give them the correct architecture. It took me a day to do that before AI depending on the architectural complexity and I know AWS well (trust me on this). How long would it take me to delegate that to a junior dev? It took ChatGPT 2 minutes before I started using Claude just by my pasting a well labeled architecture diagram and explaining the goal.
It took me about 8 hours total to vibe code an internal web tool with a lot of features that if I had estimated before AI, I would have said a mid level developer would have taken two weeks at least. It wasn’t complex - just a CRUD app with Cognito authentication. How long would it have taken a junior developer?
Design a concurrency implementation? I sure hope they would spend more than 3 minutes on it! Concurrency lends itself to subtle bugs even when experts write it.
I'd gladly take a junior dev to do any of that work there, because they can think for themself and not hang onto any bias you unknowingly build into the prompt like it's a religion.
I can absolutely guarantee you that a junior dev or even a senior dev could do complicated IAC as fast as AI. It isn’t that knowing the architecture is the problem, it’s just very tedious. You have to look up all of the properties involved for each service and each property of each resource. I trust AI to know proper AWS architecture from being trained on the total corpus of the internet more than a junior dev.
The one reason I can't care about these kind of arguments is that you're describing the solution, not the problem. Based on my career (maybe shorter than yours), usually you put juniors on projects of low complexity and low impact while you play the mentor role. It's not about them being a productive worker or a menial helper, it's for them to train using practical projects. Your problems don't look like suitable projects unless you want them to train them in copy-pasta from the Internet.
Junior - everything is spelled out in excruciating detail, the what and the how. They are going to be slow, not know best practices, constantly bug other developers and you srs going to have to correct them a lot.
Mid level developer - little ambiguity on the business case or their role in it. They are really good coders in their domain. They have the experience to turn well defined business requirements into code. You don’t have to explain the “how” to them just the what. They should have the ability to break an assigned “epic” based on the business requirements to well defined stories and be a single responsible individual for that Epic maybe working with juniors depending on the deliverable or other mid level developers.
A senior developer works at a higher level of ambiguity and a larger scope, the business may know they want something. But neither the business or technical requirements are well defined. Think of a team lead.
Senior+ - more involved with strategy.
If I have to define everything in great detail anyway, why not just use AI? It can do it faster, cheaper, more correct and the iteration is faster. I would go as far as saying in my recent coding agent experience, a coding agent is realistically 100x faster than a junior developer since you have to give both of them well defined tasks.
My experience with Claude code and codex recently is that even the difference between a mid level developer and a coding agent is taste when it comes to user facing development, knowing funky action at a distance, and knowing the business, with a mid level developer you can assume shared context and history with an ability to learn.
So again, why do I need to hire a junior developer in the age of AI?
As an Entry Level Engineer, you’ll be expected to develop and maintain lower complexity components under the guidance and tutelage of more experienced team members.
That does not really contradict my point.
> If I have to define everything in great detail anyway, why not just use AI?
You don't have to define everything. And to do so is detrimental to their growth. If you're their mentor, you're supposed to give them problems, not recipes. And guidance may be as little as an hint or pointing them to some resource, not giving them the solution outright. The goal is not to get a problem solved (that's just a nice-to have), the goal is to nuture a future colleague.
Why should I hire a junior who doesn’t know the what or the how. Instead of hiring a mid level developer who could be an excellent developer who can turn business requirements into code and is more than likely better at certain things than I am since they live and breathe it everyday and can both do the work without supervision and can offer valuable advice and say something that might convince me that I didn’t think things clearly?
Reminding you that the difference above a mid level developer and a “senior”/“senior+” is scope and ambiguity not necessarily technical depth in one area.
What does a junior developer bring to the table that I should use my open req on?
1- You need a ton of internal knowledge so it doesn't really matter what they know past the basics.
2- Testing gets expensive with seniors
3- You can't get mid-senior level employees you like. I see very often companies having really high requirements for hiring leading to the only candidates passing being friends of employees. Juniors pass easier via the 'he's motivated to learn' path.
4- Juniors bring a motivation with them. Seniors tend to generally care less so a couple of energetic juniors can get them moving a bit quicker. Especially if you find a good one, since a senior really doesn't want to get outperformed by a fresh graduate. Also, since they usually suck at politics, it's easier to prod them about why things aren't working than the seniors who've played the blame game for 20 years and have perfected the art of dodging responsibility.
> Why should I hire a junior who doesn’t know the what or the how.
I'm not saying you should. It's the business model that will answer that question. But the traditional wisdom was that juniors are not costly and have few obligations tying them down. And juniors don't stay junior.
And some may know the what and the how, at least technically. What they may lack may be just how to develop their skills further to be useful in a professional settings. It's easy to learn programming languages, tools, libraries and frameworks when you have a lot of free time. And they're not asking to be your protégés, you're just training them to be useful for your team.
And it’s not a waste of their time to have to give detailed requirements and troubleshooting steps to a junior developer, constantly being interrupted, and then having to check their work thoroughly?
If you have to be that detailed anyway - you might as well use AI.
So exactly how am I going to convince my management to open a req for a junior developer who is not going to help us meet our quarterly goals and take time away from the other senior developers that will either have to work longer hours or do less work?
I’m not going to work as a charity and neither are any of my coworkers. We are all here to exchange labor for money.
We as a collective need to convince our management of this, but that needs to start with people getting their heads out of their asses and working together instead of this mercenary attitude you have
I don’t have to do anything except keep my head down, do my job and enjoy my well earned autonomy. I’m definitely not going to try to convince my skip, skip, skip manager to change their hiring policies. It’s not like my line level manager has any power over anything
Even when I was at a startup before 2020 and I did have the ear of the CTO and the founders I knew my ultimate mission was to do what was needed to get acquired and before that I knew exactly what my mission was when k was hired to lead the tech initiatives as we were acquiring companies “find efficiencies” and go public.
Or do you think I could have convince anyone of anything as an L5 at AWS in the middle between architect at a startup and my current company?
Your getting unnecessarily down voted by devs who want to feel morally superior, but don't have any concrete answer to the conundrum you've posed.
It's about money, and the actual solution would be to lower pay at senior level and give it to juniors, with some lock in agreed by the junior in exchange for this grace.
They're getting downvoted because they are a miserable misanthrope, and it is our responsible as people in a society to punish obviously antisocial behavior.
Yep. This is why many companies have a terminal level with “up or out “ rules. Before that level you are not fully independent and require too much supervision. No one wants a Jr engineer with 10 years of experience.
I see a lot of Sr engineers get very frustrated by how much time they have to spend helping Jr engineers. But, that’s the job, or at least a big part of it.
I burnt out helping a junior on my team for the past few months. It was just terribly obvious she was feeding my responses directly into a chatbot to fix instead of actually understanding the issue. I can’t really even blame her, there isn’t much incentive to actually learn
I've been in situations like that. For me, it's like interviewing, I just keep backing off, lowering the bar, making it easier and easier until they can get it, then start going back up again. I pretty quickly get a confident read on where they are.
If at that point it's clear (to me) the situation is not salvageable, it's a management issue, I've done my job.
Agreed. We are still in a capital crunch so overhiring is out of fashion. People don’t remember the early 90s or the dot.bust when the same things were said.
Kraft 1977 Programmers and Managers talked about this if I recall. Still the best alternate take on our industry I have ever read.
The most likely explanation for "AI layoffs" is not that AI has caused a dramatic jump in productivity - its more that managers are running out of creativity in relation to revenue-generating and cost-reducing projects and henceforth have no use for the surplus of labour. Its much easier to maximize the stock price in the short-term by riding the 'AI' wave.
There seems to be some nonsensical belief that there exists this endless stream of positive NPV projects to take. No... reality is not like that.
I’ve had some who are useful almost out of school. The amount of tickets is always growing and have someone pick up those “when things calm down I swear I’ll address this” tickets is always helpful. If they can’t get anything done by themselves in the codebase then it gets much harder. I do also think that some people have completely forgotten all the context they didn’t have when they started off xx years ago so mentoring is not always very good
I’ve gotten plenty of use out of junior devs. The critical bit is what makes anyone a useful worker. I’ve found anyone that’s both dedicated and meticulous is worth the investment.
Sure there’s a wide range of skills and you can’t just hand any task to anyone and expect it to work out but some fresh collage graduates are more capable than the average person with 5 years of professional experience. At the other end you need to focus on whatever they actually are capable of doing. 40+ hours a week can slowly expand even an extremely narrow skillet as long as they’re a hard worker.
You don’t want 3 Jr devs at the same time because of diminishing returns. Most projects have grunt work where attention to detail is important but experience doesn’t really help much. AI can quickly come up with alt text for images, but ensuring it’s actually useful for someone using a screen reader is a different story.
1 new Jr every 2 years works quite well for a team of 7+ developers.
And that junior dev will probably leave in 2 years because HR won’t allow you to give them a raise to match their market comp.
But with a team of 7, I can’t believe that giving them all a Claude Code subscription wouldn’t be much cheaper and much more productive than hiring a junior. A junior though with AI is more dangerous than a junior without.
Working on problems that are a poor fit for a mid level developer with AI assistance of which there are still plenty.
I find AI tools make everyone better at exactly the same kind of problems, which means a larger percentage of what’s left over is more cheaply done by Jr’s working without AI assistance.
A mid level developer is just a ticket taker. That’s their job. No matter what their title, if they are just pulling well defined tickets off the board, that’s what they are.
How exactly do some people leverage AI to rearrange the furniture in the conference room for an office party?
Physical labor may be a tiny fraction of what a team of developers do, but I’ve seen what amounts to several thousand dollars spent on that kind of silly task because teams leverage the tools they have.
You just replaced one task that an AI is useless for with a different task that an AI is useless for.
The point obviously still stands, and no I am not suggesting using Jr devs for physical labor alone is worth adding them to the team. Rather that “Work” includes a very wide variety of tasks that need to get done.
> I find AI tools make everyone better at exactly the same kind of problems
this part I find fascinating. most places I worked (30 years in, 10 as a contractor so quite a lot) the distinction between Jr, Mid and Sr falls exactly into the kind of works that they do. I, as a Senior, often work on hard shit, Jrs are not (yet) entrusted with those problems and work on entirely different set of problems. I cannot compute how AI makes everyone better at exactly the same kind of problems, problems I am solving today few people on my team are working on and then same goes down the "pyramid"
I’m not saying everyone on the team is doing the same kind of work, rather the kind of work that LLM’s make people better at become less relevant when a bunch of people have access to them.
Automation always runs into diminishing returns for similar reasons. If 99.99% of a workload is embarrassingly parallel, what remains becomes important once you can throw enough cores at the problem.
You’ll see a guy in a multi million dollar crane lifting multi ton objects and then people using ropes attached to that same load for final positioning etc. What you don’t see is people using ropes to lift bricks 20 stories by hand as the crane lifts multi ton pallets of bricks as automation is taking care of that kind of task.
> Junior devs have always been useless. You used to give them tasks [...] not because you wanted them to contribute, but because you wanted them to learn to contribute.
Junior devs are by your own explanation not useless. They are the most important human investment in your project.
I mean, if we’re doing this, let’s be honest and go as far as mid-level engineers whose work needs constant correction, as well as the many, many senior engineers out there who are senior only because they lucked out in getting the title during the artificial dev scarcity of the ZIRP eras.
I think the idea of 'junior' needs to be refined a bit. By the time I got my first job I've been coding for years, and have built rather substantial things.
In fact, in terms of pure coding ability, I was probably past the initial, fast part of my growth.
As should have others, which the university education system should have made sure.
The fact that some people come out of 4+ years of software engineering education utterly clueless means that they somehow managed to dodge having to build anything, I think means that they will never get good at any point in time, as they either were very talented at dodging having to build things, and I don't think that talent is going to abandon them, or they couldn't really grasp the basics in an environment designed for just that.
With that said, I think you can see for most juniors, what you can expect out of them in terms of pure coding ability - sure a lot of them have room to grow, but I've met so many great people who were very young, yet were useful from day one.
In fact, if you have the willingness to grind away at some problem, that puts you ahead of a significant amount of the pack. I have had the misfortune of working with people who lacked any demonstrable skill, and had coping strategies for having to deal with any sort of hardship. Getting useful work out of them was a challenge in of itself.
These people managed to get the years in to be considered senior, and are probably dispensing their wisdom 'mentoring' juniors somewhere else, and are no longer expected to actually contribute to meaningful issues.
I'm not sure if enthusiasts are the exception rather than the norm? I've noticed in the last few years, a lot of junior engineers do not have much active coding experience outside of their university education, they aren't the traditional "obsessed with computers and programming as kids".
There has been a much higher demand for software developers over the past 10-15 years than there are people who are obsessed with computers and programming
If you look at the general topic shift on HN over the years it's obvious most people are getting into tech because they want power and money, not for love of tech
> If you look at the general topic shift on HN over the years it's obvious most people are getting into tech because they want power and money, not for love of tech
I think that is a bit presumptuous, even if there is a hint of truth there. Just because a kid didn't grow up around computers and programming shouldn't exclude them from the tech path or mark them as imposters/pretenders.
That is more a sign of our messed up society. Yes, techies earn middle class salaries that are hard for everyone else to earn, but the issue was everyone else falling behind, not techies racing ahead (our salaries are extravagant becuase…we can buy a house like our very normal salary parents could).
I agree it definitely distorts the market because what else are kids to do?
> Why turn a junior into a senior yourself if you can get the competition to pay for it instead.
Reminds me a bit of the quote
The manager says "what if I train them and they leave?" And the response is "what if you don't and they stay". Leaving unskilled and underdeveloped people in you organization is a recipe for disaster.
> Junior devs have always been useless. You used to give them tasks that take them a week or two even though a senior engineer could do it in a couple hours
We havent dont it and I never seen something like that.
I mean, our juniors were useful. Sometimes they got easier tasks, sometimes they got tasks on non-core parts of the project where the stakes were lower. I think that when they are truly just useless, they are either on the wrong project or company do something wrong.
The same ethos makes sense with AI, it's just that every company is trying to avoid paying that training tax. Why turn a junior into a senior yourself if you can get the competition to pay for it instead.