What actually makes a developer hard to replace today?
Posted by Majestic-Taro-6903@reddit | ExperiencedDevs | View on Reddit | 333 comments
With all the recent layoffs (like Oracle), it feels like no one is really “safe” anymore. Doesn’t matter if you’re senior, highly paid, or even a top performer—people are getting cut across the board.
So just wondering, from your experience, what skills or qualities actually make a developer hard to replace?
Is it deep domain knowledge, owning critical systems, good communication, or something else?
Also, how are you dealing with this uncertainty—especially with AI changing things so fast?
Are you trying to become indispensable in your current company, or just staying ready to switch anytime?
Girgoo@reddit
Why are not judges replaced by robots pr AI? They just have the law book to follow. A programmer also need to use his brain besides actually programming. Figuring out the requirements for the feature, behavior, what is feasible, fast and what do the end user actually want. Sometimes we need to invent some that never has been done before.
SciEngr@reddit
Over time you’ll come to realize everyone is replaceable. We like to tell ourselves things like “this company will crumble without me” but it’s almost never the case. As a result, relax. You don’t need to put in those extra hours, just do the job you’re paid to do, do it in a way that you and your colleagues will respect, and go do the things you love outside of work.
thodgson@reddit
Exactly.
Add to that: keep sharpening your skills, especially your soft skills where most if not all technical people fail to prepare when it comes to interviewing.
Commercial-Ask971@reddit
Everyone talks about soft skills but what are those and how to sharpen them? Its like elephant in the room
thodgson@reddit
Read this, it is exactly what you need to know: (1) What I Learned From Nearly 1,000 Interviews at Amazon
Commercial-Ask971@reddit
Thanks, will do
LateNight_AnalogSoul@reddit
I think if developer has specific manufacture knowledge background,that hard to be replaced in shot time.
floghdraki@reddit
And to be frank if you are irreplaceable someone isn't doing their job right and most likely you aren't either. Good engineer doesn't build person dependencies. Those are the first people every company should cut since they are a huge viability for the company.
crispygouda@reddit
In over a decade, I find that this isn’t really true. Companies intentionally cultivate teams that foster the right environment or they dont. Strong management makes a big difference, but blaming individual ICs is like the mega corp destroying the planet saying I have to recycle to save the planet.
Besides, Ive personally burnt out multiple times trying to create healthier work cultures while leadership dicks around and huffs the glue fumes coming out of the valley.
lolimouto_enjoyer@reddit
Yeah, any company using some decent software engineering practices will not end up with knowledge silos of the "this is the only guy that knows how X work and can maintain it".
Maktube@reddit
As a corollary, once or twice in my career I have actually been the guy without whom the company would collapse, and let me tell you, it is awful. People talk like it's the ultimate job security, but mostly it's just an insane amount of stress plus it's almost inevitable people will end up resenting you eventually, just because everyone knows that if push truly comes to shove, you win any argument just by virtue of indispensability. It doesn't matter if you abuse that privilege or not, someone will disagree with one of your decisions at some point, and they'll feel like you are (and god help you if that decision ends up being a mistake).
Dialed_Digs@reddit
And it only takes a single clueless manager to torpedo you (and the company) anyway.
Maktube@reddit
Well, yes, but, you know, don't underestimate my ability to do that myself :P
Thankfully that's never actually happened , but... everyone makes mistakes, and being a the physical embodiment of "single point of failure" is a hell of a thing.
Dialed_Digs@reddit
Well said.
rentalhealth@reddit
This is what I was going to say. I started a big project at my company and slowly became the "point person." Because you are treated as indispensable, you are exposed to all the upper level pressure like project deadlines, what teams will get killed as a result, etc. And on the lower end everyone piles all their troubles on you, DMs, meetings you have to be the eng rep on, decisions they want to make but offload the actual responsibility on to you (e.g. "these tables are dumb why can't we use kafka" but would never actually build or operate that themselves).
As soon as the project transitioned stacks/architectures, I delegated a lot of work to my coworkers because I wanted to live my life again. One of them stepped up a lot and they kind of became the "me" of that project. And the funny thing I notice is if you step in even 5% more than your teammates it immediately balances to that 80%/20% distribution, because if you are even a *bit* better than everyone else, everyone picks you for the DMs, the intro integration meetings, the manager meetings, the design reviews, the hard projects, etc. And everyone else is just kind of delegated work, and, as you say, they can't make decisions, so they put in 20%.
It's kind of sad because I don't really particularly like being an 80% or 20% person but I prefer being the 20%. I wish there was a way to be somewhere in between. But I find it's either (a) you steer the ship and have autonomy, but also bear the responsibility, or (b) you want to work any less than that, but then you realize you have no control, and you'd rather not be responsible for decisions you had no part in.
thodgson@reddit
Good point. After layoffs, do you really want to be "the guy" who has to do the work of 10 people? It's insanity. You'll begin to wonder if life would have been different/better if you were laid off.
Skittilybop@reddit
Honestly the best jobs I have are the one where I’m “the surprisingly good new guy”. Being the lead who holds everything together is fucking miserable. You’re right about the resentment. I am always choosing between surfacing major issues or crippling tech debt that will stop us hitting our goals, or just being quiet and watching the goals go to shit. Meanwhile jimmy the new guy says hey look at this new thing I made an everyone’s like wow jimmy you’re crushing it.
fapstronaut02@reddit
It took me a while to realize this but when I die or retire the company I work for will continue without me. Yes, my contributions may have been valuable or made things easier but eventually a business learns to adapt and live on without you.
danintexas@reddit
I will add that NOT being laid off and being ones of the ones left is worse. That doesn't feel good to say with things today but that has been my findings in working over 30 years now.
theDarkAngle@reddit
Having been on both sides of it, hard disagree. It's not fun for the survivors, for sure, but the victims of layoffs is a far worse experience.
UnlikelyMaterial6611@reddit
bad advice, you can still become irreplaceable working hard enough depending on the company and your skills
Ok-Breadfruit9364@reddit
You are confusing irreplacable with valuable
UnlikelyMaterial6611@reddit
lol
Icy_Can_7600@reddit
If you can use AI well and to your/the company's advantage, you are going to be hard to replace for a long time.
Pitiful_Feedback9054@reddit
Commercial-Ask971@reddit
Everyone is replaceable but the ownership is crucial. Would you let AI get ownership and responsibility for a system? If something fails who would you blame? Anthropic?
Ok-Grapefruit-1458@reddit
The irony that this is an AI post, seriously?
prnullgram@reddit
In my case? I own 50% of the company😎
halfway-to-the-grave@reddit
Business logic. Sometimes that is the hardest to document and the hardest to master
Agreeable_Emotion163@reddit
this probably only applies to startups where you intend to stay small (10-20 people) but from my side as a nontechnical cofounder, the devs who actively make themselves replaceable are usually the ones i'd fight hardest to keep. if their knowledge is discoverable (specs in the repo, decisions documented where they were made, issues linked to the actual code), the team doesn't collapse when someone's out. the person who hoards context is a liability even if they're brilliant.
our whole philosophy is that 10 10x engineers will always beat 1 10x engineer and you get there by making sure context flows instead of living in one person's head. that said i'm the business side so if my technical cofounder hopped in here he'd probably have a completely different take lol.
big corp is a totally different game and i won't pretend to have insight there.
MediocreAd8995@reddit
It’s true, job security feels shaky everywhere right now. From what I’ve seen, developers who are hardest to replace usually combine a few things:
Deep domain knowledge – understanding the business or systems in ways that aren’t easy to document.
Ownership of critical systems – if the system would grind to a halt without you, that matters.
Problem-solving and adaptability – being able to handle new challenges quickly.
Communication and collaboration – people who can explain complex ideas and guide others are valuable.
To deal with uncertainty, I focus on staying versatile: learning new tools, understanding AI’s role in my field, and keeping options open. You can either try to be indispensable in your current role or maintain the flexibility to switch when needed. Both approaches work if you plan carefully.
ParkingStaff2774@reddit
A positive attitude, team-player with a can-do attitude, curiosity. No matter the stack, these are the hardest combination of characteristics to find in a single developer and so the hardest to replace.
rupayanc@reddit
accumulated context about why decisions were made, not the ability to make the decisions again. AI can write the code, it can't tell you why the team rejected that approach in 2022 or what the edge case was that killed the previous version of this feature.
aLpenbog@reddit
I feel pretty safe. I don't work in a big company which has way more people than it would need. We have a crapload of work and not enough people. I'm pretty sure the only case for me to lose my job would be if the company shuts down completely.
AI isn't changing much for us. Our 20-30 yo legacy codebases are far from AI friendly/compatible and I spend about 10 weeks a year working on-site at client locations, where I often don’t have internet access, either due to data protection policies or because companies are concerned about security risks like viruses, so no AI there either. Being safe depends on the things you mentioned but also on the company you work in.
But as a good dev your main skills are being able to break down big problems, learn by yourself, adapt and tackle the smaller problems. There will always be demand for people who can do that, even if the way we work might change.
NoTart6048@reddit
The skill to know what the customer / business owner wants.
As a developer I am bad at this, but this is what I am focusing on now.
FeralWookie@reddit
You can make yourself safer but no one is ever truly safe. Not because of AI, just in general. A big business can always decide to change their investment strategy. And if you don't fit your gone. Good bad or indifferent.
waffleseggs@reddit
Organize.
_some_asshole@reddit
The same answer that’s always been true since the beginning of time. Trust or the lack of it
Leading_Yoghurt_5323@reddit
being the person who can actually take something messy and make it runable end to end matters way more than just writing clean code now
uhwuggawuh@reddit
my manager and skip have a ton of political capital lol
Tiny-Sink-9290@reddit
I'm going to give it to you straight. Short of "You're the only dev in the org".. it's who you know/buddies with. Period... if your entire department isnt cut.
21_Wrath@reddit
This.
Likeablilty > Ability
Get in the good books of your managers folks, make sure YOU and your work is visible.
Disastrous_Poem_3781@reddit
You're manager is not going to like you of can't do your job lol
Tiny-Sink-9290@reddit
You realize.. that in certain situations social skills are absolutely more important than technical skills, yah? You could be the #1 tech person in the world.. if your ability to communicate with others about all that great tech you know sucks.. you wont be #1 or #1000 for very long.
Disastrous_Poem_3781@reddit
You don't have to be a social butterfly. You're technical skills shouldn't dwindle just because of soft skills
SwitchOrganic@reddit
Or another way to put it, the best ability is likeability.
interrupt_hdlr@reddit
always been.. unfortunately for techies
Business-Error-2961@reddit
We spend the majority of our time at work, yeah no shit we want to work with people we like. I can train someone if they’re lacking skills. An autistic asshole who thinks he’s Alan Turning? Yeah no, good luck with that.
caboosetp@reddit
Or more importantly, who knows you. You don't need a personal relationship to have this protect you.
One of the things I try to do as a lead is make sure my team is getting name recognition when we're doing things like demos or postmortems. When the higher ups hear specific names associated with important things that bring in business value or quickly solving issues, they're less likely to be hit in targeted layoffs.
The opposite comes with taking fault. Fault is owned by the team, not individuals. Having specific people called out by name really hurts when it comes to targeted layoffs. I don't care if it was someone specific that had their name on the PR which caused an outage. That failure is on the team and the process for allowing it to happen, and someones individual career shouldn't suffer for that.
These are the big things I try to convey when I'm mentoring leads too. A lead is not just a technical expert who makes technical decisions. They've got to be the one advocating for the team and making sure it's a healthy environment for them. Playing corporate politics and being the shield for the team so they can focus on the work.
Tiny-Sink-9290@reddit
Well said. Also.. rarely said. You're team/company is lucky to have you.
spookydookie@reddit
Yup. Hiring is broken. Everyone hires through references now.
supyonamesjosh@reddit
ai spam resumes absolutely has made it more true. If you are a random applicant there are 20 more fake resumes in the pile that look like yours
I_pretend_2_know@reddit
This is a game the recruiters and employers created. They're the ones that automated hiring and flooded the channels with ghost jobs.
After I sent 200 resumes and got responses from less than 5% of them, I went to AI spam.
Spam vs spam is a game the employers created.
caboosetp@reddit
The recruiter / bench agencies are booming because of this. Their whole job is basically filtering applications and headhunting so the end client only sees a handful.
If you're currently in the market, I highly recommend shotgunning out to recruiters more than just shotgunning out cold direct applications.
The WITCH companies aren't as prestigious to work for as FAANG, but if you're desperate for work, they're still hiring en masse and will work to get you placed.
spookydookie@reddit
Not 20, 2000.
chalks777@reddit
always have been, chief.
Dish-Live@reddit
That’s a good thing? I think random hiring is generally a bad idea
anonyuser415@reddit
Surely we as devs can use the word "random" more judiciously than this
juusorneim@reddit
Explain your viewpoint in more detail.
spookydookie@reddit
It’s a bad thing. I get 1000 apps for every job I Post. Ai applies for every job.
jujubean67@reddit
Good thing that if you don’t have an extensive network you won’t get hired? Good luck when all your buddies are laid off as well and nobody can recommend you.
thelochteedge@reddit
Even that isn't enough. I wasn't the only dev in the org but the only one on my particular team. The other two left and one was on mat leave. I thought for sure this was the moment where they'd give me a big raise for holding down the ship.
Nope. NOTHING. Took me too many years to leave that place but that resonates with me now that if you don't go out and get it, it will never come to you. My regard for unearned loyalty to a workplace is gone.
subma-fuckin-rine@reddit
thats not even a guarantee, i've seen solo devs get fired. company shuffles other devs to support it even if they have no clue on the tech. doesnt matter to them.
its pretty much fully political as the only hope
AustinBenji@reddit
You'd think so, but as someone who was the only dev in the org, that's not a guarantee. Spoiler alert, the software didn't do well after I was let go
LeanPawRickJ@reddit
Just to add the actual answer; ‘legislation’.
If they want you gone, you’re gone.
At best, legislation takes away the ‘on a whim’ aspect.
Marutks@reddit
Nothing! AI will replace all computer jobs.
Healthy_Assist_2882@reddit
Being underpaid?
SpicyFlygon@reddit
Being at the low end of the salary band
EnemonaAA@reddit
The thread keeps circling back to visibility and relationships. Both are right, but here's what I've noticed after watching multiple rounds of layoffs:
The people who survive (or land quickly after) aren't the most technically brilliant. They're the ones who can articulate their impact when it matters.
When spreadsheet layoffs happen, your manager has maybe 30 seconds to make a case for you. If they can't rattle off specific examples of what you delivered, you're just a salary number. And they won't remember your wins better than you do.
What's worked for the people I've seen navigate this:
Keep a running log of what you shipped, what you prevented, and decisions you influenced. Not for your ego, just for evidence.
Quantify the invisible work. "Caught the bug before it hit prod" becomes "prevented estimated 4-hour outage affecting 50k users" when you need to explain it.
Surface your work without being annoying about it. Status updates, demos, the occasional "here's what the team accomplished" email. Make it easy for your manager to remember you exist.
When layoffs loom, your resume should already be current. The time to remember what you did isn't when you're panicking.
The honest truth: none of this guarantees safety. But it shifts odds. And if you do get cut, you'll walk out with a documented track record instead of scrambling to remember what you built two years ago.
ducki666@reddit
Knowing a lot of undocumented things for critical production systems.
Fabulous-Possible758@reddit
Unfortunately I think this is something that LLMs will actually get pretty good at soon. I think even majorly complex systems won’t be a problem for decently intelligent reverse engineers who are facile with these tools.
swiftmerchant@reddit
Yep. LLMs are already good at creating documentation.
FatefulDonkey@reddit
Are they? They can't even create digestible comments in tests. Ends up being re-iteration of what the code does instead of why it does it.
swiftmerchant@reddit
You need to prompt it to document the “why”.
FatefulDonkey@reddit
Yes, I know. And then they generate nonsense again.
It only works if you give explicit examples. And if these miss any subtle context, you get a lot of garbage again eventually.
swiftmerchant@reddit
Yes, I forgot to mention that I also gave examples to it. Some parts come wishy washy I concede but good for the most part. After working back and forth I got an excellent summary documenting the security flow and architecture.
coderemover@reddit
They are limited to what they see in the code. If the code doesn’t document the “why” part, they are blind, just as any other new developer thrown at the code.
Fabulous-Possible758@reddit
Right. But they can also do a
git blamefor a line that looks weird, find the commit, find the PR that published it, and summarize the discussion thread about why that logic is the way it is on the related ticket before you’ve even finished reading the function.-Knockabout@reddit
Genuine question, does no one else have to wait minutea for the AI to finish processing, especially when accessing the internet?
Fabulous-Possible758@reddit
In truth, yes (I was assuming a pretty long function), so it’s not quite at an interactive latency, but a summarization task like this would be orders of magnitude faster than a human could do it.
forbiddenknowledg3@reddit
This. They still make trivial mistakes.
Example: I have this database index on a rather messy/large table. The index is for a business query but the LLMs are convinced it's to optimize an API endpoint. I've been testing different LLMs for a few months to see if/when they get it.
Usually when you ask a SME you expect 100% accurate answers, because small things like this will add up quick.
swiftmerchant@reddit
Is that API endpoint running queries on the same table?
Ysilla@reddit
Yep, I think "good at creating doc" is one of the biggest misconception about them, and that the long term effects of that one are going to be rough. They need A LOT of hand holding to generate good doc.
Pretty much every doc I see nowadays is LLM generated, and most of it is so bad it's crazy. In most cases good documentation should be relatively short and focus on the important stuff. But 99% of what I see today is hundreds/thousands of lines long docs that totally buries all the important knowledge within a giant mess of irrelevant stuff (like so often hundreds of lines can just be replaced by "we followed our standard patterns"), or worse, often only contains the useless stuff and totally skips the important parts.
And people never review them because there's just too much info. But management sees lots of lines and is happy.
swiftmerchant@reddit
Agree, most of the documentation is bloated crap. I suspect it is because people just type “create documentation”, without much guidance. I’ve had success in getting better results with certain prompts.
swiftmerchant@reddit
Hmm. In my experience you can ask the LLM to explain what the purpose of the code is in relation to the rest of the code at a higher scope block and it will tell you the “why” part. You can also ask it to document the edge cases.
I’d be curious to hear why specifically they would be limited.
coderemover@reddit
They don’t know the outside context of creation of the code. And in my experience, LLMs on our code base even struggle to properly figure out the purpose of things in relation to the other code. They make blatant mistakes, they misuse APIs, they hallucinate stuff, they confuse the meanings of things quite often.
swiftmerchant@reddit
I have not run into this yet, hopefully will not. Documented the entire codebase.
Honestly I have not had any of these issues with building so far, except for the one time codex 5.1 tried to circumvent the tests.
coderemover@reddit
How big is your code base, how many millions of lines and how many hundreds of people worked on it for how many decades?
swiftmerchant@reddit
Codebase I am personally working on is not that large. I am going by what my friend is telling me about their codebase at a large bank which is 500,000 LOC. Their productivity went up.
By chunking and limiting the LLM to read modules at a time you can mitigate the size issue. Are you guys doing this?
Give it another six months, and the LLMs will be able to work with even millions of lines at a time.
Wide_Obligation4055@reddit
Depends what you wire up to Claude code, generally you give it full read access at least to all your code repositories, all your code deployments, all telemetry, all data and company Comms and documentation systems. Plus it can read from the web everything related to the open source stack of dependencies you use, eg rancher K8s etc Then you ask it to go check why a pod is failed to run in the outer Mongolia region 2 weeks ago and it goes in and checks all the logs, works out the precise commit, checks related Jira and confluence, determines the bug, why it happened and fixes it, deploys to Dev a duplicate envelope to confirm the fix, or tells you why it is now fixed already, by which commit and developer.
So it is way more useful at this sort of stuff than generating code in my experience. The generative side is a bit rubbish without way more context than it can handle, but progressive context engineering for agents means it can chase down issues which in total have a massive range of context sources and not mess up.
Regular_Zombie@reddit
In a project I work in there are a number of special code paths for specific countries that have been added over the years. Almost no-one knows why they exist. It's trivial easy to see they are there, but few know why it's important.
Atraac@reddit
This assumes code is self-documenting. In most medium to big orgs it isn't.
nullpotato@reddit
Because there is always undocumented non code history. Maybe this check is leftover from a business decision that got revoked. My "why" for comments is the extra context needed to put someone in the head space to work on the problem. Basically things that are lost to time shortly after the coder commits the change.
serpix@reddit
we are solving this by context engineering across multiple codebases and breaking the repository / team / specialist silo entirely. Cross pollination is the new team, a specialist working on one or two systems is just not working anymore.
Head-Criticism-7401@reddit
Yeah, then when shit hits the fan, No one will be able to fix it, and the AI will go in circles.
Unfair-Sleep-3022@reddit
Ehhh.. I honestly don't think so. They're good at creating "text about a topic" but the information density and relevance is always very poor.
IdStillHitIt@reddit
This is true at my company, we laid off 45% of our engineers in January. I was then moved into a product area that was poorly documented and everyone that had touched anything was either fired or quit already.
Was it a total pain to make sense of what they had been building for two years? Absolutely, that said, it wasn't a consideration when they fired everyone, and just told us to figure it out.
And yes LLMs helped greatly, it still sucked, but it would have been 10x worse without the tools we have.
blowupnekomaid@reddit
what do you think will change with LLMs from how they are currently that will let them do that "pretty soon"?
serpix@reddit
we can chew large codebases and extract from code the current documentation and combine it to other seevices/repositories. This obsoletes wikis and the unfireable specialist who knows the system. You need to work across organization from now on.
blowupnekomaid@reddit
I think business context is an important part of making useful documentation though. My question was also more about asking why LLM's can't do it now and what will change for them to be able to do that, the person I was replying to implied that it can't currently do it.
swiftmerchant@reddit
There are ways to have the LLM write friendly and concise documentation, using certain prompts, I’ve done it.
serpix@reddit
We are thinking about doing something like this, but it would require limiting the scope of AI reverse engineering. The intended audience is POs, devs, debugging and onboarding.
You're right, AI wouldn't be able to figure out dead code paths without access to real logs.
We want to overcome the manually (not) maintained documentation burden and create automatically up to date documentation that would be the input to an assistant llm. We are not even interested in creating documents for people to read but for an assistant to help with an interactive llm session.
This would be combined with the business context documentation as code alone wouldn't be enough.
blowupnekomaid@reddit
I get the idea, it's just that for me personally, if I was in an unfamiliar project I could always just ask claude myself how something works if I don't understand it. With docs I'd rather read something a bit more refined and targeted even if its only a small and limited amount. Most people won't even read documentation if it's too verbose and ai imo. Also, good documentation often includes things like diagrams showing relationships between different systems. I honestly think documenting everything is slightly overrated and if there is too much then people just won't read it, it has to be heavily maintained. There is the possibility of hallucination with ai docs as well. imo, docs should really be a very reliable source of information.
swiftmerchant@reddit
Their context window capabilities are getting larger and better every month.
Fabulous-Possible758@reddit
Honestly I don’t think much has to change in the LLMs themselves. They have a small amount of what might be called reasoning capabilities honestly their bigger strength is basically that they are language transformation engines, and can consume and produce both code and natural language at speed just impossible for humans.
I think what is changing is that we, as programmers, do have all this unwritten institutional knowledge that we use, for example, while acquainting ourselves with a new code and unfamiliar code base, and we are basically in the process of forcing ourselves to write those assumptions out so that we get the results we want out of LLM assisted coding.
So IMO, what is likely to happen is that in a few years (maybe even months), there are going to be more agreed upon conventions of “this is how you structure an LLM agent to do X.” Like I said, I’m certain a competent reverse engineer who’s experienced with these tools could likely start diving into even the gnarliest code bases and make some headway pretty fast. What’s going to happen is that over time their specialized knowledge is going to be codified more so that less specialized people can navigate code bases more easily.
blowupnekomaid@reddit
The thing is, actually writing all those things out is not really a simple thing. It's like writing out the accumulated experience from your career. We could have already done that with documentation but in practice, an experienced person just understands things at a deeper level.
Fabulous-Possible758@reddit
Right, and that’s the thing I see changing. More and more that accumulated experience is getting written out, because we have a lot of experienced programmers now who are using these tools and the first thing they’re doing before they hand stuff off to the LLM is produce a well written spec because they don’t trust the LLM to do the right thing without it. You see it in all the AGENT.md’s and all the artifacts now that are getting put into git repos.
My point is that these are all pretty chaotic right now as everyone has their own way of doing things, and there’s umpteen vibe coded projects du jour (and a substantial amount of AI psychosis, but that’s tangential), and none of these are particularly interesting on their own, but there are conventions and patterns that are going to arise in them. So the real change isn’t LLMs are gonna get leaps and bounds better (I was being a little imprecise when I said that, I think current generation LLMs are likely already up to the task), they’re just gonna have more universal context for how coders go about things.
zyro99x@reddit
I think they are now working on devops agents that run independently, aws offers such a thing already, I wouldn't surprise me if these agents can manage infrastructure in 2-3 years with only little interference by humans
NotYourMom132@reddit
This is only true if everything is perfectly documented. In reality, never happened
valkon_gr@reddit
So hiding knowledge just for a chance to survive. This won't last long.
TheEnlightenedPanda@reddit
This is not a new strategy. People doing that long before AI
KellyShepardRepublic@reddit
Most of the AI I used is to get past knowledge hoarders. Sucks cause I understand why they do it but also got my own to feed and so the cutthroat begins. Though I don’t do anything shady, never lie about others or any of that, just do my work and accept the lack of trickle down until I can jump to the next place. Hopefully coworkers see how they are treated and instead of fighting me, find a new job so management gets the message.
Western_Objective209@reddit
yeah if you can use AI to explore a code base the whole job security from secret knowledge evaporates. If it's running somewhere, and the code is somewhere, most likely you can figure out how it works in an afternoon. I've done this with 1M LoC bases that are 70% written in domain specific languages internally designed in the company in the 80s that only a handful of people work on.
swiftmerchant@reddit
Yep. I got downvoted by saying this in another comment. I think the people who downvoted me are either the ones who gatekeep the knowledge themselves, or very junior and don’t know how to work with AI properly. People think they are still safe by gatekeeping tribal knowledge are in for a rude awakening.
Western_Objective209@reddit
there was a post r/rust where someone made a "code obfuscator" that would basically add lots of random functions that did nothing and mangling function/struct names, was very hard to read. Someone ran it through a local qwen model that runs on a macbook and it unwound the obfuscation in one shot
swiftmerchant@reddit
I wonder if this will lead to more and more code becoming open source?
Western_Objective209@reddit
I think so. I'm working on a windows kernel re-write just based on public resources and opus's knowledge of windows internals from scraping their docs, and it's going surprisingly smoothly. I think smart investors see the writing on the wall that's why we are in the middle of the "SaaS-pocalypse"
swiftmerchant@reddit
Yep, “hidden code” was never an issue. Internals were published in Dr Dobbs as far back as the 90’s. I get that companies want to safeguard the code as much as possible, which makes it more difficult for competitors to copy, I don’t blame them for it. It just not going to hold though. Look at what happened with Claude Code leak. I am sure several years ago spotting this kind of npm map would’ve been more difficult and a company would have patched it up in the next release before it came out.
I also think the SaaS-apocalypse is coming very soon, it seems obvious. Which is why I am wondering what to do with all these AI superpowers now that everyone has them. Building another SaaS could work in the short term, but what to build for long-term resilience? People will say domain specific software, industry verticals, expert knowledge etc, but to me that is just another SaaS that AI can clone.
Any better ideas?
KellyShepardRepublic@reddit
Custom solutions. Businesses paid for websites, now you can do a bit more and scrape the top. At least I will try that since many people want their home ai.
Western_Objective209@reddit
Basically just staying on the bleeding edge instead of trying to collect rent on IP/litigation moats, at least that's how I see it. I'm at a company that has tried the IP moat (even has so govt regulation that make it the only vendor), and it's eroding quickly, anthropic has released MCPs that are honestly just as good as products people paying hundreds of thousands to millions for licenses now
swiftmerchant@reddit
I agree with that. What kind of product though, if digital?
Western_Objective209@reddit
tbh I would just target something you have a lot of domain knowledge in that you worked on but deep down knew you could do it much better with less money
swiftmerchant@reddit
That goes back to my earlier comment though :-)
I don’t believe domain knowledge is a big enough moat, it can be easily replicated. And once built, the maintenance can be easily replicated.
Western_Objective209@reddit
that's true, no more moats on software
swiftmerchant@reddit
So what moats remain? :-)
Hardware? Building devices?
Western_Objective209@reddit
I've seen almost zero impact outside of software tbh
swiftmerchant@reddit
Zero impact besides software as far as AI eating the world you mean? Today this is the biggest use case which is why all AI companies are rushing in. Tomorrow though.. everything else.
I’ve already seen impact on radiology, marketing, finance, law. All thanks to software however.
3d printing will eat manufacturing soon enough, and robots performing manual jobs is just around the corner.
Western_Objective209@reddit
I'm a pretty high level 3d printing hobbyist, have 4 printers, it's not going to eat manufacturing the mechanical properties of print layers are not optimal for many applications and it's just slow compared to injection molding etc.
Everyone brings up radiology, even though it's an example of people saying it will be automated in 6 months for the last 10 years
swiftmerchant@reddit
Yes, I don’t think the elimination will happen in the next year. I do think the means to production, including injection molding is going to get cheaper and more accessible over time.
My radiologist friend is still making a ton of money. She is expected to heavily rely on it however. Perhaps software developers are going to be the same way for a while, heavily dependent on LLM generated code while still highly employed.
Do you consider the impact to software as already here and present today, unlike radiology?
Western_Objective209@reddit
I work on healthcare software, there's definitely some impact and there's a strong desire to automate bookkeeping/coding aspects so healthcare workers can focus on human interactions, still fairly minimal.
As a software engineer, my job has completely changed. Essentially unrecognizable from what it was pre-chatGPT
subma-fuckin-rine@reddit
i dunno, the appeal of saas is that you dont have to think about the offering. its updated by someone else continually. if you AI brew it up yourself, you're on the hook for updating, maintaining, fixing, etc.
i can see a lot of half baked "replacements" popping up, and then never supported.
Western_Objective209@reddit
yeah, barrier to create a competitor is low, barrier to maintenance is low, but reputation is still important and a lot of bad software is being made by people who don't really understand what they are doing
Appropriate-Wing6607@reddit
Yeah I’ve actually recently used it against a dragon hoarder to document an entire huge codebase. It’s amazing at pattern recognition
SpritaniumRELOADED@reddit
Also now the AI can just scrub through a decade of chats and git history to figure out how something works and why it was done that way
swiftmerchant@reddit
This is a very good tip. Although some things don’t get documented.
Head-Criticism-7401@reddit
I have been with a company for 8 years. I don't need to hide knowledge, it's all documented. The problem is. People don't read documentation and the AI tends to skip important shit.
LiteratureVarious643@reddit
We used to call them dragons. (Hoarding treasure, etc.)
RedFlounder7@reddit
Gives new perspective on the classic code comment:
// Here be dragons
ducki666@reddit
Works very well.
YugoReventlov@reddit
That's only useful if they are actually scared of firing you. They might assume Claude can fix everything anyway.
Far_Mathematici@reddit
Your manager and the skip would appreciate and recognize that. But the one that decide to kick you out won't have the idea.
Standard-Ant874@reddit
And... make sure your management won't think that these critical knowledge can be easily reverse engineered by anyone replacing you.
zen8bit@reddit
In my experience, they don’t seem to know how important people are until they’re gone.
aznshowtime@reddit
That actually is in your favor because if you got let go, it is salary growth mechanism.
nog_ar_nog@reddit
I've seen managers blatantly lie to directors in meetings to cover up after they dropped the ball. They just ate it up. Nothing would happen here if they lost someone with critical knowledge and it caused a project to be delayed by four months. Just need to spin a good story and shift blame onto someone else.
maxwell__flitton@reddit
100% this. I used to think people cared about company performance and they do to some extent. However, I’ve seen small companies completely die because a couple of managers wouldn’t admit they’re wrong. I’ve seen bigger companies limp through for the same reason. I’ve also seen the bottom line suffer because the manager assigns resources based on who they like. I sometimes wonder how society functions
Cahnis@reddit
That is the neat part, it doesn't
captmonkey@reddit
We had an integration that had to be pushed through ASAP because the vendor was shutting off the old version and they had made a replacement they wanted everyone to migrate to. At some point, someone was asking why we were having to do this so quickly and why we waited until the last minute instead of starting it earlier. I was like "Uh, they laid off the guy who was working on it 9 months ago."
WildWinkWeb@reddit
Was about to say this exact same thing.
tsereg@reddit
This is a general human condition.
tcpWalker@reddit
yeah tendency to make certifiable decisions
ZealousidealShape966@reddit
the backround color's an interesting choice
mirageofstars@reddit
That’s the real issue. It doesn’t matter if you’re ACTUALLY valuable. Management has to believe you’re valuable.
If you’re constantly fixing broken shit (that maybe you wrote bc you suck) that no one else can fix, or you get 3x the points done per sprint than everyone else (because you sandbag estimates and cherry pick stories and refuse to review other PRs), then management will think you’re worth keeping.
Standard-Ant874@reddit
Sadly, it's not only engineers, pretty much most corporate careers impression matters more than truth 😮💨
However, with current wave of layoffs, I believe most employees won't care about company anymore, I expect moving forward most engineers will put more energy into managing impression over doing good jobs since that's the game's rules, quality of products and services will be going downhill
mirageofstars@reddit
Ha yeah, I agree. Especially if folks feel they’ll just be laid off anyhow … why bother doing good work? Just keep up appearances and polish the resume.
writeahelloworld@reddit
Nah they always think that we can just hire a new guy and train for 2-3 months and will know everything
Standard-Ant874@reddit
Train 2-3 months? I got a job as junior, the next day after techlead's last day, EM assigned me to "take over" an initiative that was handled by techlead alone, no docs, zero handover, and worse thing is it was near deadline for demo to higher-up.
I experienced similar things a few times throughout my career as junior/mid level. Told EM that's unrealistic but getting ignored, felt like being thrown under the bus. Not sure if it's coincidence, these experiences were all with limited technical EM.
InterestingBoard67@reddit
dude, why did you cut off at the most interesting timeframe.
Continue. Spill the tea.
Standard-Ant874@reddit
Well, the key is, I don't understand why so many EMs I worked with has the believe that junior/mid can take over senior/techlead's works without handover. Why can't handover be arranged during notice period, must wait until/after last day 🙄
For your request... after 3 weeks of burning late night oil, I still failed to finish it. We still went ahead with demo, with some "tactic", higher-up was made believe everything was done and working properly 😛 , just to buy more time.
InterestingBoard67@reddit
you still with that company?
Standard-Ant874@reddit
No way 😅
Puzzleheaded-Bus1331@reddit
Not at all. First of all, you are ment to document stuff, it's part of your job, they pay you for that. Second, with AI is way easier to reverse engineer stuff.
Your worth as a SWE is going down and down.
swiftmerchant@reddit
I also did the same. Figured out the core state loop, reused the metadata, and rewrote the entire system written in java in C# in one day. Removed all the memory leaks and got rid of the bloated over-engineered monster. And that was many years ago, before AI.
It’s not just SWE, all knowledge worker jobs are going down. What to do next if I don’t want to fix toilets, electric, and HVAC?
Puzzleheaded-Bus1331@reddit
What makes a job harder to automate usually comes down to a few things:
If all the knowledge needed for a job is publicly available online, it’s much easier to train AI on it. A lot of software engineering falls into this category.. huge amounts of open documentation, examples, and shared knowledge.
Jobs where there isn’t a single correct answer, where you need judgment, context, and responsibility are much harder to automate. That’s why fields like medicine, research, or law are more resilient.
This is underrated. If a job requires working with expensive, specialized, or hard-to-access equipment (think medical devices, industrial machines, labs), it creates a real barrier. You can’t just replicate that with a laptop and internet connection.
Some professions are limited by licensing or regulation (like notaries, lawyers, etc.), which naturally slows down automation and competition.
Software engineering is powerful, but it’s also very accessible: you mostly just need a laptop and internet, and the problems are often well-defined. That makes it more exposed to automation than fields that combine judgment, restricted knowledge, and physical-world constraints.
swiftmerchant@reddit
My radiologist friends tell me 50% of the work is already done by AI. It, and robotics, is also being used by other medical specialties, surgery, etc
I see legal being augmented with AI left and right these days. A lot of case law is published.
When the robot wave hits in six months, none of these jobs will be safe.
ducki666@reddit
Then reverse engineer my binaries 😈
negrusti@reddit
You will be surprised how well this works with just a static disassembly analysis by an LLM
ducki666@reddit
Ok. I will provide you a binary. Can you please provide the source code?
negrusti@reddit
Original source code no. Functional equivalent - possible depending on the nature of the binary.
BogdanPradatu@reddit
Stop writing documentation, got it.
ducki666@reddit
Nobody will read it until it is too late
Windyvale@reddit
Nah, these people are often the first on the block because of their pay and the visibility of knowledge. Knowledge workers don’t typically display the depth of their skill and contributions in the “in-your-face” way that makes them seem too important to get rid of. Especially to the type of people who make these decisions.
BlackCatAristocrat@reddit
This isn't true today
forbiddenknowledg3@reddit
I document everything. Code , ADRs, handover meeting. People still ask me questions years later. I literally showed them glean can provide them the answers but they still want a meeting.
ducki666@reddit
Amazing 😅
SleepingCod@reddit
So documentation... The easiest thing to do in the age of AI is what's keeping people employed... Wonderful.
ducki666@reddit
Omg. You have no clue... It is not about what is there it is about how to use it.
Appropriate-Wing6607@reddit
Psh I can have AI document things really well. Feel like that’s the least useful since AI is prime for pattern recognition.
HQMorganstern@reddit
What makes you think this makes you safe, companies seem to just be eating the cost of bad product these days.
East_Lettuce7143@reddit
Nothing is 100%. We should just try to maximize our chances.
ducki666@reddit
Read his question again.
HQMorganstern@reddit
I did, great question, really liked it.
New-Age-8472@reddit
Why not just document it? Oh…
TipsByCrizal@reddit
Na. Unimportant.
_spiffing@reddit
This. Undocumented critical domain knowledge. Much easier to get at smaller medium companies.
Dziadzios@reddit
Even documentation is not enough. An engineer needs to familiarize themselves with it, which takes time.
Wide_Obligation4055@reddit
If you are going to sabotage your company by hoarding knowledge instead of documenting, communicating, and ideally automating it away, you can hold on for a while. Like an infestation of mold, but you became someone who needs to be cleaned out.
ducki666@reddit
Up 2 you to make yourself replaceable easy as f 😚
Wide_Obligation4055@reddit
I have been made redundant once, along with 3000 others. For the benefit of the share price due to global politics having caused a company pivot. It had absolutely nothing to do with what I did or how well I did it, or anything else. My whole team was fired. It was great I got 6 months pay as redundancy after only working there 3.5 years, even kept my company phone 😁 Got a new job within a few weeks.
Factory__Lad@reddit
I think companies have got better at winkling out people who pursue this strategy.
My preferred metaphor is scraping barnacles off a ship, but there are also comparisons to arachnids spinning protective cocoons around themselves.
It’s also just kind of a losing game to become more and more of an expert on some janky system that management want to get rid of. You want to be doing stuff you’re actively interested in.
Wide_Obligation4055@reddit
Agreed you become part of the problem. If you can't sack Dave the Dev because production will go down without him, he is the problem, and he and the core system that requires him are ripe for replacement.
jtonl@reddit
I think he meant nuances that turned into institutional knowledge.
TheTroll007@reddit
Being the babysitter of my senior colleagues in the team. A. K. A. Compensating their incompetence.
Rude_Turnover568@reddit
I'm on a team right now where the lead doesn't even know a proper git branching strategy, His strategy was: have multiple people (in this case I think 7...) working on the exact same new Angular component in the application, have everyone branch off of develop into separate feature branches, have each person cherrypick commits from eachother's branch to sync things up *facepalm*. In the end, merge changes from some other release branch that was branched off of develop some time ago and not even properly synced up with the most recent changes.
I don't know how in tf this man has a job, I think I could do a far better job than him and I only have 4.5 YOE.
TheTroll007@reddit
I had to explain that if our job pod in Openshift gets OOM killed, there's no need to scale any of the two service pods or Elastic Cache in AWS. You need to scale the job pod's resources.
I can't sometimes. When this guys feet hurt he puts cream on his neck. 💀 I feel you.
vhubuo@reddit
To be the one who makes layoff desigions. It it's not a dev job
becauseSonance@reddit
Dad owns the company
empty-alt@reddit
Maybe this is a doomer take, but get very good at politicking. For every deploy, release notes. Blast those release notes everywhere. For every knew feature, metrics. Blast those metrics everywhere.
Even then, you could still get swept up in layoffs. The social contract we used to have back in the olden days, around employees having loyalty to businesses and businesses having loyalty to employees, has eroded. Balance the politicking with making friends with people who could get you a referral. This includes being friendly with your co-workers. It includes getting involved in online technical communities (outside of reddit).
meltedmantis@reddit
Play the politics.
HQMorganstern@reddit
Once the org gets large enough, the people firing do so by spreadsheet without ever having heard of most of the fired devs or managers. Better keep your CV polished and be ready to hop, than try to make yourself seen by people 4 levels above just so you can stay in a gutted team.
greengoldblue@reddit
Yeah, watch people from HR talk about layoff planning. You're just a row in a spreadsheet with a dollar amount.
LEGENDARY-TOAST@reddit
Given that the Oracle layoff was basically randomly selected...not much
MaiMee-_-@reddit
Good relationship with one or more people who is in the room that decides who gets cut.
Ability helps, but also being politically viable helps more.
gnomixa@reddit
Everyone is replaceable. If you want to have something that guarantees income, start something of your own. The way I see it everyone should have a side income stream - doesn’t have to be related to tech either. The sooner you start the better
gwenbeth@reddit
Knowing some dirt on the CEO?
AnimaLepton@reddit
And the best thing you can do is protect yourself financially. Live below your means and invest the difference. Build your skill set and be able to tell a story. Stay personable and in touch with past coworkers or managers for references and leads.
ilyas-inthe-cloud@reddit
Domain knowledge + owning critical systems + clear communication is the combo, but honestly? It's not about being irreplaceable. That mindset will burn you out.
What actually keeps you safe: you're not the only person who understands your systems. Documentation exists. You can hand off work without it blowing up in someone else's face.
The devs who get cut first are the ones who hoarded knowledge. 'Only I know how this works.' That's actually a red flag for leadership—it means you're a liability, not an asset.
Stay ready to move. Learn broadly. Build systems other people can maintain. That's what lasts.
wildmonkeymind@reddit
What makes a dev hard to replace is a poorly run organization. In a good org everyone is replaceable, and if you aren't that means you can't take a reasonable vacation, or go on maternity leave, or have a good work/life balance.
RedditNotFreeSpeech@reddit
The biggest mistake I made in my career was not holding multiple jobs at once. I've got friends who have done it and they're immune to layoffs/ready to retire.
whitetiger1208@reddit
Knowing the codebase very well because they worked on it a long time, for example. Doesnt really take much thinking, what a stupid question.
BP041@reddit
taste, mostly.
technical skills are tablestakes and increasingly commoditized -- AI writes passable code faster than most devs. what's harder to replace is the judgment about which problems are worth solving, which abstractions will age well, and when "good enough" is actually good enough.
the devs I've seen be most irreplaceable in practice are the ones who can walk into a system they didn't build and immediately form a mental model of where the bodies are buried. not just "how does this work" but "why does this work like THIS, and what decisions led here."
that context-building speed is still pretty human. the docs don't capture the tradeoffs, the slack history is incomplete, and the code itself usually just says what, not why.
originalchronoguy@reddit
Everyone is replaceable. Dont let the hubris cloud judgement. Even gatekeepers can be shown the door.
The answer is be the person that can bounce back into a new role as soon as possible. Be able to switch at a moment's notice. People don't like to hear that and come up with cope excuses.
GroundbreakingBig614@reddit
The strategy isn't to be irreplacable, it's to build towards a life situation where you don't have to think this way. You are giving these companies too much control over your life. It's easier said than done, but it's actually not that hard as well, saving as much money as possible while employed and making smart financial decisions compounds. Eventually you won't even want a job.
SOLID-DevMan@reddit
Honestly, having a code spaghetti that only u can read, other than that your replaceable
lolimouto_enjoyer@reddit
Networking aka nepotism in non-corporate speak.
LongSleevedPants@reddit
Leverage
Noah_Safely@reddit
Nothing, I'd say. Protect yourself by working towards financial independence; definitely have minimum 6mo emergency fund, a year is better lately. That means all expenses can be covered if you lose your job.
Don't rely on "job security" or expect a severance package, PTO payout etc.
vom-IT-coffin@reddit
The real answer is, everyone is replaceable. However, you want to be someone who tries to understand the problem, not just blindly implement ACs.
my-ka@reddit
If you are married to me of them
qdolan@reddit
Having extensive experience and expert knowledge in older system critical technologies that younger engineers don’t know a thing about and have no desire to learn can make you very hard to replace. Even AI can’t do much to help if there isn’t a lot of public discord about the technology for the AI to be trained on. I wouldn’t rely on it as a job security strategy though.
ManufacturerMotor282@reddit
Even tho ur are a developer with perfect skills doesn’t means ur safe nowadays:( it’s depends on the company also depends on ur manager:(
Windyvale@reddit
Literally nothing will stop you from being included in corporate layoffs. Unless you are on the executive team, you’re basically done.
Example: Oracle purged people with three decades of critical knowledge in the latest.
Google fired their python team, which even included someone sitting on the board that drives python development. They “weren’t replaceable,” and yet…poof. Moved all those jobs to Germany. Google has tons of critical infrastructure relying on what they wrote, and no one on Earth can make up the difference in knowledge at that level.
What will protect you is important knowledge that you can transfer elsewhere. It’s not so much protecting yourself from layoffs as protecting yourself from not having a job afterwards.
akc250@reddit
Even being on the executive team, you are not safe. As soon as a new CEO takes over, they often clean up shop and get rid of people for their own.
cd_to_homedir@reddit
Your last sentence is exactly on point. In this industry, job security is guaranteed by having an easily transferable set of knowledge. If the majority of your knowledge is tied to a job position, you're done.
onefutui2e@reddit
On your last point, part of that is spending some of your free time keeping up to date on the latest trends in your field. Then use some more time to skill up on it to at least be competent enough that if you do get the short end of the stick, you have a better chance at bouncing back.
It's not ideal. As someone who just doesn't have a whole ton of free time, I find that carving out the 2-3 hour blocks can be challenging. But that's the reality we're in now; it was only a few years ago that I could've probably spat in a hiring manager's lunch and get an offer the next day. It was smooth sailing for the most part.
You can also try to do some CV-driven development. As you learn new tech and frameworks, advocate for projects and try to get them greenlit. Then you can have your cake and eat it, too.
drazzzzzzzzzzz@reddit
I spend so much time mentoring on this.. being “irreplaceable” is the wrong mental model entirely, because it means you’re not scaling your impact and you LITERALLY CANT BE PROMOTED. The folks being kept and advancing are the ones being demonstrating resounding impact at the next level and moving around to solve the most important problems fluidly.
elusiveoso@reddit
Outside of unions, there isn't much you can do individually. Sure, you might make yourself important enough to survive a few rounds of layoffs, but the meter will run put eventually. At the end of the day, we are all just numbers on a balance sheet to some CFO somewhere.
_hephaestus@reddit
The thing is “hard to replace” hasn’t changed. Many of these top performers will be hard to replace, initiatives will suffer as a result of it. That just doesn’t mean job security. Your best bet is visibility and friends in high places, but that also may not be enough.
Outside-Storage-1523@reddit
Nothing. Unless you have good relationships with high level management and they are still there.
Wide_Obligation4055@reddit
Becoming the dev who always helps unblock others issues. The solutions guy and team player, who volunteers to work collaboratively with as many people and teams as possible. Gives regular talks and demos etc. But nobody is irreplaceable. Some of the best Devs I know have been made redundant.
supyonamesjosh@reddit
It’s amazing the implied answer people are missing. People get hired from references because the person who referenced them thought they did a good job. Everyone gets replaced so if you purposefully made life harder to stay there you are going to be screwed.
TheBear8878@reddit
Shut the fuck up chatgpt
CaesarBeaver@reddit
My company just went through a huge round (relative to the small size of the company) of layoffs. Here are the people who survived:
-Manager who is longest tenured engineer and still a big time contributor -Guys who produce a lot and are on the lower end of the salary range -Guys who are fun to be around and will stay up to close out the bar with the CEO at the all hands meetings
that’s it. with AI even domain knowledge and siloing doesn’t help.
Cahnis@reddit
Imo, I used to really dislike people that did that... but honestely? get two jobs.
Tokipudi@reddit
Only two kind of developers ever were really safe from being replaced:
The top 0.1% should still be safe, as they work on critical projects that can't just be replaced with AI yet with how niche they are.
The shitty devs can now safely be replaced, because any good dev with AI can understand a spaghetti codebase way faster than we could even 3 years ago and it is now way faster to make changes to it with LLMs.
Every other dev has never been hard to replace, and it's been proven many times in the past.
digggggggggg@reddit
Nobody was ever really safe. Companies make cuts all the time, often to some of the highest performing and tenured people. You don’t choose this career path for job security.
That said, have a good relationship with the people you work with and have a good track record of delivering good outcomes. That will decrease the likelihood that you, in particular, will be next on the chopping block.
mpanase@reddit
Correction: in corporations like Oracle somebody far far away from you who never even heard about you might decide that you are gone.
Those good relationships won't stop you from being fired in a corporation. But they will help you get a new role asap.
iamsuperhuman007@reddit
Absolutely nothing in all honesty, maybe the one thing is being great to work with - so someone at the decision table maybe says you’d be a great loss.
Everything and every knowledge is replaceable, so never assume you’re irreplaceable.
magichronx@reddit
Truthfully? Institutional knowledge is invaluable.
It's very hard to replace someone that knows your systems inside and out. Being able to quickly diagnose any issues and having a good read on feasibility of new features/updates is key
Merad@reddit
Not to be depressing but IME nothing protects you from layoffs. Layoff decisions at large companies come down from on high, your manager and even the director or whoever they report to don't find out about it until shortly before they pull you into a call to tell you you're gone. Honestly I'm not even sure that the people (or algorithms...) making the choices consider roles or performance so much as they just kind of thin the herd indiscriminately.
My company has done several smaller rounds of rounds of layoffs since Covid and after each there have been realizations that we have lost important knowledge or that we have to trim our roadmap because we no longer have the manpower to do everything. The managers I work with have their flaws they aren't stupid and I'm 99% confident they weren't consulted.
zica-do-reddit@reddit
In my experience: 1. You're the ultimate fixer, the one everyone looks at when the SEV1 hits. 2. You're a politician and kiss management's ass. 3. You're famous and are kept in the company for star power, despite contributing nothing.
Useful-Economist-432@reddit
Someone who levels up everyone else. Passion that is contagious, execution that is top notch, drive that propels them to solve problems without anyone asking, ability to engage others on and outside of their team to accomplish things, thirst for ever increasing knowledge that translates into action, influence that extends throughout the organization, extreme ownership, inclusivity and empathy, and overall someone who can be autonomous, collaborative, and a deeply grounded expert. This person doesn't base their career on any manager, they listen to all feedback while actioning on valid and helpful feedback. They readily give feedback to others in a helpful way. They operate above any management chain and when encountering bad leadership, move around, up, or out. They want to work for good leaders and leave bad ones.
Chezzymann@reddit
Nothing. You should always be practicing resume driven development and prioritizing work and jobs that will look good for the next job. Never invest in any work that won't make your skills more marketable.
ForestVagabond@reddit
Not using ChatGPT to write Reddit posts.
RageFucker_@reddit
Knowledge, the ability to learn quickly and the ability to produce quickly with high quality.
Every rock star dev that I've ever worked with had those 3 qualities. If they're willing to help others, then they go up another notch in my opinion.
ultraDross@reddit
"rock star dev" makes me cringe. You all talk like 15 year olds.
RageFucker_@reddit
Ironic, considering the only juvenile behavior in this comment thread is you and your friend getting offended by my choice of adjectives and then feeling either so self important or insecure that you need to post about it.
I don't care in the slightest if my generational slang triggers you.
swiftmerchant@reddit
I agree with RageFucker here, even though I cringed at the term “rock star dev” myself when they first started using it years ago. Maybe we got used to it. I used to cringe at “vibe coding” also, and now I am all aboard with it. Anyways, sad to see ageism discrimination on display.
RageFucker_@reddit
I'm not fond of the term "vibe coding" either, mostly because the term doesn't indicate what it actually means. Plus it's become an annoying fad, although I do see the usefulness of it for things like rapid prototyping.
swiftmerchant@reddit
I tend to lump AI assisted coding and context engineering into vibe coding because it’s just easier to say it lol
The fad is annoying, and I believe it is exactly this fad that forms some of the opinions expressed in this post, for example that AI is bad at documenting very large codebases or finding bugs in them, etc. Yeah, if you are vibe prompting in single sentences, don’t have a good approach to your prompts, and expecting it to produce quality results, it will not happen.
codescapes@reddit
Turn up drunk, sexually harass colleagues, trash the office - be a rockstar.
ultraDross@reddit
Hell ya bra 🤙
Princess_Azula_@reddit
It reads like a meme, to be honest.
Skittilybop@reddit
Most people don’t get laid off most of the time even in tech. There are constant waves of good economy, bad economy, offshore, onshore. Right now AI hype is making people think dev will be automated. The entry level dev pipeline will dry up and the demand for devs will return. There is always going to be more and more code, infra, and data being generated that sits there. Over time it falls apart, needs patching, security, and eventually a full on modernization. It will be a long time before even superclaude 9.0 can be trusted to handle these things, especially where legal compliance matters. Keep your head down and deliver good outcomes. Save money, network with other devs, keep your resume fresh.
phatmike595@reddit
There is no safe. I felt safe for the better part of 18 years as the long time tech lead and sole holder of all of the ancient knowledge for an enterprise saas platform. Long track record of mentorship, strong positive reputation with key clients, perfect reviews, bonuses, etc.
Then in the span of about 6 months, the product was moved to new business leaders who abruptly decided they wanted to sell off that business for scraps, and suddenly I was the long tenured, expensive guy with tons of institutional knowledge that was now a lot less valuable, and here I am on the market.
Safety these days looks more like keeping your skills updated and constantly working on your network so you've got options if and when it happens again.
KimmiG1@reddit
If you are an ok developer, are liked by your coworkers, and you are good at interviews, then you can always easily get a new job if you need it.
If you lack soft skills and interview skills, then you need to know enough about development, the domain you work in, and what users need, that you can make good decisions. This is more important now than ever with how ai is tiring us more into decision makers than implementers.
YahenP@reddit
If you're an ordinary employee, nothing can save you. You need to be a childhood friend, or even better, a relative, of the company owner, or at worst, of a senior executive. Or, at worst, own a controlling stake.
break_card@reddit
Bot
samsounder@reddit
Being able to deliver more in business value than you cost and having your bosses knownit
titanium_hydra@reddit
Security clearance
skidmark_zuckerberg@reddit
Not to be a doomer, but it doesn’t matter what you do. You are a line on a spreadsheet at a certain point. The best thing any of us can do is realize this. Once so, do your best to save a year or so worth of runway. So when/if it happens, you are comfortable while finding the next role. Spend a few hours a week studying and keeping yourself sharp and interview ready. Keep a list of the things you accomplished on the job as they come. Keep your resume updated. Be a 9-5 developer and nothing more. Do work you are proud of, but if you are going to work past 5, do something non work related that makes you a stronger interviewer.
I was laid off just recently actually. Myself along with 8 others and 2 more senior level managers. I’d estimate they probably added $1.5-$1.8 mil from their yearly budget with these cuts based on salaries (probably a lot more considering bonuses). The company had very strong financials, but we took private equity a few years ago because the CEO and a few other founders wanted a big payout. This is probably the case for a lot of software companies over the last 5 years. A company can profit, but still not profit enough for a private investment board. That’s when the spreadsheet comes out and they start cutting the highest paid people. In my case, they cut more senior people, and somehow people who were hired literally months ago weren’t affected. If you would’ve asked me a month ago if this company would ever lay anyone off, I’d tell you no fucking way. The CEO for years and years always bragged that he does not do lay offs, he finds “another way”.
Also a good friend of mine was laid off last year along with 50% of the dev team. They worked for a few years to rewrite a startup slop app that was doing poorly due to bugs and terrible UX. They got it done and the business was able to retain a few make or break contracts, and also get new ones. Once the profits started coming back, guess what? Bye.
roger_ducky@reddit
Oracle thing was a long time in coming.
Every time there’s a merger, people who are “duplicated” will be let go.
In this case, it’s basically prod support and their managers from Oracle Health, given the cloud migration effort succeeded.
You, as a IC or even management , can’t do anything to avoid this.
Only way to not get laid off is to rise into Oracle management ahead of it.
CherryChokePart@reddit
Balance sheets will never reflect how important an individual developer is.
engineered_academic@reddit
Nothing makes a developer hard to replace. We are all replaceable. Live your life within your means.
CrraveCloverPin@reddit
Creating problems only you know the solution to.
Desard1@reddit
Glue
SuccessAffectionate1@reddit
Being a technically skilled developer while also have a keen scene on delivery, what matters for the company and its customers, and how to properly plan, structure, slice and deliver complex software.
Management wants someone that can solve any technical challenge they present, give them a due date with some options as to what risk there is involved, and a plan on how to reach the deadline realistically. And finally, follow that plan and actually deliver.
I'm sorry but if you are a technically skilled developer that always says "I'm just fixing a few more things, and then I will be done" with no real deadline and no answer as to what BUSINESS VALUE that works bring, you will forever be locked at the bottom corporate layer.
Puzzleheaded-Bus1331@reddit
Developer hard to replace? You guys are just implementing stuff with super-documented technologies. Everyone can replace you. Your job is to write code in a way that makes you replaceable.
Unfair-Sleep-3022@reddit
What is "being safe"? For me, being safe is being able to get another job if I lose this one. Being safe is having savings to weather the storm.
Stop trusting companies and just accept it as a possibility.
drumnation@reddit
This might be a good place to bring up the topic of agent memory and domain knowledge. For the longest time, we experienced developers used our domain knowledge either in a moral way or in a gatekeeper-y way to keep our jobs.
When you work with AI that has a memory, you're teaching it domain knowledge the same way that we learn it when we work on code. If your employer owns that, as soon as you teach the agent well enough, they can just get rid of you. In a sort of digital Marxism kind of way?
I feel like we need to own the means of production, which might be the memories that make a model capable of working. The memories that provide the domain knowledge necessary to do the work well. An agent without that domain knowledge is way more expensive. and when the prices go up at the end of the year, that's going to matter. So I think we need to be having the conversation about who owns the memory and how do we keep our jobs safe by being the ones that own the memory and not our corporations.
Alternative-Wafer123@reddit
Swe are too naive to think the knowledge only they knew can protect themselves from being redundant, its all depends on your product biz value. If CEO doesn't care offshore all of you to India, quality and production issues are no longer the blockers.
MrMichaelJames@reddit
Nothing. Everyone is replaceable. No one is even just “hard” to replace. From experience where having to cut seniors with vast knowledge of products there is absolutely no one that is safe.
Expert-Reaction-7472@reddit
likability, ownership.
gemengelage@reddit
In my experience you can be the single point of failure for the entire company as a developer, but the people who decide layoffs (or the opposite, more ordinary case, pay raises) really have no clue about how important a single developer can be.
I've seen people leave companies who were more important than entire teams because their manager didn't want to give them a 5% pay raise.
sebf@reddit
Developers that do not consider that any legacy system is a « pile of garbage ».
thekwoka@reddit
Communication and quick understanding of how things work together to preemptively recognize friction points. Like if you have some goal and you are regularly blindsided by where that suddenly doesn't work or need to go back to figure stuff out (and never identify these early) then that's an issue.
thekwoka@reddit
tbf, what has Oracle shipped in the last 2 decades that people actually liked?
Dish-Live@reddit
Do good work, make your work visible to leadership, be a good person to talk to, and easy to deal with. Software devs frequently underestimate how important being a fun or at least tolerable person in the office matters.
All of that won’t save you for sure, but it makes it less likely to get laid off and makes finding the next gig easier.
Physical-Compote4594@reddit
Domain expertise
Business requirements expertise
Tribal (undocumented) knowledge
Judgement
We are not remotely close to solving the context governance problem for real projects with real teams over an extended period of time. Companies that are letting people go under the mistaken impression that they have solved this are going to be hurting badly, and quickly.
FlamingoVisible1947@reddit
Being the son of the CEO. That's it.
Nothing else makes you hard to replace. Even if you're the sole owner for the company's most important project, they can replace you much more easily than you think.
Low_Reputation_9893@reddit
Union - there are countries where you need to get unions approval to get fired.
Fabulous-Possible758@reddit
Kind of sad this response is so far down. Coders are so frickin' stupid in this regard. We think we're so clever and we're single-handedly gonna win some cat-and-mouse game where we're never gonna be replaced "cause no one can do what we do." Meanwhile we work for organizations that own everything we create and work relentlessly to automate everything we do and sit here gob-smacked that we've automated our own jobs away with no protections.
ButchDeanCA@reddit
I don’t think it’s true that all devs irrespective of level are equally likely to lose their jobs. I do believe the lower down the rung you are the higher the risk though.
What keeps you in the job? Something I never hear people mention: potential. Yes, being a SME and all that is great but showing consistent results with new feature implementation being otherwise innovative means that the business senses revenue potential and revenue is all they want.
Debt_Otherwise@reddit
I’m embracing AI tools. The thing AI tools aren’t great at is communication with humans and resolving issues.
Even asking an AI isn’t good enough because humans don’t trust it.
Make yourself trustworthy, with good enough answers people are happy with and you’ll find yourself indispensable.
Amazing-Effect4065@reddit
Plenty_Line2696@reddit
I'm not hard to replace, but whoever replaces me won't be as productive for quite a while before they know their way around.
As for replacing by AI, it can't do my job
malthuswaswrong@reddit
Strong domain knowledge of the company. Being humble. Being friendly. An understanding that work is transactional, and you must either increase revenue or cut cost enough to justify your salary. A good work ethic. Knowing when to stand firm and when to go along to get along. Having good ideas and knowing how to communicate those ideas both efficiently and effectively. Being trustworthy.
And finally, and most importantly, having a firm handshake.
TurbulentSocks@reddit
There's a lot of overthinking here.
A company will pay you as long as you contribute positive net value, and you're not a detriment to adding other positive net value contributors.
The best way to keep your employment is to demonstrate the above.
SnooTangerines4655@reddit
In the current scenario honestly I'm not sure if safety is what we should look for.
Employability is more important, are we ready for interviews because even top performers can get laid off, so it makes sense to be ready for interviews, make the most of the opportunities that come by and that hopefully that brings in better benefits as well.
NoConnection4298@reddit
I like how everyone think about themselves to reason an answer. Every developer is replaceable is the answer.
hell_razer18@reddit
basically being visible on whatever you do..nobody wants to hire someone without credibility..we all need to build our social capital so dont wait..
No_Gas_7526@reddit
adaptability and learning new tech quickly are key skills
hell_razer18@reddit
yea, I dont mean other skills are irrelevant but showing off you are adaptable and showing you learn new skills, by being visible, it spreads the positivity and can make us the domain expert
vibes000111@reddit
"Institutional" system knowledge - being the person who understands and owns a full system and can contribute to any part of it.
Personality - this doesn't apply as much in environments where you're fed JIRA tickets to complete on a 2-week schedule, or where you're very narrowly performance-managed as an engineer, but in environments where things move fast and tasks and projects are less clearly scoped, this is a huge factor. There are engineers who "get it" and can work with leadership to things done and there are people who don't. Some engineers just don't fit or even understand the environemnt and what's important and what isn't. It's a quality that's hard to sus out in interviews but if you're one of the people who get it, you'll be one of the few people who get the actually meaningful things done and you'll absolutely golden and difficult to replace.
Skill and output - it's fashionable to dismiss it but it matters so much. It's more diffuse than just being able to code but there's huge variation in engineering output between people who look exactly the same during the hiring process.
All of this is in environments in which someone is aware of your work of course and they have decision making influence. In the cases where someone on the C-level decides to cut a whole department, there just isn't anything anyone can do, it's just bad luck.
Powerful_Pickle8694@reddit
Nice try AI.
Turbulent_Idea7328@reddit
You will never be entirely safe, but from my experience there are two groups safer than others:
Key people with domain knowledge in important projects, even better if the project is undocumented legacy nobody in the company wants to work on
Friends of the boss. It's your boss who makes the list of people to let go and they will avoid firing people they have good relationship with.
Responsible_Month385@reddit
There’s a lot of hype and excitement and LLMs do basically one shot a lot of the easier tasks and that’s fine. But like with everything eventually there will be problems it can’t solve and that’s when demand for us will go up
ansraliant@reddit
I'd like to see AI replace my crippling depression
Eastern_Interest_908@reddit
Well for starters don't live in US.
TopSwagCode@reddit
Same as allways. AI is not perfect. Its just another offshore case
Sea_Lynx47@reddit
The people I've seen survive every round are the ones who can translate technical constraints into business language. Not the best coders, just the ones who make a PM go 'oh, that actually makes sense.' Nobody wants to lose their translator.
TackleInfinite1728@reddit
not a dick, fixes shit, helps others
SmartCustard9944@reddit
You are looking at it the wrong way.
Do the things that make you a valuable candidate for hire. That gives you optionality, because in the end, you have no control over these things.
TheLogicError@reddit
Having good judgement. Believe me, having someone that i can trust their judgement to make sound decisions is very difficult. That with the combination of communication/people skills is very hard to replace
physio_poet@reddit
Yes to this. Ive seen technically stronger engineers get let go over people who had better judgment about what to build and when to push back. At a small company especially, the person who saves you from building the wrong thing is worth more than the person who builds the right thing fastest.
TheLogicError@reddit
Not to get on the whole ai topic, but to me building/coding speed is becoming less of a factor that determines the value of an engineer with ai.
Mindless-Tiger2944@reddit
From my experience, it's the combination of three things: 1) Deep domain knowledge of critical systems (the undocumented stuff), 2) Ability to translate between technical and business stakeholders, and 3) Mentoring others so knowledge isn't siloed. The last one is key - if you're the only one who knows something, you're a bottleneck. If you've taught others, you've created institutional knowledge that's hard to lose.
Attila_22@reddit
First two I agree with, third is important but doesn’t make you hard to replace. If anything it makes it easier because potentially those you’re mentoring can step in if needed.
Adding on to that relationship building is important to survival. Not just with your boss/superiors but also with different teams across the org, it will allow you to collaborate and succeed on larger scale initiatives. Someone that leadership can just throw a project to and trust them to deliver end to end is invaluable. Also if your team gets cut, potentially you can jump to another one internally.
Mindless-Tiger2944@reddit
Good point. You're right - mentoring does make you easier to replace in the literal sense. I should clarify my thinking:
The "hard to replace" I'm talking about isn't about making yourself irreplaceable (which is toxic). It's about making the *team* resilient, which paradoxically makes *you* more valuable to leadership.
When you mentor others and document tribal knowledge, you're not creating your replacement - you're creating a team that can function without bottlenecks. That's what leadership values: teams that deliver consistently, not individuals who hoard knowledge.
Your point about relationship building across the org is spot on. That's actually the real "hard to replace" skill - being the person who can get things done across silos because people trust you. That's way harder to replicate than technical knowledge.
So maybe a better way to say it: Be the person who makes the team better, not the person who makes themselves indispensable. The former gets promoted, the latter gets laid off when they become a risk.
KlingonButtMasseuse@reddit
I think that only intereisciplinary knowledge. CS engineering should be secondary skill, your main should be medicine, biology, finance, energy...and even that wont save you from being laid off, because IT is just in a shitty place right now.
ZunoJ@reddit
Understanding the difference between good and bad design decisions. LLMs are pretty good at coding but they fail at designing the bigger picture, also they will comply with every demand from the user. Inexperienced devs will end up with products that don't scale easily, are unreliable in production, drive infra costs (biggest selling point) and are insecure. This is where we are still needed. It is time to transition to a kind of PO/Architect role. Not no hands on but way less. Like guiding that super into it college kid who never build business applications but knows the framework by heart through the process
Electronic_Anxiety91@reddit
Ignoring AI and prioritizing communication skills.
Few-Connection-7884@reddit
i had something like this happen when i changed my phone settings
East_Lettuce7143@reddit
Deep domain knowledge as you said. Nobody knows the well enough than the guy who has been in the company for 10+ years.
21_Wrath@reddit
Oracle fired mulitiple grey-beards like this with 20+ years at Oracle. Deep domain knowledge is not going to save you unless you're the only person who has the knowlege of that stuff, which is another bottleneck for the company.
Justbehind@reddit
Driving profit. And having everyone knowing that you do.
As long as you're ticket-solving support-function, you are easy to cut.
EfficientEstimate@reddit
I might say that a range of skills from design to postproduction is a good a start. Ability to have a product engineering mindset and able to translate business needs into viable and scalable solutions. This also embedded a good domain knowledge and a lot of thinking-forward mindset.
Then, it also depends on your company and their approach to employees.
For sure an engineer that does only code, without even thinking why they are doing it, accepting poor requirements, redefining best practices, not thinking about the product they are building…. It’s probably the first to go (and maybe even without the AI)
swiftmerchant@reddit
Visibility and perception of performance.
Visibility: Even if you’re the guy who is holding the ship from sinking, if senior leadership doesn’t know you, what you are working on, and doesn’t understand what value it brings to them, you are considered replaceable.
Perception: even if you’re visible, if the perception is that you are too slow and your projects completions are moving too slow, you will be listed for replacement.
air_thing@reddit
Institutional knowledge, something that is extremely difficult to cultivate at a large company without being there for 10 years.
Famous-Test-4795@reddit
Mutually assured destruction. If you get fired, your manager goes down too. You just have to collude in some shady shit.
Augentee@reddit
My feeling is "nothing that is an actual job skill", because you just need one dumb higher management guy thinking "outsourcing is easy" and most of the department is gone. Nowadays it's just about cutting costs and juggling how different expenses reflect in your earning reports. The people who stay have connections to someone important and suck up to those demands or other wild ideas.
I'm on a leadership training track and get placed in a lot of workshops. Biggest surprise (from a normal worker perspective): a lot of the trainers specifically tell us, that we can't be "kept hostage" by "experts" that seem irreplaceable. Everyone can be replaced and we should never feel bad about letting such a person go because when they suddenly fall sick for months or quit we will see that things always keep moving, even when the "experts" are unavailable.
papawish@reddit
They don't care. Engineering doesn't matter anymore. The richest man in the world drives a company with a P/E of 380.
It's all vibes down to the economic fundamentals
TwisterK@reddit
End to end implementation, from the non tech staff standpoint, asking u to implement a feature is as easy as asking a wish, get the timeline, negotiate a little, status update from time to time and feature done, aligned with what end user wants.
ehmpee@reddit
Delivering product, network, and peer feedback.
szansky@reddit
best answer is "legislation" because if they wanna fire you, they will the rest is just linkedin slop to make us feel better at night. question for you: how much of these "irreplaceable" skills is actually about surviving corporate bs, not writing good code?
marxolity@reddit
Adaptability
lordnacho666@reddit
Family ties to management would be number one.
Next, having internal political connections.
Further down the list is holding a lot of tacit knowledge about the system.
changhc@reddit
Being a bootlicker. AI or robots cannot lick boots after all! /j
colorpulse6@reddit
If your interested, I wrote an article about some of the things i'm seeing in the industry. Roles and value are being redefined and I think its important we all reconfigure what those are before its done for us.
Agile Anarchy
janet_planet4@reddit
nothing makes you safe, best bet is networking and savings, it’s stupidly hard finding work now
Crafty-Pool7864@reddit
“Business alignment” If the guy in charge isn’t technical (and this can happen anywhere in the chain) you will be judged on how much you are perceived to “get it”.
This is ridiculous. Engineers should be judged on their ability to, you know, engineer but the more the business struggles, the more it will value hustle.
Expect code quality to get even worse and to spend more time in meetings discussing ideas you know to be irrelevant.
Read up on consulting frameworks like top down communication and SCQA.
farzad_meow@reddit
to be able to plan larger scale features. being jack of all trades. ability to talk to non tech people. being able to generate good ideas.
being good at blue collar jobs.
ducki666@reddit
Have a plan B!