The Software Engineering Identity Crisis

by napoluxon 3/23/2025, 6:37 PMwith 159 comments

by dandellionon 3/23/2025, 8:23 PM

I've been using AI for code for more than two years already, the auto-completion is a nice help that I'm willing to pay for, but every time I try anything that's harder than the basics it completely falls flat.

It doesn't surprise me though, most of the people working on this are the same that had been promising self-driving cars. But that proved to be quite hard, and most of them moved on to the next thing which is this. So maybe a decade from now we'll be directing AIs instead of writing code. Or maybe that will also be difficult, and people will have moved on to the next thing they will fail to replace with AI.

by meander_wateron 3/24/2025, 8:16 AM

This reduces the field of software engineering to simple code generation when it is much more than that.

Things like system design thinking and architectural design are not solely tasks performed by managers or specialised roles.

Software developers need to wear multiple hats to deliver a solution. Sure, building out new features or products from scratch often get the most glory an attention. But IMO, humans still have the edge when it comes to debugging, refactoring and optimisation. In my experience, we beat AI in these problems because we can hold the entire problem space/context in our brains,and reason about it. In contrast, AI is simply pattern matching, and sure it can do a great job, but only stochastically so.

by bsderon 3/23/2025, 8:02 PM

Want to convince me of AI coding? Let's see AI go modernize the old X11 codebase. Wayland progress is so glacially slow that a motivated programmer should be able to run rings around them with AI on X11, right? Show me that, and I'll pay attention to "AI".

> Many of us don’t just write code - we love writing code.

Excuse me, I HATE writing code.

Code is the thing that is in the way between what I want to computer to do and the computer doing it. If AI reduces that burden, I would be the first to jump on that wave.

GUI programming still sucks. GPU programming still sucks. Embedded programming still sucks. Concurrent programming still sucks. I can go on and on.

I was actually having this discussion with somebody the other day that 99% of my programming is "Shaving Yaks" and 1% actually focused on the problem I want to solve.

When AI starts shaving the yaks for me, I'll start getting excited.

by hnthrow90348765on 3/23/2025, 8:19 PM

My guess is that job requirements will grow even larger, so it will be better for people who like jumping around between front-end, back-end, infrastructure, database, product, support, testing, and management duties. You'll have to resist any uncomfortable feelings of not being good at any one thing, much less mastering it. Naturally, they won't ask non-technical staff and managers to suddenly become technical and learn to code with AI.

In the grander scheme of things, what matters is if their products can still sell with AI coders making it. If not, then companies will have to pivot back to finding quality - similar to offshoring to the cheapest, getting terrible developers (not always) and a terrible product, then having to rehire the team again.

If the products do sell with AI coders, then you have to reckon with a field that doesn't care about quality or craftsmanship and decide if you can work like that, day-in-day-out.

by roxolotlon 3/23/2025, 8:26 PM

The secret is that looking to work as a way to fulfill that desire to build and create is not a good idea. The existence of industrial farming takes no joy from my backyard garden. My usage of Gen AI doesn’t diminish the wonder I feel building projects at home.

Looking to corporate work as an out for your creative desires never really worked out. Sure there was a brief golden age where if you worked at a big tech company you could find it but the vast majority of engineers do utilitarian work. As a software engineer your job as always been to drive business value.

by userbinatoron 3/23/2025, 8:01 PM

Those who think AI can generate code better than they can, are quite frankly below-average. It's the equivalent of using Google Translate to read and write another language --- and programming languages really do need to be learned as languages to make the most of them. It "works", but the result can never be above average.

or systems where performance and reliability are paramount

Since when has that not been the case? Neglecting or even actively avoiding performance and reliability is why almost all new software is just mediocre at best, and the industry is on a decline. AI is only going to accelerate that.

by kittikittion 3/24/2025, 2:00 PM

Most big tech engineers I know hate coding and see abandoning coding as a progression in their career. Personally, I don't care what the industry thinks, I like coding and do it anyway with or without a huge corporation providing me with every last resource required. If I'm unemployed because coding as a skill is no longer needed, I will still do it just not part of my day job. Just as painters were worried about color printers, the value of the Mona Lisa was put into question. I'm no artist, but I'm not believing the overhyped scenario's. I love language models and their abilities but there's too many HR reps drooling at the mouth thinking they can replace coders with AI.

by 18172828286177on 3/23/2025, 7:27 PM

I’ve been meaning to write essentially this article for a while now.

I’m currently prepping for some upcoming interviews, which is involving quite a bit of deep digging into some technical subjects. I’m enjoying it, but part of it feels… pointless. ChatGPT can answer better than I can about the things I’m learning. It is detracting quite a bit from my joy, which would not have been the case 5 years ago

by TeMPOraLon 3/23/2025, 7:43 PM

Some good points, but I feel that by the end, the article lost track of an important angle. Quoting from the ending:

> And now we come full circle: AI isn’t taking our jobs; it’s giving us a chance to reclaim those broader aspects of our role that we gave away to specialists. To return to a time when software engineering meant more than just writing code. When it meant understanding the whole problem space, from user needs to business impact, from system design to operational excellence.

Well, I for one never cared about business impact in general sense, nor did I consider it part of the problem space. Obviously, minding the business impact is critical at work. But if we're talking about identity, then it never was a part of mine - and I believe the same is true about many software engineers in my cohort.

I picked up coding because I wanted to build things (games, at first). Build things, not sell things.

This mirrors a common blind spot I regularly see in some articles and comments on HN (which perhaps is just because of its adjacency to startup culture) - doing stuff and running a company that does stuff are entirely different things. I want to be a builder - I don't want to be a founder. Nor I want to be a manager of builders.

So, for those of us with slightly narrower sense of identity as software engineers, the AI thing is both fascinating and disconcerting.

by aforwardslashon 3/24/2025, 7:21 AM

Right now, being able to efficiently extract value from AI based code generation tools requires supervision at some extent - e.g. A competent developer that is able to validade the output; As the industry moves toward these systems, so do the hiring requirements - there is little to no incentive to hire more junior devs (as they lack the experience of building software), effectively killing the entry-level jobs that would someday generate those competent developers.

The thing is, part of the reason AI requires supervision is because it's producing human-maintainable output in languages oriented for human generation; It is my belief we're at a reality akin to the surgence of the first programming langages - a mimick that allows humans to abstract away machine details and translate high-level concepts into machine language. It is also my belief that the next step are specialized AI languages, that will remove most of the human element, as an optimization. Sure, there will always the need for meatbags, but big companies will hire tens, not thousands.

by ookblahon 3/24/2025, 7:07 PM

Articles like this honestly confuse me. I really do not understand this sentiment that that some coders have where it feels like every line they write is like some finely chiseled piece of wood on a sculpture they made.

Since day one I've always liked to build things much like the author, my first line of HTML to CSS, frameworks, backend, frontend, devops, what have you. All of it a learning experience to see something created out of nothing. The issue has always been my fingers don't move fast enough; I'm just one person. My mind can't sustain extended output that long.

My experience with AI has been incredibly transforming. I can prototype new ideas and directions in literally minutes instead of writing or setting up boilerplate over and over. I can feed it garbage and have it give me ballpark insights. I can use it as a sounding board to draw some direction or try to see a diff angle I'm not seeing.

Or maybe it's just the way that some people use AI coding? Like it's some magic box and if you use it you wont' understand anything or it's going to produce some gibberish? Like a form bikeshedding where people hold the "way" they code as some kind of sacrosant belief. I still review near every line of code and if something is confusing I either figure it out and rewrite it or just comment on what it's doing if it's not critical.

by bencorniaon 3/25/2025, 12:37 AM

Whew! This pretty much sums up how I have been feeling about my career the last 6 months. Today, at work, we had a tongue-in-cheek "vibe coding" day where we practiced building primarily with AI tools. A part of me feels like this isn't what I signed up for when I became a software engineer. I am a builder not a manager. Yet, I was flabbergasting at how much I was able to build with claude. But building doesn't exactly describe what I did. And as the article suggests it does feel like managing and not building. I didn't read every line of code that was generated. I think describing the current zeitgeist as an identity crisis is spot on. Software engineering is going through a fundamental shift. But that has always been the case. The field has drastically evolved since it's inception. The only difference is that rate of change has increased such that it feels like we are experiencing a titanic shift. It certainly is an exciting time!

by cadamsdotcomon 3/23/2025, 10:53 PM

It’s great that the typing part is being reduced - as is looking up APIs and debugging stupid issues that wreck your estimates by wasting your work-day!

You are still in charge and you still need to read the code, understand it, make sure it’s factored properly, make sure there’s nothing extraneous..

But ultimately it’s when you demo the thing you built (with or without AI help) and when a real human gets it in their hands, that the real reward begins.

In the future that’s coming, non-engineers will be more and more able to make their own software and iterate it based on their own domain expertise, no formally educated software engineers in sight. This will be outrage fuel for old-mindset software engineers to take to their blogs and shake their metaphorical walking-sticks at the young upstarts. Meanwhile those who move with the times will find joy in helping non-engineer domain experts to get started, and find joy once again in helping their non-engineer compatriots solve the tricky stuff.

Mark my words, move with the times people. It’s happening with or without you.

by kylehotchkisson 3/23/2025, 7:27 PM

Anecdotally I perceive there’s been less open source JS libraries/frameworks being released lately. I generally keep an eye on JS/node weekly newsletters and nothing has seemed interesting to me lately.

Of course that could be my info bubble (Bluesky instead of twitter, newsletters, slightly less attracted to shiny than I used to be)

Anybody else feel the same?

by porridgeraisinon 3/24/2025, 4:51 PM

It's a useful assistant. Never again do I need to argparse each flag onto a class Config: fully manually again. I also found it useful in catching subtle bugs in my (basic, learning purpose) cuda kernels. It is also nice to be able to do `def utc_to_ist(x: str) -> str`<TAB>.

As for whole apps, I never agree with its code style... ever. It also misses some human context. For example, sometimes, we avoid changing code in certain ways in certain modules so as to get it more easily reviewed by the CODEOWNER of that part of the codebase. I find it easier to just write the code "the way they would prefer" myself rather than explain it in a prompt to the LLM losslessly.

The best part of it is getting started. It quickly gives me a boilerplate to start something. Useful for procrastinators like me.

by greenie_beanson 3/24/2025, 12:26 PM

ai took away the fun of coding but it's impossible not to use it now that i've opened pandora's box. fortunately i don't have the identity problem. you shouldn't base your identity on your job. my problem is more like, "this isn't as much fun to do anymore"

by JaDoggon 3/24/2025, 10:00 AM

What I do is turn off copilot, do the design, get in the zone and enable copilot. This way I do not get it to slow me down, otherwise I just wait for it to do API calls. Even then, I turn it off when it create complete wrong implementations.

Problem is it doesn't know the layer of utilities we have and just rewrite everything from scratch. Which is too much duplicatation. I have to now delete it and type correct code again.

One advantage I have seen is that, it can defenitely translate / simplify what my collegues say, fix typos or partial-words. Which is very useful when you are working with lot of different people.

by zer8kon 3/24/2025, 3:17 PM

AI is the only reason I’ve been able to keep up with the constant death marches. Since the job market went to shit employers are piling on as much work as they can knowing they have indentured servants.

The code quality isn’t great but it’s a lot easier to have it write tests, and other code, and then go back and audit and clean.

Feels absolutely awful but whatever.

by MiiMe19on 3/24/2025, 5:59 AM

Over my dead body will I ever code with AI.

by antfarmon 3/27/2025, 10:29 AM

I'd rather become a bike messenger and continue programming for fun than having LLM code generators take over the fun part of my job.

by slowtrekon 3/25/2025, 12:46 AM

We could always surrender the identity. Who ever said a Software Engineer should be a profession that should last hundreds of years?

by ldjkfkdsjnvon 3/23/2025, 7:31 PM

I think we are underestimating the change that is about to occur in this field. There is a certain type of mind that is good at programming, and the field will no longer reward that type of mind as AI takes over. The smaller, gritty details of making something work will be smoothed over. Other types of person will be able to build, and might even surpass traditional "10x engineers", as new skill sets will take precedence.

by twistedcheesleton 3/23/2025, 7:31 PM

This is an excellent article.

We’re all just swimming as the AI wave comes crashing on every developer out there - we can keep swimming, dive or surf. Picking a strategy is necessary but it would probably be good to be able to do all of the above.

by n_aryon 3/24/2025, 10:06 PM

The article appears to be a rant and panic piece…

At this point, I am totally confused. When I attend expensive courses from Google or Amazon, the idea in the courses are that, tech has become sooo complex(I agree, look at the number of ways you can achieve something using aws infinite number of services), we need some code assistants which can quickly remind us of that one syntax or fill out the 10000th time of writing same boilerplate or quickly suggest a new library functions that would take several google searches and wading through bad documentations on another 5h of SEO spam or another 50 StackOverflow with same issue closed as not focused enough/duplicate/opinionated.

It is like, they want to sell you this new shiny tool. If anyone here remembers the early days of Jetbrains IDEs, the fans would whirl and IDE would freeze in middle of intellisense suggestion, but now those are buttery smooth and I actually feel sad when unable to access them.

Now, on the outside in news, media, blogs and what not, the marketing piece is being boosted a 1000x with all panic and horror, because a certain greedy people found that, only way to dissuade brilliant people from the field and not bootstrap next disrupters by signaling that they themselves will be obsolete.

Come to think of it, it is cheap now. First idea was to hire them when investments were cheap and disruption risk was high, then came the extinction of ZIRP when it was safe to stop hoarding them as no investment means less risk of disrupters, but if some dared, acquire and kill in the crib. Then came bad economy, so now it is easier to lay them off and smear their reputation so they can’t get the time of the day from deep pockets. Final effort is to threat the field by fake marketing and media campaign of them being replaced.

This panic drama needs to stop. First we had SysAdmins maintaining on-prem hardware and infra. But Aws/Gcp/Azure/Oracle came along to replace them to only move them up the chain and now we need dedicated IAM specialist, certified AWS architects, Certified Azure Cloud Consultants and what not.

Sorry for the incoherent rant, but these panic and “f*k you entitled avocado toast eating school dropout losers, now you’ll be so screwed” envy social media posts are so insane and gets so much weird, I am just baffled by the whole thing.

I don’t know what to believe, big tech telling me in their pretty courses and talks about how my productivity and code quality will be now improved, or the media and influencers telling me we are going to be so obsolete (and avocado toast eating dropout, which I am not). Only time will tell.

In the meantime, the more I see demos of impressive LLM building entire site from everyone and their pet hamster, the more number of Frontend engineering jobs popup daily on my inbox(I keep job alerts to watch market trends and dabble in topics that might interest me).