Comment by mjr00
11 hours ago
In my experience, tech employment is incredibly bimodal right now. Top candidates are commanding higher salaries than ever, but an "average" developer is going to have an extremely hard time finding a position.
Contrary to what many say, I don't think it's simple as seniors are getting hired and juniors aren't. Juniors are still getting hired because they're still way cheaper and they're just as capable as using AI as anyone. The people getting pushed out are the intermediates and seniors who aren't high performers.
I generally tend to interview every year to see what's out there in the world (sometimes I find something worth switching for, other times not). I'm not even looking very hard but have had 4 interviews in the last month.
Personally I think it's a bit more nuanced than senior vs junior (though it is very hard for juniors right now). What I've seen a lot of hunger for is people with a track record of getting their hands dirty and getting things solved. I'm very much a "builder" type dev that has more fun going from 0-v1 than maintaining and expanding scalable, large systems.
From the early start of the last tech boom through the post-pandemic hiring craze I increasingly saw demand for people who where in the latter category and fit nicely in a box. The ability to "do what you must to get this shipped" was less in demand. People cared much more about leetcode performance than an impressive portfolio.
Now reminds me a lot of 2008 in terms of the job market and what companies are looking for. 2008-2012 a strong portfolio of projects was the signal most people looked for. Back then being an OSS dev was a big plus (I found it not infrequently to be a liability in the last decade, better to study leetcode than actually build something).
Honestly, a lot of senior devs lose this ability over time. They get comfortable with the idea that as a very senior hire you don't have to do all that annoying stuff anymore. But the teams I see hiring are really focused on staying lean and getting engineers how are comfortable wearing multiple hats and working hard to get things shipped.
> I'm very much a "builder" type dev that has more fun going from 0-v1 than maintaining and expanding scalable, large systems.
Maintaining and expanding is more challenging, which is why I’ve grown to prefer that. Greenfield and then leaving is too easy, you don’t learn the actually valuable lessons. As experience shows that projects won’t stay in the nice greenfield world, building them can feel like doing illusory work — you know the real challenges are yet to come.
Not sure what type of "greenfield" startup experience you've had, but most of the work I'm talking about involves solving problems that most people simply don't have the combined skill set to solve. Typically problems that involve a substantial amount of quantitative skills combined with the ability to bring those solutions to prod.
Nearly all of the teams I've joined had problems they didn't know how to solve and often had no previously established solution. My last gig involved exploring some niche research problems in LLM space and leveraging the results to get our first round of funding closed, this involved learning new code bases, understanding the research papers, and communicating the findings publicly in an engaging way (all to typical startup style deadlines).
I agree with your remarks around "greenfield" if it just involves setting up a CRUD webapp, but there is a wide space of genuinely tricky problems to solve out there. I recall a maintainer style coworker of mine, who describe himself similar to what you are describing, telling me he was terrified of the type of work I had to do because when you started you didn't even know if there was a solution.
I have equal respect for people such as myself and for people that you describe, but I wouldn't say it is more challenging, just a different kind of challenge. And I do find the claim "you don't learn the actually valuable lessons" to be wildly against my experience. I would say most of my deep mathematical knowledge comes from having to really learn it to solve these problems, and more often than not I've had to pick up on an adjacent, but entirely different field to get things done.
4 replies →
Yup. You learn the most valuable information from watching how things break and then fixing them.
It's kind of like when the FAA does crash investigation -- a stunning amount of engineering and process insights have been generated by such work to the benefit of all of us.
20 replies →
It is more challenging, but I feel like it also has fewer people looking for that. That whole "move fast and break things" phrase messed with too many people's heads. I don't think people appreciate this segment of a product's life cycle as much as they should. They're always looking for the quick solutions.
Everyone can do 0 to 1. Because delivery drives dopamine. The it is the boring thing, but there comes experience to find interest in that part
2 replies →
> Greenfield and then leaving is too easy, you don’t learn the actually valuable lessons.
You learn a ton of valuable lessons going from 0 to v1. And a ton of value is created. I guess I'm unclear how you're defining "actually valuable" here.
4 replies →
Taking this to the extreme, I think most lessons represent sunset or dead projects. There's no sweet illusions anymore. No assumptions. No ego. No account for infinite flexibility. No shine. No excitement of a new thing. No holy wars. No astronaut architects. Only you, the ruins and the truth.
Soooo agree. I've had to clean up the messes of people that did the 0-1 in my field and going from 1-unconditionally stable was a lot more work than the 0-1 part.
1 reply →
This is unironically my favorite kind of HN comment: to say something incredibly rude and/or condescending but wrap it in the right kind of thoughtful language to qualify as HN nice
The original punchline ("you don’t learn the actually valuable lessons.") was just a bit too sharp, so you even edited in a psuedo-clarification which actually just repeats that punchline but in a softer way, masterful!
17 replies →
> I'm not even looking very hard but have had 4 interviews in the last month.
How many offers did you receive? Companies have also adopted your strategy: interviewing candidates "to see what's out there" - there's a job I interviewed for that's still open after 10 months.
> Companies have also adopted your strategy: interviewing candidates "to see what's out there" - there's a job I've interviewed for that's still open after 10 months
When I was doing a lot of hiring we wouldn't take the job posting down until we were done hiring people with that title.
It made a couple people furious because they assumed we were going to take the job posting down when we hired someone and then re-post a new listing for the next person.
One guy was even stalking LinkedIn to try to identify who was hired, without realizing that many engineers don't update their LinkedIn. Got some angry e-mails. There are some scary applicants out there.
Some times a specific job opening needs to stay open for a long time to hire the right person, though. I can recall some specific job listings we had open for years because none of the people we interviewed really had the specific experience we needed (though many falsely claimed it in their applications, right until we began asking questions)
38 replies →
What a time to be alive: Companies post roles that don't exist to interview candidates who don't plan to switch.
1 reply →
> How many offers did you receive? Companies have also adopted your strategy: interviewing candidates "to see what's out there" - there's a job I interviewed for that's still open after 10 months.
On the hiring side, at least in tech: interviewing really sucks. It's a big time investment from multiple people (HR, technical interviewers, managers, etc).
I'm not saying it's impossible that companies are interviewing for fun, but it seems really unlikely to me anyone would want to do interviews without seriously intending to hire someone.
2 replies →
Be careful to make judgement calls like this.
I've been running the same job ad for 2 years now, as a recruiter for a big Canadian bank. I've been laughed at for having ridiculously unrealistic standards. I've been accused of running ghost ads.
I'm in the process of hiring the 13th person using this same job ad for new and existing teams that need a very particular type of engineer.
I have to agree, getting tech interviews isn't a great gauge of the job market.
I recently did an interview and a complaint I hear from the interviewer and our own company, people (your competition) reading from AI output.
As a candidate I don't mind doing a few highly speculative interviews. After not interviewing for a while it is good practice.
Seeing a lot of the same. Never studied leetcode and didn't work at leetcode companies. I could do them, I passed AWS and Microsoft cloud at L5 levels with no prep, but never was my strong suit. But I ship, and I can play politics very well. Especially in crusty organizations. Lots of callbacks, very hot market.
My friends who are "book smart" and leetcode geniuses are struggling. They're my friends, but they come off a bit "off" at first glance, the stereotypical nerd vibe. They're all really struggling since they can't sell themselves properly and lack the interpersonal skills.
> I'm very much a "builder" type dev that has more fun going from 0-v1 than maintaining and expanding scalable, large systems.
Most prefer a greenfield project.
I don't know, the majority of my colleagues have no idea how to do anything in a greenfield environment. They need guardrails.
My best projects have all been greenfield. The worst were a few years old but required tons of maintenance unrelated to the core product. Example: one place built their own ORM. Twice.
Shipping is only hard when you have to deal with all the loose ends "builders" leave lying around.
There is famous term for those: Tactical Tornados
https://news.ycombinator.com/item?id=33394287
1 reply →
To provide a different framing, I’m more of a builder and I’m happy to maintain too. What I’m not happy with, and have left jobs over, is being put into a box or becoming overly siloed.
Large companies tend to over specialize and that’s where I see the “I’m a builder” types fall apart. That takes away agency, lowers skills, and removes variety from work. That’s when it stops being fun to me.
I would hope most people with the builder architype are otherwise fine to keep building and maintaining.
Shippers gonna ship.
I, too, am able to get interviews. The last time I made a serious search was in 2022-23, and companies were clearly eager to hire at competitive rates. This past fall, they were not. My salary requirements stopped at least two interview processes when the question was raised. In other cases it was not clear that the company was serious about moving forward with hiring for the position at all. A three month search ultimately came up dry, which is fine because I'm currently employed, but I do not think the hiring landscape is promising at all right now.
>I generally tend to interview every year to see what's out there in the world (sometimes I find something worth switching for, other times not). I'm not even looking very hard but have had 4 interviews in the last month.
The Pick-Up Artist's Guide to Tech Interviewing, you should be writing.
The first 100 subscribers get a 50% off discount the month of March, you should be announcing on LinkedIn and Tiktok, and making passive income.
The rest of us experienced people with proven track records have to learn algorithms on the weekends despite having white hair.
When I was in corporate I'd talk about cover your ass mode and get'er done mode. And while realistically I know both are necessary, I was always annoyed at the need to have a cya mode. I get a bit of schadenfreude from the thougt of the market being harder for the people who don't seem to have a get'er done mode, and a bit of his at the thought it might be because there's less concern over whom to bother if something needs to be fixed later.
> Honestly, a lot of senior devs lose this ability over time. They get comfortable with the idea that as a very senior hire you don't have to do all that annoying stuff anymore.
A few years ago, when interest rates were 0% and companies were hiring at an unsustainable rate, I got a lot of criticism for cautioning engineers against non-coding roles. I talked to a lot of people who dreamed of moving into pure architect roles where they advised teams of more junior engineers about what to build, but didn't get involved with building or operating anything.
I haven't kept up with everyone but a lot of the people I know who went that route are struggling now. The work is good until a company decides to operate with leaner teams and keeps the people committing code. The real difficulties start when they have to interview at other companies after not writing much code for 3 years. I'm in a big Slack for career development where it's common for "Architect" and "Principal Engineer" titled people to be venting about how they can't get past the first round of interviews (before coding challenges!) because they're trying to sell themselves as architects without realizing that companies want hands-on builders now.
> The work is good until a company decides to operate with leaner teams and keeps the people committing code.
I'm no AI booster but I think this is exact scenario where AI-driven development is going to allow those non-coding developers to shine. They still remember how code works (and have probably still done PR review from time to time) so they're well placed to write planning documents for an AI agent and verify its output.
Yes when I saw this happen during the post COVID boom I was honestly shocked. Engineers I knew who were fairly senior thought that they could build the rest of their career in just boxes and arrows on a board. The whole thing just made me really dislike other Principal engineers.
I left to a startup where I write code and design architecture. I even had a former coworker tell me "wow you're willing to do stuff like that at this point in your career?"
If Jeff Dean still codes, so can I.
> I'm not even looking very hard but have had 4 interviews in the last month.
Did you get any offers yet? It seems the issue is not lack of interviews but lack of offers. Many companies are looking for a goldilocks candidate and are happy to pass on anything that doesn't match their ideal candidate
I got laid off at the end of last year and am currently interviewing for Staff+ DevOps/Platform Engineer type roles. I definitely feel this. I've had a decent flow of recruiter inquiries and had multiple companies go 2-3 rounds of interviews deep with me (not counting the initial "do you have a pulse" recruiter screen calls). Then the communication always seems to dry up and I'm left to wonder what box I failed to check on their hiring rubric.
Semi related, holy hell do companies have a lot of interview rounds these days. It seems pretty standard to spread 5-6 Teams calls over the course of a month. I get that these are high salary, high impact roles and you want to get it right. But this feels really excessive. And I'm not talking about FAANG tech giants here. It's everyone, from startups to random midsize insurance companies.
1 reply →
And a lot of it is networks as opposed to applying to a job position. My last position--that I had for many years--was reaching out to someone knew for not even a posted position and having one created for me.
Interviews are easy to get, going through 4-8 rounds and making it through is not.
interviews aren't the problem, you know full well that "getting a call back" means nothing in this space, but the insane and unresolved technical round process
and sure, lots of people can't get a call back too, but starting the process means nothing
should say how many offers did you get, that's a better way to normalize it
In your experience, what’s the best way to increase signal? I feel as though a lot of devs struggle with the initial process of getting past screening, drawing attention to projects, etc.
Not the parent commenter but I've performed a lot of resume reviews for people and also done a lot of hiring.
Most resumes are not very good. Beyond the obvious problems like typos, there is a lot of bad advice on the internet that turns resumes into useless noise. Screen a lot of resumes and you'll get tired of seeing "Boosted revenue by 23% by decreasing deploy times by 64%." This communicates nothing useful and we all know that revenue going up 23% YoY was not attributable to this single programmer doing anything at all.
Often I'll get candidates into interviews and they light up telling me about impressive things they did at a past job with enough detail to convince me they know the subject, but their resumes are garbage because they've followed too many influencers.
So try to work on your resume first. Try different resumes. Rewrite it and see what makes interviewers take notice and what they ignore. The most common mistake is to write a resume once and then spam it to 100 jobs. I know it's not fun to change the resume or invest time into applying for a job that may not respond, but you know what else isn't fun? Applying to 100 jobs and not getting any responses because every hiring manager has 20 tailored resumes in their inbox ahead of yours.
Having a simple but clear LinkedIn profile helps. Many scoff at this, but it works. You don't have to read LinkedIn's social media feed or do anything with the site. Just set it up and leave it for them to find.
GitHub portfolios and other things have low relative value at most companies. There are some exceptions where someone will look at it and it might tip the balance in your favor, but it's a small optimization. You need to be perfect the resume first, get a LinkedIn that looks decent second, and only then think about the ancillary things.
7 replies →
I don’t see this reality in the style of interview being performed at all.
Everyone has seemingly adopted the FAANG playbook for interviewing that doesn’t really select for people who like getting their hands dirty and building. These kinds of interviews are compliance interviews: they’re for people who will put in the work to just pass the test.
There are so many interviews I’ve been in where if I don’t write the perfect solution on the first try, I’ll get failed on the interview. More than ever, I’m seeing interviewers interrupt me during systems or coding interviews before I have a chance to dig in. I’ve always seen a little bit of this, but it seems like the bar is tightening, not on skill, but on your ability to regurgitate the exact solution the interviewer has in mind.
In the past I’ve always cold applied places and only occasionally leaned on relationships. Now I’m only doing the latter. Interviewees are asked to risk asymmetrically compared to employers.
Interviews are easy, offers are hard.
>I generally tend to interview every year to see what's out there in the world (sometimes I find something worth switching for, other times not). I'm not even looking very hard but have had 4 interviews in the last month.
You've been interviewing forever. You're the well practiced pickup artist of job searching. Of course you'll be getting the call backs over the other 1000 applicants who don't have the same experience level applying. You "just know" how to read between the lines and tailor a resume, whip up a cover letter, etc whereas they're making mistakes.
And even then, getting interviews is one thing, but getting offers is something completely different.
And there's also the advantage of having a current job, instead of an increasingly larger jobless gap that not only decreases your chances over time, but also contributes to the cycle of "less chance -> wider gap -> increased anxiety -> less chance".
Fumble the first few months due to a combination of a lack of interviewing practice, and of job postings that never intended to hire anyway or that are looking for someone that checks literally all their shopping list of boxes, all while still dragging you for a 4-8 journey, and suddenly your position is not that good anymore.
Hopefully it’s not too much like 2008 and we end up with another huge surge in unpaid internships
[dead]
Agreed on the bimodal, but I don't think this is junior vs. senior - I think it's just competence being rooted out.
The majority of engineers, in my hiring experience, failed very simple tests pre-AI. In a world where anyone can code, they're no better than previously non-technical people. The CS degree is no longer protection.
The gap between average and the best engineers now, though, is even higher. The best engineers can visualize the whole architecture in their head, and describe exactly what they want to an AI - their productivity is multiplied, and they rarely get slowed down.
While this could be done by junior or senior, I think junior usually has the slight advantage in being more AI-native and knowing how to effectively prompt and work with AI, though not always.
I see it the opposite way actually with respect to the CS degree. If you earned your CS degree (or any degree) before 2022 or so, the value of that degree is going to grow and grow and grow until the last few people who had to learn before AI are dying out like the last COBOL developers
AI has fundamentally broken the education system in a way that will take decades for it to fully recover. Even if we figure out how to operate with AI properly in an educational setting in such a way that learners actually still learn, the damage from years of unqualified people earning degrees and then entering academia is going to reverberate through the next 50 years as those folks go on to teach...
What I think is disappearing is not so much the quality of academic education, but the baptism by firehose that entry level CS positions used to offer - where you had no choice but learn how things actually work while having a safe space to fail during a period in your career when productivity expectations of you were minimal to none.
That time when you got to internalise through first hand experience what good & bad look like is when you built the skill/intuition that now differentiates competent LLM wielding devs from the vibers. The problem is that expectations of juniors are inevitably rising, and they don't have the experience or confidence (or motivation) to push back on the 'why don't you just AI' management narrative, so are by default turning to rolling the dice to meet those expectations. This is how we end up with a generation of devs that truly don't understand the technology they're deploying and imho this is the boringdystopia / skynet future that we all need to defend against.
I know it's probably been said a million times, but this kinda feels like global warming, in that it's a problem that we fundamentally will never be able to fix if we just continue to chase short term profit & infinite growth.
2 replies →
> If you earned your CS degree (or any degree) before 2022 or so, the value of that degree is going to grow and grow and grow
In my experience, target schools are the only universities now that can make their assignments too hard for AI.
When my university tried that, the assignments were too hard for students. So they gave up.
3 replies →
That’s an insight that a project I’m working on has built upon: https://unratified.org/connection/ai/higher-order-effects/#1...
Education and training and entry level work build judgement.
That's not something enthusiasts here and elsewhere want to hear, that's pretty obvious also in this discussion. People seems extremely polarized these days.
AI is either the next wheel or abysmal doom for future generations. I see both and neither at the same time.
In corporate environment where navigating processes, politics and other non-dev tasks takes significantly longer than actual coding, AI is just a bit better google search. And trust me, all these non-dev parts are still growing and growing fast. Its useful, but not elevating people beyond their true levels in any significant way (I guess we can agree ie nr of lines produced per day ain't a good idea, rather some Dilbert-esque comic for Friday afternoon).
We're now reaching the point where people have gone their whole college education on AI, and I've noticed a huge rise in the number of engineers that struggle to write basic stuff by hand. I had someone tell me they forgot how to append to a list in their chosen language, and couldn't define a simple tree data structure with correct syntax. This has made me very cautious about maintaining my fluency in programming, and I'll usually turn off AI tools for a good chunk of the day just to make sure I don't get too rusty.
1 reply →
"Those who can't, do..."
> The best engineers can visualize the whole architecture in their head, and describe exactly what they want to an AI
I think this must be part of it. I see so many posts about people burning a thousand dollars in AI credits building a small app, and I have no idea why. I use the $20 Claude plan and I rarely run out of usage, and I make all kinds of things. I just describe what I want, do a few back-and-forths of writing out the architecture, and Claude does it.
I think the folks burning thousands of dollars of credits are unable to describe what they want.
> think the folks burning thousands of dollars of credits are unable to describe what they want.
Basically, yes. I bought 'business tier' and I know about webdev but I'm somewhere between intern and junior, so I do a lot of discussing. One session is "I want [functionality and constraints], ask me relevant major design questions" then implementation, then me investigating and asking for fixes.
my related question whenever i hear a story like that: are they just filthy rich or have any plan to make that money back?
> While this could be done by junior or senior, I think junior usually has the slight advantage in being more AI-native and knowing how to effectively prompt and work with AI, though not always.
But juniors don't (usually) have the knowledge to assess if what the AI has produced is ok or not. I agree that anybody (junior or senior) can produce something with AI, the key question is whether the same person has the skills to asses (e.g., to ask the right questions) that the produced output is what's needed. In my experience, junior + AI is just a waste of money (tokens) and a nightmare to take accountability for.
I don't see the value of a junior instructing an AI, because I as a senior can also instruct an AI.
I perceive the AI itself as a very fast junior that I pair program with. So you basically need the seniority to be able to work with a "junior ai".
The bar for human juniors is now way higher than it used to be.
2 replies →
I was skeptical but I'm really starting to see the productivity benefits now.
I very much follow the pattern of having the whole architecture in my head and describe it to the AI which generates the appropriate code. So now the bottlenecks are all process related: availability of people to review my PRs, security sign offs on new development, waiting on CI builds and deployments, stakeholder validation, etc. etc.
> The majority of engineers, in my hiring experience, failed very simple tests pre-AI
Did you consider tech whiteboard / leetcode interviews are unnatural stressful environments ? Have you gone through a mid/difficult technical appraisal yourself lately ? Try it out just to get an idea how it feels on the other side...
I used to do online interviews with full access to Google or any online resource (so long as you shared your screen and I could see). Use your own code editor, no penalty at all for searching up syntax or anything else.
I always asked a simple question like here is an array full of objects. Please filter out any objects where the "age" property is less than 20, or the "eye color" property is red or blue. It was meant more as a sanity check that this person can do basic programming than anything else.
Tons and tons of people failed to make basically any progress, much less solve the problem, despite saying that they worked programming day to day in that language. For a mid level role I would filter out a good 8 or 9 out of ten applicants with it.
I would consider it a non-leetcode type of question since it did not require any algorithm tricks or any optimization in time/space.
Nowadays that kind of question is trivial for AI so it doesn't seem like the best test. I'm not hiring right now,.but when I do I'm not sure what I will ask.
1 reply →
> mid/difficult
You're assuming the question has to even be that difficult. I've proctored sessions for senior-level webdev roles where the questions were akin to "baby's first React component" -- write a component that updates a counter when you click a button. So many candidates (who purported to be working with React for years) would fail, abysmally. Not like they were just making small mistakes; I didn't even care about best practices -- they just needed to make it work. So many failed. Lot of frauds out there.
8 replies →
Simple: don’t do that.
It’s been well over a decade that I’ve had to do the coding interview monkey dance and I actually turned down an offer where I did pass a coding interview because I found it insulting and took a job for slightly less money where the new to the company director was interested in a more strategic hire (2016). That was the same thing that happened before in 2014 and after in 2018 - a new manager/director/CTO looking for a strategic hire.
In fact even my job at BigTech -AWS ProServe (full time blue badge RSU earning employee) as a customer facing consultant specializing in app dev was all behavioral as well as my next full time job as a staff consultant in 2023.
I’m 51 years old and was 40 in 2014. If I’m still trying to compete based on my ability to reverse a b tree on the whiteboard even at 40, I have made some horrible life decisions.
(Well actually I did make a horrible life decision staying at my second job too long until 2008 and becoming an expert beginner. But that’s another story)
6 replies →
I agree that what you're describing is the required skillset now. But two things I've been unsure of are what that looks like in terms of hiring to test for it, and for how long this remains a moat at all.
So much of tech hiring cargo culting has been built up around leetcode and other coding problems, puzzles, and more. We all pay lip service to systems thinking and architecture, but I question if even those are testing the correct things for the modern era.
And then what happens in a year when the models can handle that as well?
I've put a lot of thought into hiring in this era, and what I've personally found works the best is:
Let them use their preferred setup and AI to the full extent they want, and evaluate their output and their methodology. Ask questions of "why did you choose X over Y", especially if you're skeptical, and see their reasoning. Ask what they'd do next with more time.
It's clear when a candidate can build an entire working product, end-to-end, in <1 day vs. someone who struggles to create a bug-free MVP and would take a week for the product.
In addition to the technical interview, hiring them on a trial basis is the absolute best if possible.
Taste and technical understanding of goals and implementation to reach those goals is the biggest differentiator now. AI can handle all the code and syntax, but it's not great at architecture yet - it defaults to what's mid if not otherwise instructed.
1 reply →
"And then what happens in a year when the models can handle that as well?"
Either the machines exterminate us or we become glorified pets.
Hope the AIs prefer us to cats (even though that's a long shot).
2 replies →
Largely agree, with a bit of clarification. Junior devs can indeed prompt better than some of the old timers, but the blast radius of their inexperienced decisions is much higher. High competence senior devs who embrace the new tools are gonna crush it relative to juniors.
It's like having an early/broken chess engine.
An amateur with a chess engine that blunders 10% of the time will hardly play much better than if they didn't use it. They might even play worse. Over the course of a game, those small probabilities stack up to make a blunder a certainty, and the amateur will not be able to distinguish it from a good move.
However, an experienced player with the same broken engine will easily beat even a grandmaster since they will be able to recognise the blunder and ignore it.
I often find myself asking LLMs "but if you do X won't it be broken because Y?". If you can't see the blunders and use LLMs as slot machines then you're going to spend more money in order to iterate slower.
> Junior devs can indeed prompt better than some of the old timers
I guess? I don't really see why that would be the case. Being a senior is also about understanding the requirements better and knowing how/what to test. I mean we're talking about prompting text into a textarea, something I think even an "old timer" can do pretty well.
1 reply →
Makes sense. You just reminded me of the article "Why Can’t Programmers... Program?" [1].
Before gen AI, I used to give candidates at my company a quick one-hour remote screening test with a couple of random "FizzBuzz"-style questions. I would usually paraphrase the question so a simple Google search would not immediately surface the answer, and 80% of candidates failed at coding a working solution, which was very much in line with the article. Post gen AI, that test effectively dropped to a 0% failure rate, so we changed our selection process.
[1] https://blog.codinghorror.com/why-cant-programmers-program/
> The best engineers can visualize the whole architecture in their head, and describe exactly what they want to an AI
I'd go a step further and say the engineers who, unprompted, discover requirements and discuss their own designs with others have an even better time. You need to effectively communicate your thoughts to coding agents, but perhaps more crucially you need to fit your ever-growing backyard of responsibilities into the larger picture. Being that bridge requires a great level of confidence and clear-headedness and will be increasingly valued.
This stupid industry doesn't have the wherewithal to actually make a good credential and training process like medicine and law, and instead lets everyone come up with their own process to vet people. We could even do it as an apprenticeship model, not like that hasn't served humanity throughout the ages.
I should have a credential I have to maintain every few years, one or two interviews, and that should get me a job.
Could you provide an example of your “very simple tests” ?
I have found in the last 3 months that there are two clear tiers of developers in the company I work at, the ones that can code with AI and the ones that can't, and the ones that can't are all going to be unemployed in 6 months.
We have a lot of people where if you gave them clear requirements, they could knock out features and they were useful for that, but I have an army of agents that can do that now for pennies. We don't need that any more. We need people who have product vision and systems design and software engineering skills. I literally don't even care if they can code with any competency.
Btw, if you think that copying and pasting a jira ticket into claude is a skill that people are going to pay you for, that is also wrong. You need to not just be able to use AI to code, you need to be able to do it _at scale_. You need to be able to manage and orchestrate fleets of ai agents writing code.
[dead]
> The people getting pushed out are the intermediates and seniors who aren't high performers.
i argue that's a good outcome. Seniors who aren't high performers should not command high salaries. I think the anomaly that is the post-covid boom is warping salary expectations vs difficulty of job (and the competency required for it).
Juniors from non target schools are getting pushed out since the skill floor is too high.
I graduated 9 months ago. In that time I've merged more PRs than anyone else, reduced mean time to merge by 20% on a project with 300 developers with an automated code review tool, and in the past week vibe coded an entire Kubernetes cluster that can remotely execute our builds (working on making it more reliable before putting it into prod).
None of this matters.
The companies/teams like OpenAI or Google Deepmind that are allegedly hiring these super juniors at huge salaries only do so from target schools like Waterloo or MIT. If you don't work at a top company your compensation package is the same as ever. I am not getting promoted faster, my bonus went from 9% to 14% and I got a few thousand in spot bonuses.
From my perspective, this field is turning into finance or law, where the risk of a bad hire due to the heightened skill floor is so high that if you DIDN'T go to a target school you're not getting a top job no matter how good you are. Like how Yale goes to Big Law at $250k while non T14 gets $90k doing insurance defence and there's no movement between the categories. 20-30% of my classmates are still unemployed.
We cannot get around this by interviewing well because anyone can cheat on interviews with AI, so they don't even give interviews or coding assessments to my school. We cannot get around this with better projects because anyone can release a vibe coded library.
It appears the only thing that matters is pedigree of education because 4 years of in person exams from a top school aren't easy to fake.
Can I ask what you and others that posts things like this here -"What are you actually developing?"
People are posting about pull requests, use of AIs, yada yada. But they never tell us what they are trying to produce. Surely this should be the first thing in the post:
- I am developing an X
- I use an LLM to write some of the code for it ... etc.
- I have these ... testing problems
- I have these problems with the VCS/build system ...
Otherwise it is all generalised, well "stuff". And maybe, dare I say it, slop.
I'm hosting a Kubernetes cluster on Azure and trying to autoscale it to tens of thousands of vCPUs. The goal is to transparently replace dedicated developer workstations (edit: transparently replace compiling) because our codebase is really big and we've hired enough people this is viable.
edit: to clarify, I'm using recc which wraps the compiler commands like distcc or ccache. It doesn't require developers to give up their workspace.
Right now I'm using buildbarn. Originally, I used sccache but there's a hard cap on parallel jobs.
In terms of how LLMs help, they got me through all the gruntwork of writing jsonnet and dockerfiles. I have barely touched that syntax before so having AI churn it out was helpful to driving towards the proof of concept. Otherwise I'd be looking up "how do I copy a file into my Docker container".
AI also meant I didn't have to spend a lot of time evaluating competing solutions. I got sccache working in a day and when it didn't scale I threw away all that work and started over.
In terms of where the LLM fell short, it constantly lies to me. For example, it mounted the host filesystem into the docker image so it could get access to the toolchains instead of making the docker images self-contained like it said it would.
It also kept trying to not to the work, e.g. It randomly decides in the thinking tokens "let's fall back to a local caching solution since the distributed option didn't work" then spams me with checkmark emojis and claims in the chat message the distributed solution is complete.
A decent amount of it is slop, to be honest, but an 80% working solution means I am getting more money and resources to turn this into a real initiative. At which point I'll rewrite the code again but I'll pay closer attention now that I know docker better.
6 replies →
I hate the credentialism. What a bummer of a place to end up.
I mean you don’t need your first job go to top of the top companies. Your first job is to get you into the industry then you can flourish.
How many juniors OpenAI GDM are going to hire in a year, probably double digits at max, the chances are super slim and they are by nature are allowed to be as picky as they should be.
That being said, I do agree this industry is turning into finance/law, but that won’t last long either. I genuinely can’t foresee what if when AGI/ASI is really here, it should start giving human ideas to better itself, and there will be no incentive to hire any human for a large sum anymore, maybe a single digit individuals on earth perhaps
The problem is the lack of experience compounds.
Because AI accelerates the rate of knowledge gain, this gets even faster.
That matches an observation made in that report from the recent Thoughtworks retreat: https://www.thoughtworks.com/content/dam/thoughtworks/docume...
> The retreat challenged the narrative that AI eliminates the need for junior developers. Juniors are more profitable than they have ever been. AI tools get them past the awkward initial net-negative phase faster. They serve as a call option on future productivity. And they are better at AI tools than senior engineers, having never developed the habits and assumptions that slow adoption.
> The real concern is mid-level engineers who came up during the decade-long hiring boom and may not have developed the fundamentals needed to thrive in the new environment. This population represents the bulk of the industry by volume, and retraining them is genuinely difficult. The retreat discussed whether apprenticeship models, rotation programs and lifelong learning structures could address this gap, but acknowledged that no organization has solved it yet.
Thanks for sharing this is the first I’ve seen this. I wish they had expanded on exactly what mid-level might be missing rather then just saying “fundamentals” and “practical intuition”
What is a high performer?
Someone who jumps higher than expected when the boss demands it?
Someone who works 996 in the office?
Or someone who knows what they’re doing?
I think this is bigger than any individual. It’s just a matter of time before you’re let go. There’s no loyalty from companies at all. Not when they’re seeing higher than expected profits and are still cutting huge percentages of staff every year. There’s no strategy or preference to it. I don’t think this has to do with how you or I perform on the job.
Most people I’ve talked to lately who are still employed are watching out for their job to get cut.
I’m not sure it is just that, I don’t even see positions listed where I would like to work. For salary ranges, I see lower upper limits than my second best offer three n half years ago. Considering the high inflation, that’s crazy.
I would not mind switching but 1. I don’t see interesting positions 2. they don’t pay well, and only 3. they might not even want me.
It might also be just my niche, but finding a good position feels completely impossible for me.
I am doing cross platform mobile development and I’m wondering how I could transition into backend development or I started even considering the decentralized finance…
> than my second best offer three n half years ago
3.5 years ago was peak ZIRP hiring craziness.
It wasn't a normal reference point.
Yeah, I don't know if I'd call myself competent (I'm late intermediate/early senior. So the worst of the curve here). But there's a difference between "interviews have gotten a lot harder now" and "I can't even get a response back". It's far, far more in the latter.
My resume isn't bad on paper either. It's not FAANG coded, but it's decent experience.
> they're just as capable as using AI as anyone
They're just as capable of typing prompts into AI, but what they don't have is good judgement of what good work/code looks like, so what's the point of asking a junior engineer to do something vs asking the LLM directly?
The junior engineer will become a senior. An llm wont. For now, anyway.
Because a lot of stuff doesn't need to be good it needs to be done.
Nobody is gonna lose money because some script that generates yaml for the build process every hour nested three loops instead of two. Intern, AI, junior dev, junior dev telling an intern how to use AI, doesn't matter. If it works for the week it'll work for the decade. If someone needs to pick it apart and fix something in a year it'll either take no time because they know enough to do it easily or it'll be a good low stakes learning exercise for a junior.
Everyone wants to think their stuff is important but 99.9% of code is low stakes support code either in applications or in infrastructure around them.
> In my experience, tech employment is incredibly bimodal right now. Top candidates are commanding higher salaries than ever, but an "average" developer is going to have an extremely hard time finding a position.
what an interesting way to say most programmers find it extremely difficult to get a job. you sound like you have some kind of insight, but is there anything notable about jobs drying up for people who aren't cheap enough or who aren't valuable enough? that's just how jobs dry up. anytime it's a bad job market for workers it'll be like that.
it is a great way to frame the coming tech crash. it allows whoever remains to fancy themselves as top talent.
> In my experience, tech employment is incredibly bimodal right now. Top candidates are commanding higher salaries than ever, but an "average" developer is going to have an extremely hard time finding a position.
This is the K-shaped economy playing out. Its a signal that the american middle class is hollowing out. Bad, very bad.
> and they're just as capable as using AI as anyone
Wouldn't the assumption be the opposite, in that AI is magnifying the decision making of the engineer and so you get more payback by having the senior drive the AI?
I've found this to be true so far, junior engineers with AI can be super productive but they can also cause a lot of damage (more outages than ever) and AI amplifies the sometimes poorly designed code they can generate.
I suspect a lot of it best practices will be enforcing best practices via agents.md/claude.md to create a more constrained environment.
I’ve observed radically different workflows amongst senior candidates vs junior candidates when using an ai. A senior candidate will often build an extremely detailed plan for the agent - similar to how you would do a design for/with a junior engineer. Then let the agent go full throttle to implement the plan and review the result.
Juniors seem to split into the category of trust everything the ai says, or review every step of the implementation. It’s extremely hard to guide the ai while you are still learning the basics, opus4.6 is a very powerful model.
3 replies →
100% this. AI is automating the code generation.
Being able to clearly describe a problem and work with the AI to design a solution, prioritise what to put the AI to work on, set up good harnesses so the quality of the output is kept high, figure out what parallelises well and what’s going to set off agents that are stepping on each others toes… all of this needs experience and judgement and delegation and project organisation skills.
AI is supercharging tech leads. Beginners might be able to skill up faster, but they’re not getting the same results.
For a good senior, yes you get massive returns, which is why those good seniors are in incredibly high demand right now.
For average to low-performing intermediates/seniors... there's not much difference in output between them and a good junior at this point. Claude really raised the skill floor for software development.
My thinking is a bit different here: Seniors, even mediocre ones, already learned a lot of hard lessons by doing things pre-LLMs, even pre-SO. Those skills are valuable and I don't know how to train them into juniors.
I find it easier to get a reasonably smart senior to use AI in a good way, than to train a junior in what thinking to do, and what to outsource, learning basics about good design, robustness and risk analysis. The tools aren't the problem per se, it's more about how people use them. Bit of a slippery slope.
That's just my anecdotal experience from not a whole lot of data though. I think the industry will figure it out once things calm down a bit. Right now, I usually make the bet to get one senior rather than two juniors. Quite different to my strategy from a few years ago.
Yep. I've seen this personally. The ROI of a great engineer is bigger than ever.
> Juniors are still getting hired because they're still way cheaper and they're just as capable as using AI as anyone.
While I could buy that hiring managers believe this, it's not actually true.
The gulf between the quality of what a sr developer can do with these tools and what a jr can do is huge. They simply don't know what they don't know and effective prompting requires effective spec writing.
A rando jr vibe coder can churn out code like there's no tomorrow, but that doesn't mean it's actually right.
While I agree with what you said. In personal experience I have noticed the software design / architecture is becoming irrelevant for lot of enterprises (including mine of course). So design nowadays is about API design Input/Output/Error handling. And architecture is about Cloud/Kubernetes/APM , deployment and monitoring etc. Code now does not need much design. Things like performance, isolation, extensibility etc as those are now higher level concerns not part of code itself.
This is also where micro services pattern fits in well because individual unit is so small no design needed.
> Code now does not need much design.
I’ll bite: why? Genuine question, not a weird gotcha.
> Juniors are still getting hired because they're still way cheaper and they're just as capable as using AI as anyone.
Seniors have much more advantage right now in using AI than Juniors. Seniors get to lean in on their experience in checking AI results. Juniors rely on the AI's experience instead, which isn't as useful.
Juniors really aren't just as capable with AI as anyone. Knowing how to unambiguously describe correctly what you want isn't something a junior can do, nor is understanding if what the ai produces is good or bad.
I sold a house after being laid off in mid-January from a government IT contractor where I had worked for eight years. The sale and move took about five weeks.
Before that role, I spent two years at another government contractor working on various govt. applications doing UX research, design, and front-end UI development. Overall, I’ve had a 17-year career in UX Research, Design and Development, starting at an ad agency in 2009.
From 2016 to 2022, I worked hard in government projects and enjoyed collaborating with great, close-knit coworkers and receiving consistently positive client feedback. From 2022 to 2026, things changed as the company grew—my role narrowed to UX research and design while newer hires handled UI development. I often felt underutilized and raised it, but management assured me I was doing well. With little direction from my last manager, I focused on staying visible to the client by monitoring user chats, identifying UX issues, and proposing design solutions that the client appreciated and the development team implemented.
Looking at where the tech industry is now—with thousands laid off from government IT and the broader tech sector flooding the job market, creating rising competition, constant pressure to work harder (Elon wants us to work as hard as Chinese workers do) and AI rapidly reshaping creative and development roles—I’m not very interested in that level of stress. I worked hard for many years and enjoyed it, but I value MY LIFE and MY HEALTH more than participating in the current “battle royale” environment in tech.
Overall, now with AI I feel graphic & web design, as well as front design web development is a stupid career! It was a nice run, bought two houses from it, worked remotely, when things were slow worked from wherever in the lower 48 and now .... in April Im starting nursing school and Im not young (20 years left of work in me). Roll with the punches here yet the punches are gonna punch hundreds of thousands to millions in the face ... not sure how this any good for an economy and society but here we are! If you are like me sell your house and stash the money away to buy houses when the crash from AI happens!
Good luck!
I suspect that nursing is an excellent choice.
I got pushed out, and slapped with the Dead Fish of SV Ageism. It was brutal, and I got pissed off.
But in the long run, it's been the best thing that ever happened to me. I would have liked the extra ten years of salary and saving, but I'm not entirely sure that I would have survived it.
Funny, I was thinking about something similar. But I think I will go with something with retirement / old people. More demand for it in the future.
This matches what I've seen too. Though I'd add another dimension: soft skills. In my experience, job searching has always been easier for people who communicate well regardless of their technical level. And soft skills might be what's making some people more resilient to this market shift specifically
That has always been true (not that I’m saying you don’t know that, I’m using your comment as a jumping off point) in this industry. I am a good developer, but I’m a very good teacher and leader, and soft skills are why I’ve had the career I’ve had over the past two decades.
I'm not a Senior, but I'm not a Junior either. The market has no place for people like me. I've killed myself for almost two years and can't secure a position. It's incredibly disheartening. I have a family to feed. I need to be able to work.
I wonder if that is just a correction of the rampant hiring that took place just before this employment “crash?” - if it is as you say that its intermediates and non high performers then does that make it a good thing as well.
Truth is, when I was part of larger orgs/enterprise I definitely saw some folks who were dead weight, and I don’t mean to be harsh, a few of these knew they weren’t contributing and were being malicious in that sense.
Similarly, I wonder how many high performers now are taking multiple jobs thanks to remote work and exposing the mid to low performers. Like some kind of developer hypergamy taking place.
I'm also seeing companies looking at only hiring juniors from overseas because they're using the same generative tools as US-based juniors but cost even less.
I'm seeing a lot of specialization. For the past 11 years I've marketed myself as a frontend engineer. I got laid off last year and the job search was largely similar to my previous job search 4 years prior.
I've been looking again this year and the landscape has changed drastically. Specialization is the name of the game, I have a good amount of experience working with Growth initiatives and I've been getting good responses from roles that are looking for either Growth or Design engineers, roles that were not as prevalent years ago.
> In my experience, tech employment is incredibly bimodal right now. Top candidates are commanding higher salaries than ever, but an "average" developer is going to have an extremely hard time finding a position.
That sounds good for many of us (and don’t we all like to think we’re top candidates here on HN…) but is there any data to back this up? Or it just anecdata (not to dismiss anecdata, still useful info).
In my experience juniors are simply being replaced with intermediates and seniors who are willing to work for junior wages.
> Juniors are still getting hired because they're still way cheaper and they're just as capable as using AI as anyone.
That is pretty context sensitive. You're correct that there's no real deep AI use expertise broadly understood to exist at this point (unless you're Steve Yegge?), but if people think they can toss out the engineers with experience in the systems that have been around a while, with junior developers "guiding" changes — that's likely a good way for a business to fall on its sword.
Relating it to performance is just silly. Most companies barely understand the performance of their employees much less candidates. The market has shrunk but not catastrophically so. Most people haven't been majorly affected but that doesn't mean they're automatically the most deserving or best performing.
People with experience and/or credentials desired by companies in areas of growth (i.e. AI) are always in high demand
> People with experience and/or credentials desired by companies in areas of growth (i.e. AI) are always in high demand
This is tautological.
No it isn't, because in the context of the comment it should be read "people with experience and/or credentials desired [...] are always in high demand " regardless of their actual performance level.
>Most people haven't been majorly affected
Apparently it is over a third affected in my domain. Which is crazy. Pretty much everyone in my immediate band has been hit at some point. That that weren't were usually around 5-8 above me. So basically a different generational band altogether.
I don’t think that’s true
If intermediates were being pushed out they would just take junior roles to have something
Companies really don’t like hiring Juniors in general
> "average" developer is going to have an extremely hard time finding a position.
As was foretold in the Tyler Cowen's eponymous 2013 book "Average Is Over".
In it he argued that the modern economy will undergo a permanent shift where "average" performance no longer guarantees a stable, middle-class life.
He predicted that the economy will split into two distinct classes: a high-earning elite (roughly 10–15% of the population) who thrive by collaborating with technology, and a larger group (85–90%) facing stagnant wages and fewer opportunities.
AI summary of the other key points of that book:
The "Man + Machine" Advantage: Success will belong to those who can effectively use smart machines. Cowen uses Freestyle Chess (teams of humans and computers) as an analogy, noting that human intuition combined with machine processing power consistently outperforms either working alone.
The Power of Conscientiousness: In a world of abundant information, the scarcest and most valuable traits will be self-motivation, discipline, and the ability to focus. Hyper-Meritocracy: Advanced data and machine intelligence make it easier for employers to measure an individual's exact economic value. This leads to extreme salary inequality as top performers are identified and rewarded more precisely.
A New Social Contract: Cowen predicts a future where individuals must be more self-reliant. He suggests society will move toward lower-cost living models for the non-elite, featuring cheaper housing and "bread and circuses" in the form of low-cost digital entertainment and online education.
EDIT: Notice how we're basically already here: Netflix is cheap, YT is free, Khan Academy and MIT OCW is free, Coursera/Udemy/etc. are cheap.
Stagnant vs. Dynamic Sectors: The economic divide is worsened by "low accountability" sectors like education and healthcare, where productivity is hard to measure and costs continue to rise, unlike tech-driven sectors that see rapid gains.
Cowen uses Freestyle Chess (teams of humans and computers) as an analogy, noting that human intuition combined with machine processing power consistently outperforms either working alone.
Unfortunately, this one hasn't aged well. Human+Computer is now consistently outperformed by Computer alone in the chess world. Also, the name Freestyle Chess is now used for Chess960, the chess variant where starting positions are randomized. It has nothing to do with computer chess now!
As the kids say, AI makes everyone a 10x engineer. Who would you you want to 10x?
But it's measuring quantity, not quality.
https://www.folklore.org/Negative_2000_Lines_Of_Code.html
What we really need is the -10X engineer ;)
Alas, his job would entirely consist of debloating the slop everyone else is pumping out "at inference speed".
https://steipete.me/posts/2025/shipping-at-inference-speed
Any reasoning/data or at least an anecoded behind this claim? No?
High performer is so subjective too.
You can be a great unblocker, team lead, and work well within cross cutting areas and with interdepartmental stake holders, have a history of strong technical performance.
and yet its nebulous if that means you're a high performer or not to those hiring. It seems I'm seeing 'culture fit' as a common reason people aren't getting hired again. That was out of vogue for a good while.
In tech 'culture fit' is generally a dog whistle for ageism in my experience.
I also think its being used to filter out people that aren't basically a mirror for the interviewers in many instances.
I've noticed a huge tightening of the rope around that sort of thing.
I can't tell you how many times I've passed all the tests, all the interview things, get to the final round with the team and the rejection email comes in despite having good conversations. By all accounts, I believe any person would say the interview went well.
my peers are reporting the same things.
2 replies →
> Top candidates are commanding higher salaries than ever
I haven't found that to be true. Unless by "top candidates" you mean people working at actual AI companies such as Alphabet/Meta/OpenAI/Anthropic. If you're an AI-user and not an AI scientist it's bad out there, even for senior+ developers who previously worked in "FAANG".
someone: (actual data)
HN user: not in my experience!
Yes, this has been my experience. I'd consider myself average at best. I worked in the industry for almost 7 years before being laid off. I can't find anything at the moment and have resorted to moving back in with my parents.
It's pretty depressing. I'd take just about anything at the moment. I understand desperation going into a job interview isn't ideal either.
It feels like I'm in a hole.
Yep - the dual economy has moved into tech itself.
This has been my experience as well.
Happy to be on the high-end ^^.
> Contrary to what many say, I don't think it's simple as seniors are getting hired and juniors aren't. Juniors are still getting hired because they're still way cheaper and they're just as capable as using AI as anyone.
Tell me about all the junior developers you've hired (it's none)
> just as capable as using AI as anyone
This is probably the dumbest take I've heard of. They're the most likely to make mistakes with AI because they don't know the pitfalls of what they're doing.