Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: What is the future of the entry-level software engineering job?
26 points by gautambay on April 3, 2024 | hide | past | favorite | 38 comments
Hoping to spark an insightful discussion on the how advances in AI will impact the demand for entry-level software engineers, and the nature of that job.

Some prompts to consider:

1. If you work in software engineering, what changes are you observing today, either to the SWE job itself, and/or to demand for entry-level SWE roles?

2. How do you see the entry-level SWE job evolving in 1, 2 and 3 years? Fewer/no roles? Different job description? Something else?

3. How will the pace of change vary across industries? E.g. I imagine SWE at Google is quite different from SWE at Liberty Mutual.

Please consider stating your current role and/or any experiences that have shaped your perspective (e.g. "Engineering leader at a Fortune 500 non-tech company", "recent CS grad", "AI researcher", etc.)




I don’t think there’s going to be much change if any in the next 5 years. I feel like I’m taking crazy pills when I see people say LLMs can replace software engineers. Maybe if you’re writing basic CRUD web apps, but most systems have enough complexity that an LLM cannot currently ascertain. Not to say they’re not helpful - ChatGPT is jawdroppingly good at pointing out bugs in code. They’re going to make people more productive but not enough to impact the labor market and remove the need for junior engineers.

People aren’t hiring juniors right now because of the hiring freezes that are only beginning to thaw. Teams are understaffed after having to do more with less and need to hire people who can hit the ground running. The headcount for juniors will come.


I completely agree with this take.

LLM's have been hyped up to replace developers, but have repeatedly shown that the code at best can do the job.

It will replace the offshore sweatshops that Accenture and IBM have made, where they literally pull people off the streets and give them a couple of hours course so they can meet headcount for contracts. Those people were never productive.

I've seen the outputs that people who have tried to use in my codebase, and the amount of SQL injections and XSS exploits that get churned out because the model doesn't understand context is terrible.

I'm just waiting for the big hack to come along because of too much faith in these systems that have cold indifference in your systems reliability.


> Maybe if you’re writing basic CRUD web apps,

Isn’t that half or more of employed software developers? The complexity that you speak of are poorly refined business requirements or unnecessary abstractions, which are communications problems not a technology problem. Nearly all of those CRUD app developers are replaceable right now, which is striking considering the current immaturity of AI.


You might be underestimating how quickly a basic CRUD web app turns into a very complicated CRUD web app. I don't see AI code tools slowing this down.


Thanks for the perspective. Any predictions on how long before junior roles open up again / what are you seeing at your employer?


If I had to guess, it'll be spring/summer 2025 until hiring freezes fully go away and non-senior role open up. Maybe start of 2025. These may be conservative estimates. More optimistic guesses would be fall 2024.

I say this because Interest Rates will be most likely lower than what they're at right now, which will cause money to flow into companies through VC and public investment.

Just a guess though, could easily be wrong. Keep an eye on startup investment and public ipo activity as a potential indicator of things.


I'm going to make an optimistic and contrarian prediction: there will be even more jobs for software engineers in the future.

Current companies will hire fewer new grads and layoff older engineers. However, I believe AI will make it far cheaper for new software companies to develop their products. Therefore, we will have more software companies spring up. Those companies will in turn, hire more software engineers.

For example, let's say there are 10 total software companies today employing 100 employees each for a total of 1,000 software engineers employed. In the near future, I can see 100 software companies employing 12 engineers for a total of 1,200 software engineers. The net will be 200 engineers.

We will see an explosion in software products - some software fields will have more competitors due to the lower cost of creating an alternative and we will see brand new software fields spring up because it's now economically feasible to do them.

However, I think new grads that can make efficient use AI in developing software will be in very high demand - even today. Those who can't will have a hard time getting hired. Same for current software devs.

I believe that the reason we don't see this in 2024 yet is because of high interest rates and we are in a transition period. I can see the field getting very hot again in 2025/2026.


Yes, but the increase in supply with likely decrease the wages for most (but not all) engineers as software itself get further commoditized.


Maybe in the distant future, yes. But I don't think the digital transformation has peaked yet. If there is 20% more demand for software engineers (like my example above), then I don't see wages decreasing.

When we have AGI that can completely replace engineers, then yea, maybe. But I'm not accounting for that because all bets are off if/when we have AGI. We'll have to start getting into weird scenarios at that point. For example, our wages could decrease but services/products are far more abundant and better, leading to a better quality of life despite a decrease in wages.


If "intelligence" becomes a service, it means that things are easier to build. If things are easier to build, then it becomes harder to develop moat because every app becomes easier to copy. Like Peter Thiel said, "competition is for losers". Wages will decrease in the face of lots of competition as everyone begins to compete on price.


The vast majority of startups fail to find a moat and eventually fail completely. It didn't stop VCs from investing. It didn't stop people from starting startups.

Perhaps those failed startups would have been viable if they could have built and maintained the product with 10 engineers instead of 100.

So instead of a single large software product that might not fill specific niches well, we might have a medium size product and many smaller products that fill more niches in the category.

For example, Clerk.com auth supports React mostly. But what about Vue or Svelt? Someone can come along and say, I can build that for Vue and Svelt and be economically viable because I build it much faster with fewer engineers leveraging AI.

A quick Linkedin search says Clerk.com has 112 employees. What if I can build an alternative for Vue and Svelt with just 10 employees?

Not being able to maintain a moat just means that software engineers will be switching to different jobs more frequently. It doesn't mean that the overall software market will decrease.


Where I work, things seem to take about 5-10 years longer than anyone plans.

Even if there are companies on the cutting edge of AI, there will always be those that take more time to adopt it. Others will never adopt it in any meaningful way, unless there is something affordable and off the shelf that can actually fulfill the business needs.

I’m going to remain highly skeptical of the promises of AI, until I see them actually come to fruition.

WYSIWYG HTML editors were supposed to be the end of needing web developers, now those are mostly gone, some template based services exist, and there are more web developers than ever.

Low-code was also supposed to be the end of needing developers, as anyone who knew the business requirements could plug some LEGO blocks together. That also seems to be dying, as the logic still needs to exist and that’s where people get lost, not to mention the lack of flexibility and customization than those systems can lead to.

Will AI replacing software engineers be any different? Only time will tell.


AI systems are "trained" using what is scraped from the internet. So if the application domain is well documented then there is a chance that AI might produce working code. But you still need competent programmers to assess whether that code is correct. Writing prompts and tests is likely to remain critical.

My prediction is that specialized domain knowledge plus SWE (with smart use of AI) skills are increasingly going to be the better way to gain employment.


Both my jobs have indefinitely axed co-op and new grad roles due to Co-pilot.

It isn’t just AI, as entry level people have always been poor value, but at this point we basically just want entry level to be a favour for employee’s kids.

I’m an overemployed Senior SDE, one at a unicorn and one at a generic company.


Excellent. This will train fewer new grads, pushing demand higher for Seniors in a few years. I look forward to this extra bargaining power


Oh, they are setting up for a massive shortage of useful people in a few years unless AI knocks productivity out of the park.


Thanks! Appreciate the data points and insight.

Do you have a perspective on whether this will exacerbate the shortage of senior engineers in a few years, if way fewer new people enter the profession in that time period? Or will it be okay since the need for humans will reduce commensurately?


Exacerbate unless the tools get much better.

Really, I don’t think they fully replaced the juniors as only some of the job is code generation. A lot of basic support and edge case handling is falling on the intermediates who often now aren’t producing much of anything due to the support burden. Many of them are dissatisfied.


In that case, feels like the current trend is unsustainable and should reverse once the intermediates eventually revolt? WDYT?

Have both your companies explicitly stated that the freeze on entry-level hiring is because of copilot?


It depends. A lot of it is hard to parse out from company specific realities. These particular intermediates are only doing so much support as the product is selling a lot more than anticipated. We may be allocated support engineers to help out. So maybe support engineer becomes the new junior developer job as many of them are fairly technical but have no career track.

The current situation is definitely untenable, but it is not clear whether you need a full fledged developer do a lot of the work they are presently doing.

Keep in mind that this is a fairly large org of thousands, so smaller companies have different needs as full time support engineers may not be worth it. We already have some, they just are not allocated to this team.

As for your second question, one company phrased it something along the lines of "AI allows us to quickly do tasks for which we would otherwise need junior/certain classes of support team members." AI isn't just being used by developers, but all over the org. There is an AI steering group and everything.

Other employer hasn't said anything about it as AI implementation is less far along.


If entry-level software jobs are being eliminated by AI or other means, how will people gain the experience necessary to become more senior developers?


I think there's a good chance of there being some really bad bugs/system failures in about 25 years because of this.

"AI can do code" -> less experienced engineers -> no one has deep understanding of the whole system -> boom.

But it will take 25 years before this series of events plays out.


My guess is that software quality will get slightly worse. We already have enough people copy-pasting from stackoverflow... Now they just copy paste from LLM... Which might or might not have had any human eyes to up and down vote...


Side projects, especially those that are popular (open source) or profitable.


I wonder about this too.


Prompt engineering will become an important skill -- i.e., finding the right words and ways to harness the power of generative AI.

Learning to stitch together AI tools (using the output from one tool as an input into another tool) seems like it will be in demand as well.


The point about stitching together resonates.


Plumbing is already a ton of software engineering jobs.


for better or worse, we're going to become digital secretaries rather than digital plumbers, duty bound to interact with LLMs and take notes on their behalf.


Taping together might be a better analogy. Duct tape ... mumble mumble ... Rube Goldberg machines ... mumble mumble ... whack-a-mole, er, whack-a-bug ...


At some point, hopefully we'll also figure out how to get AI to catch itself when it makes bugs. This will also be an important skill.

Or otherwise to recognize what type of bugs the AI will make -- like the way you know what type of bugs junior engineers will make.


Prompt engineering along with being able to describe problems exceptionally well will become important.

Just the other day I needed to write a complex script using a library I knew very little about. I knew "what" I wanted to do and that the library could solve the issue, but did not know enough about the lib to to solve it. I wrote pseudo-code and ChatGPT was able to generate a working script on the first shot.

I predict more of our work will shift towards describing problems well and knowing less specifics about certain libraries.


My experience has been... if you are competent enough to write a good prompt, you were probably good enough to write the code to being with. LLM copilots simply make that writing faster by 1.5x to 2x


That’s why they teach you to write pseudo code before code in bootcamps.


With the same or higher ratio of bugs?


> Prompt engineering along with being able to describe problems exceptionally well will become important.

Sounds like writing code


The bubble has got to burst eventually. I just hope I'm retired by then


Given the amount of times I've seen your question pop up, along with other vaguely related ones concerning the job market writ large, there's a lot of justified fear that this isn't a viable career path at all anymore.

I'm not a junior, or a grad, but I do have a shit resume that in total contains about 5-10 years of varied experience. I've been unemployed for a year, and am considering alternatives, like being a real garbage collector or electrician if I can find a way into those.

I'd note also that most of the responses in this thread are the same that Jon Stewart just lampooned in his recent episode on AI, with most CEOs describing how AI is actually a huge productivity boost and the best thing for humanity since literal fire, or that people will need to retrain to become "prompt engineers" (laughable, and why would you want to do that anyway). Anyone with an optimistic take still has a job, and everyone else doesn't see one coming along any time soon.

That said, there is way too much hype imo, I've found some use for ChatGPT and anticipate that there will be more, but it's mostly boilerplate or explaining things that already have some explanation somewhere. Asking for a solution to some performance problem that nobody's really documented anywhere hasn't proved useful, it'll just imagine something. It's not documenting Apple APIs that Apple themselves haven't bothered with, but it'll generate approximately passable examples of AppKit stuff that have been on the internet forever, and that's a great starting point for solving more interesting problems.

I do feel like most of the impact on the market is due to interest rates and layoffs, and there being a lack of profitability in most software anyway. The nature of the problem however doesn't remedy the fact that it'll be way way more competitive than it already was, and if you hadn't run the interview gauntlet prior to 2023, you sure as hell won't want to run it after 2025.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: