Nobody gets promoted for simplicity
aamederen
838 points
474 comments
March 04, 2026
Related Discussions
Found 5 related stories in 50.8ms across 3,471 title embeddings via pgvector HNSW
- Nobody Gets Promoted for Simplicity SerCe · 100 pts · March 04, 2026 · 97% similar
- Engineers do get promoted for writing simple code lalitmaganti · 18 pts · March 26, 2026 · 62% similar
- Good ideas do not need lots of lies in order to gain public acceptance (2008) sedev · 213 pts · April 02, 2026 · 45% similar
- The unwritten laws of software engineering AntonZ234 · 16 pts · March 17, 2026 · 44% similar
- AI didn't simplify software engineering: It just made bad engineering easier birdculture · 118 pts · March 14, 2026 · 44% similar
Discussion Highlights (20 comments)
codingdave
Sure they do. You just need to spell it out in business terms, not tech terms: "Reduced incidents by 80%", "Decreased costs by 40%", "Increased performance by 33% while decreasing server footprint by 25%" Simplicity for its own sake is not valued. The results of simplicity are highly valued.
LAC-Tech
I'm trying to sell simplicity to my target market, who I would call "semi-tech literate". Maybe it's stupid and I should sell whatever Forbes thinks is cool, but I just can't shake this feeling that I should be solving actual business problems.
ekjhgkejhgk
Bigger picture, when the thing you try to measure is subtle and difficult, you measure something obvious. That's what happening here.
lccerina
Dijkstra understood it 50 years ago, and again 26 years ago [1]. Nothing changes. Malpractice just propagate and there are zero incentives to build simple, small, and maintainable software. If the company you work for just push for unnecessary complexity, get out of there! Don't fold! [1]: https://www.cs.utexas.edu/~EWD/ewd13xx/EWD1305.PDF
moi2388
This was already a post 6 hours ago which is now [dead]. What happened?
blueboo
Skill issue—in management. Good leaders perceive workhorse vs showhorse spectrum, critical toil vs needless flash (and vice versa). It’s hard. Most fail at hard things. The industry in the aggregate will fail at hard things So you get articles like this.
hasbot
I interviewed at a company that used a simple project to screen candidates. It was implementing a cash register checkout system. The task was soo simple that I couldn't figure out what they were looking for. So I implemented the simplest thing possible. I got the job partially because they were impressed by my utterly simple solution. I helped evaluate other candidates given the exact same problem and it's amazing how some people dialed up the complexity to 11. None of them passed the screening.
darkwater
> Now, promotion time comes around. Engineer B’s work practically writes itself into a promotion packet: “Designed and implemented a scalable event-driven architecture, introduced a reusable abstraction layer adopted by multiple teams, and built a configuration framework enabling future extensibility.” That practically screams Staff+. > But for Engineer A’s work, there’s almost nothing to say. “Implemented feature X.” Three words. Her work was better. But it’s invisible because of how simple she made it look. You can’t write a compelling narrative about the thing you didn’t build. Nobody gets promoted for the complexity they avoided. Well, Engineer A's manager should help her writing a better version of her output. It's not easy, but it's their work. And if this simpler solution was actually better for the company, it should be highlighted how in terms that make sense for the business. I might be naive and too optimistic but good engineers with decent enough managers will stand out in the long run. That doesn't exclude that a few "bad" engineers can game their way up at the same time, even in functional organizations. though.
ineedasername
You need the tension between both, or else either approach at most levels of systems, whether its an app or a corporation, tends to lead to toxic failures modes. It could be something overbuilt, large organization structures. Brittle solutions that are highly performant until they break. Or products/offerings that don't grow for similar reasons, simpler-is-better, don't compete with yourself. Or those that grow the wrong way-- too many, much to manage, frailty through complexity, sku confusion. Alternatively, things that are allowed to grow with some leeway, some caution, and then pruned back. There's failure modes in any of these but the one I see most often is overreaching concern for any single one.
mikeocool
I’ve definitely consistently seen people who can take a wildly complex bug-ridden Rube Goldberg machine that was impossible to change and break it down into a simple understandable system get promoted. These people are generally the best engineers in the org and a get reputation for that.
domk
One of our interviews is a technical design question that asks the candidate to design a web-based system for public libraries. It explicitly tests for how simple they can keep it, starting at "a single small town library" scale and then changing the requirements to "every library in the country". The top ever performance was someone who answered that by estimating that even at max theoretical scale, all you need a medium sized server and Postgres.
Niko901ch
AI coding tools are making this problem worse in a subtle way. When an agent can generate a "scalable event-driven architecture" in 5 minutes, the build cost of complexity drops to near zero. But the maintenance cost doesn't. So now you get Engineer B's output even faster, with even more impressive-sounding abstractions, and the promotion packet writes itself in minutes too. Meanwhile the actual cost - debugging, onboarding, incident response at 3am - stays exactly the same or gets worse, because now nobody fully understands what was generated. The real test for simplicity has always been: can the next person who touches this code understand it without asking you? AI-generated complexity fails that test spectacularly.
gmuslera
Not just simplicity, we are wired towards additive solutions, not substractive ones, on a problem we try to add more elements instead of taking out existing ones. And are those additions what counts, what are seen, not the invisible, missing ones.
wellpast
Being able to solve problems with true simplicity is a master’s skill. The skill to recognize simplicity and its value is a skill as well. You can try to explain this OP’s concept to a stakeholder in a 1000 different sensible ways and you’ll get blinking deer-in-headlight eyes back at you. This skill is hard-earned and, so, rare. Therefore, many hierarchies are built on sufficient mediocrity top to bottom. Which works because bottom line doesn’t often matter in software dev anyway. And even when it does matter it’s multiplicatively rare to have a hierarchy or even the market that it tries to serve who can build, comprehend, handle high power::complexity systems, products, tools.
bell-cot
If I was an engineering manager in an org which actually valued getting sh*t done - vs. bragging rights, head counts, and PHB politics - then I'd notice within a month that Engineer A (who the article has shipping in a couple days) got far more done then Engineer B (who needed 3 weeks). And long before performance review time, I'd have mentioned further up that A was looking like a 5X engineer - best if we keep her happy.
mastermedo
Related: https://news.ycombinator.com/item?id=47242765
strickjb9
This reminds me of this post from 2013 -- https://mikehadlow.blogspot.com/2013/12/are-your-programmers... Essentially, there are two parallel teams, one is seen constantly huddling together, working late, fixing their (broken) service. The other team is quiet, leaves on time, their service never has serious issues. Which do you think looks better from the outside?
dalmo3
Long rant, but the author never defines what he means by "simple". He heavily hints at smaller changeset == simpler . Too often the smallest changeset is, yes, simple, but totally unaware of the surrounding context, breaks expectations and conventions, causes race conditions, etc. The good bit in tfa is near the end: > when someone asks “shouldn’t we future-proof this?”, don’t just cave and go add layers. Try: “Here’s what it would take to add that later if we need it, and here’s what it costs us to add it now. I think we wait.” You’re not pushing back, but showing you’ve done your homework. You considered the complexity and chose not to take it on.
csmpltn
People always overcomplicate this. Companies want to get the most out of their employees, for the least amount of money paid. Promotions are supposed to incentivise people to stay, rather than leave. If the company never promoted anyone, people would leave. So there needs to be a path for promoting people. But that process doesn’t have to be transparent, or consistent, or fair - in-fact it rarely is. You promote people who consistently overdeliver, on time, at or below cost, who are a pleasure to work with, who would benefit the company long term, who would be a pain to lose. A key precondition is that such people consistently get more done compared to other people with equal pay, otherwise, they don’t stand out and they are not promotion material. What counts as overdelivering will vary based on specific circumstances. It’s a subjective metric. Are you involved with a highly visible project, or are you working on some BS nobody would miss if it got axed? Are you part of a small team, or are you in a bloated, saturated org? Are you the go-to person when shit hits the fan, or are you a nobody people don’t talk to? Are you consistent, or are you vague and unpredictable? Does your work impact any relevant bottom lines, or are you just part of a cost centre? It really isn’t rocket science, for the most part.
randusername
Whatever is going on with each 'f' in this font is breaking my brain. Feels like the drunk goggles equivalent of dyslexia. I don't think this phenomenon is unique to programming. My plumber was explaining how he put in a manifold and centralized whole-house off valve accessible indoors and I was like, okay, thanks? I can just turn it off at the street. Only established professionals have the status and self-confidence to show restraint. I think that explains interviews.