Nobody gets promoted for simplicity

2026-03-0411:43894514terriblesoftware.org

We reward complexity and ignore simplicity. In interviews, design reviews, and promotions. Here’s how to fix it.

“Simplicity is a great virtue, but it requires hard work to achieve and education to appreciate. And to make matters worse, complexity sells better.” — Edsger Dijkstra

I think there’s something quietly screwing up a lot of engineering teams. In interviews, in promotion packets, in design reviews: the engineer who overbuilds gets a compelling narrative, but the one who ships the simplest thing that works gets… nothing.

This isn’t intentional, of course. Nobody sits down and says, “let’s make sure the people who over-engineer things get promoted!” But that’s what can happen (and it has been, over and over again) when companies evaluate work incorrectly.

Picture two engineers on the same team. Engineer A gets assigned a feature. She looks at the problem, considers a few options, and picks the simplest. A straightforward implementation, maybe 50 lines of code. Easy to read, easy to test, easy for the next person to pick up. It works. She ships it in a couple of days and moves on.

Engineer B gets a similar feature. He also looks at the problem, but he sees an opportunity to build something more “robust.” He introduces a new abstraction layer, creates a pub/sub system for communication between components, adds a configuration framework so the feature is “extensible” for future use cases. It takes three weeks. There are multiple PRs. Lots of excited emojis when he shares the document explaining all of this.

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.

Complexity looks smart. Not because it is, but because our systems are set up to reward it. And the incentive problem doesn’t start at promotion time. It starts before you even get the job.

Think about interviews. You’re in a system design round, and you propose a simple solution. A single database, a straightforward API, maybe a caching layer. The interviewer is like: “What about scalability? What if you have ten million users?” So you add services. You add queues. You add sharding. You draw more boxes on the whiteboard. The interviewer finally seems satisfied now.

What you just learned is that complexity impresses people. The simple answer wasn’t wrong. It just wasn’t interesting enough. And you might carry that lesson with you into your career. To be fair, interviewers sometimes have good reasons to push on scale; they want to see how you think under pressure and whether you understand distributed systems. But when the takeaway for the candidate is “simple wasn’t enough,” something’s off.

It also shows up in design reviews. An engineer proposes a clean, simple approach and gets hit with “shouldn’t we future-proof this?” So they go back and add layers they don’t need yet, abstractions for problems that might never materialize, flexibility for requirements nobody has asked for. Not because the problem demanded it, but because the room expected it.

I’ve seen engineers (and have been one myself) create abstractions to avoid duplicating a few lines of code, only to end up with something far harder to understand and maintain than the duplication ever was. Every time, it felt like the right thing to do. The code looked more “professional.” More engineered. But the users didn’t get their feature any faster, and the next engineer to touch it had to spend half a day understanding the abstraction before they could make any changes.

Now, let me be clear: complexity is sometimes the right call. If you’re processing millions of transactions, you might need distributed systems. If you have 10 teams working on the same product, you probably need service boundaries. When the problem is complex, the solution (probably) should be too!

The issue isn’t complexity itself. It’s unearned complexity. There’s a difference between “we’re hitting database limits and need to shard” and “we might hit database limits in three years, so let’s shard now.”

Some engineers understand this. And when you look at their code (and architecture), you think “well, yeah, of course.” There’s no magic, no cleverness, nothing that makes you feel stupid for not understanding it. And that’s exactly the point.

The actual path to seniority isn’t learning more tools and patterns, but learning when not to use them. Anyone can add complexity. It takes experience and confidence to leave it out.

So what do we actually do about this? Because saying “keep it simple” is easy. Changing incentive structures is harder.

If you’re an engineer, learn that simplicity needs to be made visible. The work doesn’t speak for itself; not because it’s not good, but because most systems aren’t designed to hear it.

Start with how you talk about your own work. “Implemented feature X” doesn’t mean much. But “evaluated three approaches including an event-driven architecture and a custom abstraction layer, determined that a straightforward implementation met all current and projected requirements, and shipped in two days with zero incidents over six months”, that’s the same simple work, just described in a way that captures the judgment behind it. The decision not to build something is a decision, an important one! Document it accordingly.

In design reviews, 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.

And yes, bring this up with your manager. Something like: “I want to make sure the way I document my work reflects the decisions I’m making, not just the code I’m writing. Can we talk about how to frame that for my next review?” Most managers will appreciate this because you’re making their job easier. You’re giving them language they can use to advocate for you.

Now, if you do all of this and your team still only promotes the person who builds the most elaborate system… that’s useful information too. It tells you something about where you work. Some cultures genuinely value simplicity. Others say they do, but reward the opposite. If you’re in the second kind, you can either play the game or find a place where good judgment is actually recognized. But at least you’ll know which one you’re in.

If you’re an engineering leader, this one’s on you more than anyone else. You set the incentives, whether you realize it or not. And the problem is that most promotion criteria are basically designed to reward complexity, even when they don’t intend to. “Impact” gets measured by the size and scope of what someone built, which more often than not matters! But what they avoided should also matter.

So start by changing the questions you ask. In design reviews, instead of “have we thought about scale?”, try “what’s the simplest version we could ship, and what specific signals would tell us we need something more complex?” That one question changes the game: it makes simplicity the default and puts the burden of proof on complexity, not the other way around!

In promotion discussions, push back when someone’s packet is basically a list of impressive-sounding systems. Ask: “Was all of that necessary? Did we actually need a pub/sub system here, or did it just look good on paper?” And when an engineer on your team ships something clean and simple, help them write the narrative. “Evaluated multiple approaches and chose the simplest one that solved the problem” is a compelling promotion case, but only if you actually treat it like one.

One more thing: pay attention to what you celebrate publicly. If every shout-out in your team channel is for the big, complex project, that’s what people will optimize for. Start recognizing the engineer who deleted code. The one who said “we don’t need this yet” and was right.

At the end of the day, if we keep rewarding complexity and ignoring simplicity, we shouldn’t be surprised when that’s exactly what we get. But the fix isn’t complicated. Which, I guess, is kind of the point.


Read the original article

Comments

  • By bilsbie 2026-03-0414:0842 reply

    I had an interview question. What would you do if two different people were emailing a spreadsheet back and forth to track something?

    I said I’d move them to google sheets. There was about five minutes of awkwardness after that as I was interviewing for software developer. I was supposed to talk about what kind of tool I’d build.

    I found it kind of eye opening but I’m still not sure what the right lesson to learn was.

    • By munchbunny 2026-03-0416:167 reply

      Having been both the interviewer and the candidate in this kind of situation, this is really a big interviewer training failure.

      The general way to handle this as an interviewer is really simple: acknowledge that the interviewee gave a good answer, but ask that for the purposes of evaluating their technical design skills that you'd like for them to design a new system/code a new implementation to solve this problem.

      If the candidate isn't willing to suspend disbelief for the exercise, then you can consider that alongside all of the other signals your interviewer team gets about the candidate. I generally take it as a negative signal, not because I need conformance, but because I need someone who can work through honest technical disagreements.

      As a candidate, what's worked for me before was to ask the interviewer if they'd prefer that I pretend ____ doesn't exist and come up with a new design, but it makes me question whether I want to join that team. IMO it's the systems design equivalent of the interviewer arguing with you about your valid algorithm because it's not the one the interviewer expects.

      • By jb3689 2026-03-0417:002 reply

        A good interviewer won’t be looking for a single solution to the problem. I’d expect them to entertain the Google Sheets answer - it’s good signal that the candidate will consider what already exists in the world. I’d rather extend the problem: the team is spending considerable time iterating with manual entry, what would you do?

        • By EthanHeilman 2026-03-0417:472 reply

          Complete agreement. "Excellent answer, that is what I would do as well, now what if we wanted to build it in-house?"

          • By SteveNuts 2026-03-0418:043 reply

            > "now what if we wanted to build it in-house?"

            "Well I would probably go home and work on my resume because that's a fool's errand."

            I hate going to work and reinventing wheels all day because the company I work for thinks it's so special that every business function needs a 100% tailored solution to solved problems. I much prefer working somewhere that's able to tailor business processes to conform to existing standards.

            But maybe that's just me.

            • By maccard 2026-03-0418:098 reply

              I’ve interviewed a few hundred people. Probably approaching a thousand, if not already. An interview is a scenario, and if you aren’t willing to engage in the scenario that we all agreed to partake in, that’s a huge warning sign that you’re going to be difficult later down the line. The point of the question is to have something remotely understandable for both sides to talk about, that’s it.

              • By wpietri 2026-03-0421:192 reply

                I'd call it an interviewer failure, not an interviewee failure.

                I absolutely want people I hire to be "difficult" when the moment calls for it. If the scenario is one where the right business/user choice is "let them keep using Google Sheets", then the answer I want is "Google Sheets seems fine to me", no matter what people with more power start out wanting. Too many developers have been encouraged to be minions, not professionals.

                Ditto for ones who act like everything is a nail for their coding hammer. A developer who can save a company a couple hundred thousand dollars by not turning something simple into a big coding project is a rare and precious commodity. Or should be, at least.

                The thing to do isn't to give demerits for "being difficult". The thing to do is to then add something to the scenario where they get into the thing you want them to get to. "For this, we need better access control than Google Sheets allows us." Or, "We need this to be more closely integrated with our accounting system."

                Unless, of course, what you're hiring for is the willingness to roll over for unreasonable requests from people with more power. Which, honestly, a lot of places are.

                • By Quarrelsome 2026-03-0422:591 reply

                  > I absolutely want people I hire to be "difficult" when the moment calls for it.

                  <3. What do you think makes the difference here in orgs that respect this and those that simply try to hire yesmen?

                  • By wpietri 2026-03-0423:271 reply

                    Humans are primates, and primate dominance dynamics are going to be the default absent some conscious choice otherwise. Our whole executive/worker dichotomy is a descendant of the British class system. (E.g., note that airlines specifically have a "business class".) And MBA-driven business culture is focused on short-term managerial interest, not societal value or long-term business success.

                    I think all of those tendencies come to the fore at any organization that doesn't have either a strong sense of mission or a sufficiently desperate need for success that they pay attention to material reality rather than social reality. With a possible partial exception for things like co-ops and other places where the culture is fundamentally different enough. E.g., Mondragon, or Zingerman's.

                    I think Google, back in its don't be evil/organize the world's information era, probably qualified. They started with a very strong mission-driven culture rooted in academics and engineering. It took a fair bit of time for MBA dogmas to make it like most other places. But from everything I hear, what once felt almost like a calling now is just another job.

                    • By Quarrelsome 2026-03-0423:531 reply

                      > MBA-driven business culture is focused on short-term managerial interest, not societal value or long-term business success.

                      This is a common refrain I also believe in and there's an interesting open question that comes up here about whether or not an engineering department should or shouldn't execute an order that intentionally destroys the product for short term gain.

                      • By wpietri 2026-03-050:151 reply

                        Agreed. To me that's related to the question of minions vs professionals.

                        If I go to a doctor and say, "Hey, please prescribe me a lot of morphine," the answer will be some version of "hell no". That's because doctors, even if you pay for the visit, have responsibilities to the patient, the profession, and society at large. Responsibilities that should not be overridden by money or power.

                        The same is true for actual engineers, like the ones that build bridges. But although we often call ourselves engineers, a lot of us don't act like it. We're often more like the minions in a supervillain's volcano lair: whatever the boss says, we do.

                        We could be different, though. There's the ACM code of ethics, for example: https://www.acm.org/code-of-ethics

                        Or the IEEE-CS code of ethics specifically for software: https://www.computer.org/education/code-of-ethics

                        We could, as a profession, agree to follow those. We could build an organization that supports people who do the right thing in the face of managerial pressure. We could censure those who don't. I'd love to see it happen, but I'm not going to hold my breath.

                        • By johnnyanmac 2026-03-058:53

                          >The same is true for actual engineers, like the ones that build bridges. But although we often call ourselves engineers, a lot of us don't act like it.

                          Because software is the wild west. Maybe there's some exceptions in medical tech, but there's no license at risk nor ethics assossiation to be ousted from (nor to vouch for us) if one day we receive something like: "hey, we need you to triangulate and calculate the parameters needed to bomb this children's hospital. Get to it".

                          Either we do it and go along with our day. Or we don't and get moved or fired.

                • By maccard 2026-03-0423:182 reply

                  > when the moment calls for it

                  In an interview when you’ve been explicitly asked to discuss a topic to have a technical discussion about something is not when the moment calls for it. Doubly so if you’ve been asked twice. If you’re not willing to put aside being technically correct when you’re trying to show off your best self, it’s pretty likely that when things get tough, you’ll behave the same.

                  > unless of course what you’re being for is the willingness to roll over for unreasonable requests from people with more power

                  D, do you think that someone saying “can we please talk about a technical topic, here’s an example we’re both likely familiar with” is looking for yes men? I actively want my team and coworkers to challenge me, but I absolutely don’t want to work with that person who appears at every meeting with a list of reasons why we shouldn’t do X.

                  • By wpietri 2026-03-050:271 reply

                    When I ask an interviewee a technical question, what I want is an answer that is correct technically.

                    If I want them to give me a different kind of technical answer, then I think it's on me to ask a question that actually requires what I'm looking for. It's not hard! All the Stripe interviewer had to say is, "Ok, great. It sounds like you have a good sense for system capacity. Now let's add another zero to all the load numbers." And then keep increasing orders of magnitude until they learn what they're looking to learn.

                    I am, just to be clear, not defending people being willfully obtuse or contrary jackasses. But that's not the scenario being described in either the Stripe story or the Google Sheets story I'm responding to. Two apparently reasonable people were asked technical questions and they gave answers that were the right thing for the business.

                    I think that's good and I like to hire people like that. I get lots of others don't, and I get the POSIWID reasons behind it. But I'm not going to pretend I think it's a healthy way to run an organization. And I also get that the people who like pretense and deference in interviews are not going to like me saying so. ¯\_(ツ)_/¯

                    • By maccard 2026-03-058:291 reply

                      > I am, just to be clear, not defending people being willfully obtuse or contrary jackasses

                      The comment I replied to said:

                      > "now what if we wanted to build it in-house?" > "Well I would probably go home and work on my resume because that's a fool's errand."

                      That’s not a different kind of correct, that’s just being a jackass.

                      • By wpietri 2026-03-0519:58

                        I read that as being his emotional reaction, not something he'd say in an interview context. This being an internet forum and all.

                        What I think he's sincere about is not wanting to work at a place that builds unnecessary stuff. And if people are asking for answers that require building unnecessary stuff, I think it's a reasonable inference that the place is not right for him.

                        I think interviewing is always a two-way street. If I got the feel that a place was going to have a lot of over-complicated code for me to deal with, or expected a lot of status-driven deference against actual user and business need, I wouldn't just give an interview-ending tart reply. But I would politely finish out the interview and then write them off unless there were other signals that redeemed the bad interview questions.

                  • By johnnyanmac 2026-03-058:581 reply

                    >do you think that someone saying “can we please talk about a technical topic, here’s an example we’re both likely familiar with” is looking for yes men?

                    Probably. You say "likely familiar with" but interviews are conducted as if it's a pop quiz. Which I never understood.

                    If you want to have a decently technical discussion, why not just tell me ahead of time what topic and I come to the interview with research? Why do I have to guess that we're talking about dyanmic programming and be punished if you really cared about graph traversal? (meanwhile the interview is for an embedded programmer. Definitely reflects what you'll really do on the job).

                    I really hate how few initerviews really felt like they were testing my knowledge related to proper fundamentals and not treated as some pseudo-SAT schlock.

                    • By maccard 2026-03-0514:45

                      > You say "likely familiar with" but interviews are conducted as if it's a pop quiz. Which I never understood.

                      Sure - the point of being familiar with it is so that we don't have to spend a chunk of the very limited time we have explaining a problem space, and we can talk about the technical stuff.

                      > If you want to have a decently technical discussion, why not just tell me ahead of time what topic and I come to the interview with research?

                      I try really hard to design interviews to not require take home work. I don't have stats to say whether this is right or not, but my goal as a HM is to try and keep the process to recruiter/HM call, 1/2 tech interviews and an interview with someone else on the team who is not a programmer (I hire in games so you're pretty much guaranteed to be working with Artists/Designers).

              • By Quarrelsome 2026-03-0418:233 reply

                but also maybe its a green flag in that this employee might see the wood for the trees and save the company a lot of money later down the line. In my experience, a lot of engineers can waste a lot of time dicking around re-inventing wheels and whatnot.

                While you consider it a huge warning sign, have you ever employed someone who would answer that way or are you assuming that you're not capable of making hiring mistakes? I can't help but think this "huge warning sign" might simply be a cognative bias where the interviewer is misdirecting their frustration in the poor design of their own process at the candidate [0].

                For reference, I think both answers are fine and both perspectives (its a positive or a negative) are equally valid. Its just that I don't think we can confidently state either way.

                [0] https://www.youtube.com/watch?v=rZ3ETK7-ZM8

                • By maccard 2026-03-0421:171 reply

                  > While you consider it a huge warning sign, have you ever employed someone who would answer that way or are you assuming that you're not capable of making hiring mistakes? I can't help but think this "huge warning sign" might simply be a cognative bias where the interviewer is misdirecting their frustration in the poor design of their own process at the candidate

                  Yes, I did. More than once. I always regretted it. Sure it could be a cognitive bias, but the entire interview process is essentially trying to figure out “can I work with this person”.

                  > I think both answers are fine and both perspectives are equally valid

                  I disagree - refusing to engage with the interview because you don’t like the question is perfectly valid to do, but don’t expect me to want to work with you over it. We’ve only got an hour, maximum, so any scenario we come up with is going to be contrived and simplified - if you can’t accept that then I’m going to make my decision based on that.

                  • By Quarrelsome 2026-03-0422:43

                    > Yes, I did. More than once. I always regretted it.

                    Fair.

                    > I disagree - refusing to engage with the interview because you don’t like the question is perfectly valid to do, but don’t expect me to want to work with you over it. We’ve only got an hour, maximum, so any scenario we come up with is going to be contrived and simplified - if you can’t accept that then I’m going to make my decision based on that.

                    Sure but lets not forget the other perspective. Candidates have to interview for a cumulative many hours over the course of a job hunt, only to have many interviewers batter them with an array of 1337code, pop quizes or contrived examples, none of which reflect the day to day work of the position they will fill. From their perspective their answer could well be a good one, albeit I agree that having some level of willingness to engage in the theatre is a positive sign.

                    In an auto-interview I recently did, I was given extremely limited time to "refactor" a bunch of code that was clearly broken. I chose not to refactor and instead fix the brokeness of the code, however I entirely expect to fail the interview because I fixed the problems instead of removing a couple of obviously duplicated code blocks. I can see why I would fail by not "following orders" but their async code was broken and the awful exception handling botched all their telemetry. From a "big picture" perspective I did do the right thing but it might be the case they're too stupid to know that I was doing the right thing (they're a multi-language company, so I assume they're less good at the language I specialise in).

                    Personally I think due to lack of industry organisation around certification or any sort of guild or union, we have a seriously difficult problem around hiring across the industry. In response to the extremely challenging task of vetting programmers I feel like orgs are simply fishing for reasons to disqualify candidates, as a reaction to this problem.

                    The rare positive experiences I've had interviewing were Amazon, who act like they want you to succeeed instead of fail or orgs that just half-ass it with low bar challenges, who seemingly accept that they're not capable of perfectly vetting a candidate.

                • By rat9988 2026-03-0419:281 reply

                  if you answer ""Well I would probably go home and work on my resume because that's a fool's errand." You probably are missing the wood and the trees.

                  • By Quarrelsome 2026-03-0421:071 reply

                    and if you hire only based on solely on employee compliance then you are also probably missing the wood for the trees. I've worked in such orgs and they're extremely vulnerable to cargo culting.

                    • By maccard 2026-03-0421:19

                      I’m not hiring on compliance. I’ve accepted that his answer is correct but asked for the purposes of the exercise if he can put that to a side so we can talk about it. I’ve worked with and hired people like this and they tend to turn every molehill into a mountain, which is just killer on a small team.

                • By pibaker 2026-03-0419:261 reply

                  I think you missed the point in GP's post. Not all organizations optimize for problem solving. Some organizations prefer subordinates who follow orders (or better, is able to read the mind of the boss to decipher what order he is actually making) than those who breaks out of the box and says ”just use gsuite, boss."

                  • By Quarrelsome 2026-03-0421:051 reply

                    sure but if its not a privately held business then using gsuite is better for the shareholders. Ultimately its the bosses choice, but for the board to fire them its worth knowing they were aware of being able to use gsuite instead of pissing away resource on a needless project.

                    • By maccard 2026-03-0421:201 reply

                      The question isn’t should we use gsuite, it’s can we talk about a tech problem. If you don’t understand that you’ve failed the interview.

                      • By Quarrelsome 2026-03-0422:551 reply

                        and if you don't understand my position then you've failed to interview. Some people just seek reasons to disqualify candidates and I think that's a pretty basic approach to interviewing. Remember, we all have a cognitive bias to hire ourselves and part of improving interviewing process is about trying to mitigate that by creating an environment where the interviewee can show the best of themselves, which may not necessarily reflect our own strengths. This is why pop quiz questions are kinda crap and while 1337code is better, its still kinda crap

                        • By maccard 2026-03-058:34

                          If the interview goes:

                          > What would you do if two different people were emailing a spreadsheet back and forth to track something?

                          > I’d use google sheets

                          > Excellent answer, that is what I would do as well, now what if we wanted to build it in-house?"

                          > Well I would probably go home and work on my resume because that's a fool's errand.

                          I’ve not failed to interview. The candidate has been a jerk. Could I have asked a better question? Sure. Could the candidate not have sneered at it and thrown a strop - definitely.

              • By theli0nheart 2026-03-0419:471 reply

                Most real-world scenarios aren't so arbitrary, and hardly any have a "right answer". If I had a candidate that broke out of the box of our interview to give a good answer, and that's not the answer I "want", I'd be more likely to believe the interview question is the problem, not the candidate.

                • By john_strinlai 2026-03-0421:561 reply

                  remember that we already did the "Excellent answer, that is what I would do as well, now what if we wanted to build it in-house?" part.

                  the "good answer" was already acknowledged, the "real-world scenario" answer was accepted.

                  the second part ("what if we wanted to build it in-house") is purely hypothetical to gauge how the interviewee would approach the specific technical challenge (shedding some of the "real-world" constraints so that the focus is technical).

                  if they again say "well that is dumb i would just use sheets", that is absolutely an interviewee problem.

                  • By johnnyanmac 2026-03-059:041 reply

                    Depends on the dyanmic. If you have an excellent candidate you're trying to poach, it becomes an intervewing problem because you're wasting both you and their time.

                    If they are a dime a dozen, then it becomes their problem. Whether or not they care it's their problem depends on their circumstance.

                    • By john_strinlai 2026-03-0514:551 reply

                      im sorry but i do not understand any of your comment.

                      >it becomes an intervewing problem because you're wasting both you and their time.

                      how is it a waste of time to ask a technical question in an interview?

                      >If you have an excellent candidate [...] If they are a dime a dozen

                      how do you determine if they are an excellent candidate or an average one without asking any technical questions in the interview?

                      >Whether or not they care it's their problem depends on their circumstance.

                      care about getting the job? why would they interview if they didnt care about getting the job?

                      • By maccard 2026-03-0517:58

                        I'm not OP but - an interview typically has a power imbalance. They have a job and you want the job, therefore the balance tips in their favor. If the candidate is a headhunted candidate (imagine a video game studio trying to hire a creative director from another studio) rather than a cold application, then the power is flipped and the company is trying to convince the candidate to join them.

              • By mv4 2026-03-0422:411 reply

                I also feel it's very easy for a good interviewer to bring the conversation back to the desired scenario.

                Anything from "imagine we are in a parallel universe where Google Sheets has not been invented yet" to "how would you design a google sheets competitor" would do the trick.

                Source: interviewed hundreds, incl FAANG.

                • By maccard 2026-03-0423:11

                  Yeah - for sure. When I’m interviewing I want to give the candidate the best chance of success and to show off both what they know and how they will work with me.

                  I generally give it three goes with questions like these - the initial ask, and two clarifications. If we’re not getting anywhere I move on.

              • By johnnyanmac 2026-03-058:49

                Depends on the dynamics here. Remember that an interview is 2-way.

                Someone giving an answer like "that's a silly, unrealistic scenario" is more likely than not someone who isn't in need for that job to begin with. I'm sure it's something many wish they could say, because the interview pipeline can be very grating. But not everyone needs to play that game.

              • By munchbunny 2026-03-0420:08

                > The point of the question is to have something remotely understandable for both sides to talk about, that’s it.

                I think a lot of people miss this point.

                Real projects are complex and have tons of context at the historic layer, political layer, and technical layer. If I have one hour to do the interview, I need to get to some shared context with the candidate quickly, or else it'll just be an hour of me whining about my job. And I usually don't need someone who is already a senior subject matter expert, so I'm not going to ask the type of question that is so far down the rabbit hole that we're in "wheels haven't been invented yet" territory.

                Fundamentally, that's why I'm asking a somewhat generic design question. I do also dig into how they navigated those layers in their past experience, but if I don't see them in action in some way then that's just missing signal I can't hire on, and that helps neither me nor the candidate.

                In another company or timeline perhaps I could run a different interview style, but often you're working within the constraints of both what the candidate is willing to do and what the company standardized on (which is my current situation).

              • By rudnevr 2026-03-0521:50

                did it ever occur to you that you might be living in a self-reinforcing feedback loop? how long ago have been in interviewee's shoes?

              • By AntiDyatlov 2026-03-0419:04

                I think the contrived scenarios you come up with need to not have a trivial solution. Everything about my brain is optimized for KISS, it breaks everything to turn down simple solutions to reach for something more complex.

            • By docmars 2026-03-0420:312 reply

              Think of it this way: they're paying you lots of money to build something boring that has a lot of prior art/research available to you for free. This could be the easiest money maker in your life.

              It's not your problem they're hellbent on building a new wheel. They're willing to pay you!

              Chances are, you've thought of your own pain points in whatever they've asked you to build and you've now got an opportunity to shine by solving them and demonstrate your expertise.

              • By pavlus 2026-03-0420:46

                There is a tool invented lately, that's very good for solving problems, that are well-researched and had been solved multiple times already. This tool is actually why there is a RAM shortage in the world right now.

                Some even say, this tool will replace a lot of workers soon(sic!).

              • By johnnyanmac 2026-03-059:061 reply

                But if you're already paid lots of money to work on stuff you actually care about... why bother?

                That's the goal of "fuck you" money. You go through the politics and pantomimes until you have the power to stop playning those games.

                • By docmars 2026-03-0616:58

                  Very true, that's the goal at least! Founders may just learn the hard way until the right people tell them no.

            • By Tepix 2026-03-0418:36

              Setup Etherpad

          • By 9rx 2026-03-0419:093 reply

            "That does sound like something nice to have. However, recreating Google Sheets is a substantial undertaking. First, we need to evaluate the business case for duplicating something that already exists to ensure that there is a net benefit in doing so. Second, we need to determine if the business has sufficient capital to see the project through."

            • By rat9988 2026-03-0419:291 reply

              There is a difference between being smart and acting smart.

              • By numpad0 2026-03-0422:261 reply

                I think that's exactly the point being made. __Acting__ smart gets you paid, not being smart, and that's like, not ideal.

                • By rat9988 2026-03-0513:561 reply

                  I wonder how you get paid if you fail the interview.

                  • By 9rx 2026-03-0621:05

                    You don't, hence why it pays to act smart.

            • By docmars 2026-03-0420:34

              I suspect a lot of businesses are going to make this mistake in the "SaaS is dead" era as companies try to eliminate $50k/mo subscriptions for boring business software, and they figure it's easier to burn AI tokens creating an internal solution they didn't plan on maintaining in the far future.

              Funny times we're in right now.

            • By BurningFrog 2026-03-0421:592 reply

              That's a good real world answer, but a terrible SWE interview answer.

              • By glaslong 2026-03-054:07

                Indeed, the proper response is now to vibe code 14 semi functional gsheets clones in parallel

              • By johnnyanmac 2026-03-059:07

                I guess nobody gets hired for simplicity either.

        • By BurningFrog 2026-03-0421:57

          The obvious way is to put the spreadsheet file on some shared network location.

          You still need some "locking" mechanism so two people don't try editing at the same time.

          Which again probably means Google Sheets is the best answer!

      • By 01284a7e 2026-03-0416:379 reply

        While I agree, how much training does anyone get as an interviewer? I spent 10+ years doing interviews at all sorts of orgs (including Fortune 500s, government, etc.) without a single hour of interviewer training.

        Now that I think about it, none of those organizations ever trained me at anything at all. Huh.

        • By david-gpu 2026-03-0417:011 reply

          > none of those organizations ever trained me at anything at all

          They trained us repeatedly not to bribe foreign government officials, even though I had zero access to anybody like that. There was also some mandatory training against harassing coworkers. I.e. "protect the company from lawsuits" training, not "here are some ideas for how to do your job more effectively" training. They were megacorps, too.

          • By Quarrelsome 2026-03-0418:341 reply

            > "protect the company from lawsuits

            Yeah that's proven by the fact they get degree educated level engineers and force feed them videos designed for people working entry level positions. Its a crying shame because there's actually a lot of interesting discussions around nuance that are just sidelined by these videos creating basic bitch absurdities:

            > During the lunch break, Jim has dipped his penis into Samantha's yoghurt

            > is this:

            > a) entirely acceptable, its just his culture

            > b) a borderline issue

            > c) something that someone should report to HR

            Instead of:

            Jane is developing feelings for someone that reports to her, they meet up outside of work and have a one-night stand. What should Jane do next?

            • By Paracompact 2026-03-0420:13

              > It's just his culture.

              Wrong. Her yogurt, her culture.

        • By munchbunny 2026-03-0416:41

          > While I agree, how much training does anyone get as an interviewer?

          TL;DR: not enough training.

          As a hiring manager, whenever we start a hiring period I have a conversation with my interviewer team about what qualities we're looking for and review the questions they plan to ask in order to normalize the process. Stuff like "what does a good answer look like, and why? what does a bad answer look like? is this something easy for a candidate to engage with or will you spend half the interview just explaining the background? is this coding question unreasonably hard?" and so on.

          I also look at the evaluations that interviewers give relative to other interviewers. Almost every hiring cycle I've done I've had to deal with some interviewer (all over the seniority spectrum) asking unreasonably hard questions.

        • By Sohcahtoa82 2026-03-0416:581 reply

          Yeah, I had no training on being an interviewer before I started doing interviews. My manager gave me some tips, and I came up with two security bug-hunt exercises (was hiring AppSec engineers), but that was it.

          Now, I wonder if I had rejected earlier candidates that I would have passed if I was a better interviewer.

          • By geoduck14 2026-03-0421:17

            The best advice I've had on interviewing is: Find an actual problem that your team is actually working through and ask the candidate how they would approach it.

            Then to jazz it up: simplify the proble. To get to the root stuff that needs to be covered (e.g. ignore creating Jira tickets and focus on connecting to a database with cross-refion replication). You also want it to be simple enough that it can be solved in <30 minutes

        • By nsxwolf 2026-03-0416:40

          Sounds common to have training in big tech but I never received any training either. Sometimes we’d discuss changes we wanted to make to the interview process, which suppose could be considered adjacent to training.

        • By elictronic 2026-03-0418:57

          Quite a bit based on the number of interviews performed at software companies. Being on either side of the fence gives you experience.

        • By sefrost 2026-03-0416:40

          Same here. I receive a training budget at some places but it goes unspent. Everything is self directed learning in my own time.

        • By dcminter 2026-03-0419:18

          That's unusual. Maybe that's a US thing? In Europe anywhere I've had to interview people I've received at least a couple of hours of training and then usually sat in as the shadow on at least one interview.

          Quality varies, but I think it's only the super small outfits where I've been expected to just wing it.

        • By HeyLaughingBoy 2026-03-050:21

          In my case? Two days I think (it was long ago). Two very eye-opening days.

        • By EthanHeilman 2026-03-0418:20

          Seriously? I worked at startups and research institutions. We trained people on interviews. I know Google used to invest quite a bit on interview training.

      • By moregrist 2026-03-0418:27

        I prefer pushing the constraints to motivate a different solution instead of asking them to do an unmotivated exercise.

        “Google Sheets is a great solution for two people, but let’s say the department expands and now it’s ten people. How does this change your answer?”

        It’s easy to break Google Sheets as a workflow by increasing the number of users, adding complex business logic, etc.

        It’s interesting to see what candidates come up with and how they think. Sometimes the solutions are genuinely interesting. Mostly they’re not, which is okay. If you don’t give yourself the opportunity to learn as an interviewer, you’re missing out.

      • By giancarlostoro 2026-03-0419:391 reply

        > this is really a big interviewer training failure.

        Vast majority of interviews are pretty bad. I can only remember one or two interviews that did not colossally suck in some way.

        • By dilyevsky 2026-03-0419:432 reply

          It takes a lot of practice to become good interviewer and majority of ICs especially at small shops never get the required mileage. I don't think i really knew what i was doing until like 100 sessions in...

          • By johnnyanmac 2026-03-059:142 reply

            That's a good part of why I want to stay in the IC track. I don't care about having the power to hire/fire people. That's a manager/lead skill in my eyes.

            Maybe we have a small conversation with candidates, but I see no reason I need to be quizing people on their talents.

            • By dilyevsky 2026-03-0520:331 reply

              > That's a manager/lead skill in my eyes.

              Every place i've seen where management fully usurped hiring had teams rapidly stacked with extremely poor performers. Not surprisingly so.

              Moreover, the days when you as an IC can sit quietly in a corner and churn out code from coffee and jira tickets are rapidly coming to an end. I would highly recommend focusing on those other parts of the job if you're not planning to retire soon, and hiring is part of your job as an SME, misplaced humility notwithstanding.

              • By johnnyanmac 2026-03-0520:57

                >Moreover, the days when you as an IC can sit quietly in a corner and churn out code from coffee and jira tickets are rapidly coming to an end.

                It was never really like that for me in my domain. But yes, that ended almost 3 years ago for me. I don't think hiring is on my horizon, but I'm looking at long term means to be my own boss.

                Just need a few more years first to prepare the jump and pay off debts.

            • By giancarlostoro 2026-03-0513:581 reply

              It's almost as if we're saying your resume means NOTHING. I have thought about how to solve this, and my brain comes up with some LinkedIn alternative specifically driven by developers vouching for other developers.

              • By dilyevsky 2026-03-0520:351 reply

                Your resume does mean nothing because anyone can just put anything on it. Sounds like you're basically reinventing reference checks from first principles

                • By johnnyanmac 2026-03-0520:551 reply

                  Its almost like we have 3-5+ rounds of interviews for some reason.

                  Meanwhile, I'm sure a 20 minute conversation can weed out 90+% of fake resumes. If the resume was the problem when hiring practices wouldn't be so optimized around trying to find the perfect resume.

                  • By dilyevsky 2026-03-0619:461 reply

                    Two things here:

                    1. You still need resume filtering because any public req will receive literally thousands of resumes most of which are poor fit. And that's after HR software did its thing btw. Can't spend 20m on thousands of applications most of which are low effort slop sent by folks who aren't even committed / competent enough to read and follow the req. This was already an issue 10 years ago before AI so I imagine it's at least 10 times worse now.

                    2. Once you're past that point, at least in my personal experience conducting hundreds of these sessions, most people are pretty bad at going into any kind of depth on stuff listed on their resume so your best strategy (that is if you want to hire anyone at all) is to ask generic questions that are role specific. At best you can tailor some of them to what's in the resume.

                    • By johnnyanmac 2026-03-0622:34

                      1. Of course. I'm not saying a basic filter isn't needed. But if you don't trust your basic filter, how is that going to go when you need to actually invest time interviewing the candidates? You're already off on the wrong foot because your looking for falsehoods instead of qualities.

                      2. It varies, but I don't think it's a lack of ability so much as liability. My industry is full of NDAs. I can't exactly give precise dates and timelines even for released products. So it's a weird dance of how much I can disclose and how much is a red flag to talk about (since inevitably, this place also probably had me sign an NDA as well).

                      I'm fine with generic role questions. It usually falls back to leetcode stuff, though.

          • By giancarlostoro 2026-03-0421:111 reply

            Thats fair, it definitely sucks for those seeking employment to have a really awful interview. How do you turn it around without looking like an a-hole…

            • By dilyevsky 2026-03-0421:42

              At google where i started interviewing it worked pretty well at least initially when recruiters assembled panels such that you only get 1-2 inexperienced interviewers out of 6. They also didn’t let you do screens as fresh interviewer where it’s much harder to get signal. Every other place i worked it was basically a crapshoot

      • By andix 2026-03-0417:341 reply

        If I would be the interviewer in this kind of situation, I would just follow up with something like this: "that might be a good option, but let's assume you need to build a tool to replace those excel sheets, ..."

        • By thereisnospork 2026-03-0420:28

          Surprisingly often you do get an interviewee who just won't accept the premise of the hypothetical. I've had people get hung up on the equivalent of 'but I'd just use excel' even with prompting/nudging/explanation that this is an exercise.

      • By QuiEgo 2026-03-051:09

        “Good answer! Now, assume we’re in a regulatory environment where we can’t use Google for legal reasons, and must develop a solution in house. With that new constraint, how would you solve the problem?”

      • By vegabook 2026-03-0416:47

        “Yeah okay forget sense, show me how good you are at budget protecting overdesign”

    • By tyre 2026-03-0414:1922 reply

      So my cofounder was talking to Stripe about an acquihire (this was after I’d left.) As part of it, he had to do a systems design interview.

      He got the prompt, asked questions about throughput requirements (etc.), and said, “okay, I’d put it all in Postgres.” He was correct! Postgres could more than handle the load.

      He gets a call from Patrick Collison saying that he failed the interview and asking what happened. He explained himself, to which Patrick said, okay, well yes you might be right but you also understand what the point of the interview is.

      They made him do it again and he passed.

      • By wongarsu 2026-03-0414:454 reply

        If the point of the interview was to test if the candidate can design something that can handle google-scale problems then maybe the interviewer shouldn't state throughput and availability requirements that can be satisfied by postgres

        • By inerte 2026-03-0418:26

          Maybe 10 years ago I interviewed both for Netflix and Facebook.

          At Netflix, I used a state machine library to handle the project they gave me. Got rejected because I didn't show I knew raw JavaScript enough.

          At Facebook, I wrote a calendar dropdown from scratch. Got rejected because I should have used a library.

          Interviews sometimes is just a lottery...

          Yes I know both companies should have set the expectation, but you can set the expectation for EVERYTHING, otherwise you give candidates all the answers you're expecting. There's always going to be some chaos due to the huge number of variables.

        • By Aurornis 2026-03-0415:123 reply

          Postgres might have been a perfect answer, but the candidate needs to explain why and how.

          The purpose of the interview is for the candidate to demonstrate their thought process and ability to communicate it. “Just use Postgres” doesn’t do that.

          This would be more obvious if it was a LeetCode problem and the candidate just regurgitated an algorithm from memory without explaining anything about it. Yeah it’s technically the right answer but the interviewer can’t tell if you actually understand what you’re talking about or if you just happened to memorize and answer that works.

          Interviews are about communication and demonstrating thought process.

          • By wadadadad 2026-03-0415:231 reply

            100% interviews are about communication and demonstrating thought process; after going through some rounds of interviewing candidates myself, any candidate who can adequately explain what they're thinking and how they arrive at their conclusions will be able to demonstrate their skills much more thoroughly than 'just use Postgres'.

            That being said, it's also on the ones giving the interviews to push the candidates and ensure that they really are receiving the applicants best. The interviewers don't want to miss potentially great candidates (interviews are hard and nerve-wracking, and engineers aren't known for their social performance), and thus sometimes need to help nudge the candidates in the right direction.

            • By Aurornis 2026-03-0416:33

              Fully agreed on the point that interviewers should prompt and push candidates in the right direction.

              The best thing someone can do to learn how to perform well in interviews is to sit on the other side where you’re interviewing candidates. Some candidates will get stuck on arguing some irrelevant point or trying to fight against the interview question for too long in an interview. Once you see how much it hurts the interview process you learn to never do it yourself.

          • By jimmydddd 2026-03-0415:451 reply

            I went to law school and a few of us students were engineers. For our first set of essay exams, the professors all instructed us to "just answer the legal question" and not include extra analysis. After the exam, many of the engineers didn't do well because the professors *actually* wanted you to weave the whole sylabus into your answer (i.e., discuss hypotheticals that were not actually part of the question asked), not just answer the question. After that, we were fine.

            • By rawgabbit 2026-03-0415:581 reply

              This is also what I learned the hard way. In many situations the customer doesn’t say what they really want. There are a lot of reasons why. I usually have to write down a lot of hypotheticals. If X is the primary concern, we should do Y. If U is the issue, we should do V.

              • By laserlight 2026-03-0418:07

                I wouldn't expect customers to say what they really want. They are looking for faster horses after all. But law professors? Among all professors, law professors should be the ones saying what they really want.

          • By zelphirkalt 2026-03-0510:47

            Sadly, many interviewers will be fine with someone who simply memorized without actually understanding much, and not fine with someone needing to think and slowly coming to a solution, being able to explain it, because oh that did take more time than the interviewer had allotted for the task. Sadly, many interviewers and the adjacent HR departments are utterly failing in the communications part too.

        • By jghn 2026-03-0415:551 reply

          It's both.

          As a hiring manager I've had situations like this arise because there was a gap in my plan and I didn't realize it. When those come up, we thank them for their cleverness, apologize to the candidate, reframe the situation, and give them another shot.

          But also sometimes I leave intentional ambiguity in the plan. Part of the goal is to see if they have a degree of common sense commensurate to their level. If they're interviewing for a high level position, I'd expect them to be able to spot silly flaws and push back that perhaps the whole problem needs rethinking. And of course, I also expect them to know the brute force solution as well. Do they only know one? Both? Let's fine out.

          • By sampo 2026-03-0417:271 reply

            > and give them another shot

            Isn't this rather giving yourself another shot.

            • By jghn 2026-03-0417:36

              Of course, but the point is you don't fail a candidate for this. Some people do, including some of the examples to which I was replying

        • By wiseowise 2026-03-0416:52

          The point is that you’re supposed to kiss clown’s ring and do the dance.

      • By Folcon 2026-03-0414:215 reply

        I feel like if that's the thought process, that should be stated up front

        There's a ton of incredibly talented neurodivergent people in our ecosystem who would trip up on that question just because of how it's framed

        Because how is the interviewee to know if you're testing for the technically sophisticated answer no one in their right mind would ever write or the pragmatic one?

        • By wreath 2026-03-0414:411 reply

          I dont even think you need to be neurodivergent or anything to answer this question like the parent’s cofounder did.

          From one side, we call ourselves problem solvers, on the other hand we are not satisfied with simple solutions to these problems. If im interviewing for a job, i should be expected to behave and solve hypothetical problems the way id do it on the job. If that screws up your script, you probably suck at hiring and communicating your expectations.

          • By johnnyanmac 2026-03-059:19

            We also aren't mind readers and interviews are a crapshoot. Some companies do in fact want you leveraging tools and API's in your solutions. Some want to probe your foundational technical knowledge. Ideally they will poke you towards the answer they want, but not always. But few will let you know ahead of time for some reason.

        • By wongarsu 2026-03-0414:461 reply

          Or just add a couple zeros to all the requirements until postgres is a worse solution than whatever the interviewer envisions. Isn't that the point of stating throughput requirements?

          • By wpietri 2026-03-0421:27

            Right? I'll often structure interview questions like this. I give a basic problem, hoping for a basic answer. Then I add complexity, seeing how they respond.

            In my experience, it's much easier to train somebody on how to scale a basic system up in response to need than it is to get somebody who favors complexity to cut it back.

        • By mrweasel 2026-03-0415:31

          It's probably more about your mindset, than about being neurodivergent vs. neurotypical. If you care more about maintainability and operations, there's a whole host of solutions you'd never built.

        • By giveaccountpls 2026-03-0418:12

          > neurodivergent people in our ecosystem who would trip up on that question just because of how it's framed

          If anything, it's neurodivergent interviewers. If I insisted on a different design I'd either ask a question that's not solved by "just use postgres" or follow up with "ok, that would work, but what if <something that would prevent postgres from working>". Just failing a candidate for a correct answer is a prime example of why interviewing is so bad.

        • By anthonypasq 2026-03-0416:11

          if your brain short-circuits at ambiguity, or you're completely incapable of understanding intent and you take everything literally, that is a negative hiring signal.

      • By fatnoah 2026-03-0414:561 reply

        > He got the prompt, asked questions about throughput requirements (etc.), and said, “okay, I’d put it all in Postgres.” He was correct! Postgres could more than handle the load.

        I had this happen in a Google interview. I did back of the envelope math on data size and request volume and everything (4 million daily events, spread across a similar number of buckets) and very little was required beyond that to meet performance, reliability, and time/space complexity requirements. Most of the interview was the interviewer asking "what about" questions, me explaining how the simple design handled that, and the interviewer agreeing. I passed, but with "leans" vs. "strong" feedback.

        • By btilly 2026-03-0417:341 reply

          To be fair, the simple answer is not so simple within Google.

          The issue is that Google achieves reliability by insisting on n+2/n+1. Globally your service is in at least 2 more data centers than is required for full load. In each region in at least 1 more data center than is required for full load.

          If you're using the Google toolchain, all of the scalability and fallover problems are automatically handled by the layers that you're relying on. Which everyone expects you to use, because they are already integrated into the environment.

          But if you go to use Postgres as a data storage layer, then you also need to take care of replication, failover, backup, and make sure that this is integrated with the automated systems that Google already has to detect when this is needed. Even after you've done that, people from outside of your team will need to be convinced that you've done that. Simply because you're doing things differently, you'll get extra scrutiny.

          As a result, even if Postgres would have worked perfectly well, it is usually not the optimal answer for someone who is working within Google's environment. Don't think of it in terms of, "Does this do the job?" Think about it in terms of, "Can those in the broader organization easily certify that this does the job?" That certification is easier when you use standardized parts that are themselves already certified within the organization.

          My guess is that your interviewer was aware of this. And was left with, "What about that question that I didn't think to ask you about?"

          • By dmurray 2026-03-0419:312 reply

            If you're interviewing at Google, the expected answer to the interview question can't be to use Google's internal tools. "Use Postgres" is the standardized, understandable answer for anyone outside Google who needs to solve Postgres-shaped and Postgres-sized problems.

            • By btilly 2026-03-0515:31

              No, that can't be the expected answer. And indeed, use Postgres was an accepted answer.

              But when the interviewer keeps pushing back, that's an invitation for the candidate to ask why, and ask what about the environment might make that not a good fit within Google. Doing that gives a stronger hire signal.

            • By fatnoah 2026-03-0419:38

              FWIW, that was the second time I interviewed at Google. The first time, which resulted in strong yes across the board at L7, the first system design was to design Youtube Video Upload. The second was a more practical problem about replacing a high-volume logging component where correctness was critical but environment was space-constrained (i.e. no ability to run old + new in parallel).

              Those were my favorite system design rounds ever, thanks to the problems being interesting and the interviewers also being very dynamic. It was also pre-Covid, so it was just awesome whiteboard design sessions.

              sigh I miss in-person interviews.

      • By twodave 2026-03-0416:20

        This is just an indication that it's a poor interviewing technique. If you ask a question expecting the answer to be predictable then you had better cover all possible ambiguity in leading the candidate to the answer you want to hear. But then you're no longer asking the candidate to be creative, are you? As an interviewer I might be more inclined to allow such an answer and then follow up with questions of my own to test the limits of the candidate's knowledge of and confidence in Postgres as a technical choice for serving all the different constraints of the problem space. This way either I discover how well-reasoned the answer is or else (for a good candidate) it prompts them to adjust the design to better fit the problem. In no case would I expect they need to fit their answer into some key and then scold them for not playing along with my imaginary game.

      • By Gooblebrai 2026-03-0415:081 reply

        > They made him do it again and he passed

        I'd assume that if he got a call from Patrick himself and a second opportunity to get interviewed, that's already a cue for interviewers to pass him regardless of what he says?

        • By coldtrait 2026-03-0416:051 reply

          That was what I felt too. Why even need an interview for an acquihire when you have a direct link with the founder/CEO?

          • By baobabKoodaa 2026-03-0421:41

            To maintain the illusion of meritocracy

      • By eptcyka 2026-03-0414:541 reply

        If they don’t want to hear the correct answer, let them modify the question to exclude postgres answers. Interviews are a 2 way street, you will miss out on great candidates by being this stupid.

        • By lo_zamoyski 2026-03-0416:12

          On the one hand, interviewers can suck. They can be uninterested in understanding and embrace instead the role of a trigger-happy interrogator looking not for a good response - something that may very well require effort and considering new ideas on the part of the interviewer - but an excuse to cross you off the list. The interview begins to look like a game of "Guess what I'm thinking". Interviews should simulate a colleague asking you for help.

          On the other hand, interviewees can give poor answers with no explanation. The interviewer should press for an explanation in those cases, of course, but perhaps some are trying to see if the interviewee instinctively provides at least some basic rationale behind the answer without having to be prodded each time, in which case it is a matter of communication habits and skills. Communication is essential, and it is under-emphasized and under-taught in so-called 'STEM' curricula.

      • By smallnix 2026-03-0414:371 reply

        > you also understand what the point of the interview is

        Exactly, it's also a test of ability to conform. Especially useful to weed out rogue behavior picked up in startups.

        • By jkubicek 2026-03-0414:441 reply

          No, the point was to demonstrate how you’d design a complex system.

          If a valid answer was “just use Postgres” then it just wasn’t a very good interview question.

          In real life, the answer almost certainly would be “just use Postgres” and everyone would be happy.

          • By chrisandchris 2026-03-0414:54

            No, it was a perfectly fine question IMHO. it is a broken incentive - it is expected that you design complex systems regardless whether they are useful or not. Try to interview for the role you have to fill, nor for a role you a dreaming you would love to have whenever you're Google2.

            If the interview wants you to think about stuff that never happens in your role, I think it is a sign that in your role, you're expected to solve the problems like in the interview.

      • By MrBuddyCasino 2026-03-0414:462 reply

        > They made him do it again and he passed.

        I would hire the "just use postgres" dude in a heartbeat without re-testing, if the numbers made sense, and perhaps give a stern talking-to to the interviewers. But then again I'm not a unicorn founder, so what do I know.

        • By lucianbr 2026-03-0415:171 reply

          My read of the story is that the decision to hire was already made, the interviewer goofed but was then set on the right track by his boss.

          • By layer8 2026-03-0416:45

            The question was bad if using Postgres would really be a better solution than designing and implementing a bespoke system, under the stated constraints. Either they should provide a better problem statement, or at least immediately follow up with “okay, suppose you can’t make use of an existing system like Postgres for $reasons”.

        • By PKop 2026-03-0414:511 reply

          Eh, it's a good answer and shows good instincts, but they still want to know how he would design a system if one was necessary. There's no need to be ridiculous about any of this from either perspective, which is why it should never have been a "fail" without the original interviewer simply saying "That's a solid answer now tell me what you would do if you had to build something new". I mean look how much time he wasted for everyone including his own CEO by being stubborn about it.

          • By MrBuddyCasino 2026-03-0415:123 reply

            If the numbers can be satisfied by a Postgres then thats the correct answer. The interviewers fucked up, because they sized the problem wrongly.

            This is the same issue that was prevalent when the industry switched from HDD to SSD: some system design questions suddenly became trivial, because the IOPS went up by magnitudes. This is not a failure of the interviewees, who correctly went with the times, but a failure of the interviewers.

            • By PKop 2026-03-050:07

              > then that's the correct answer.

              Obviously. But they don't care about that answer, they care about the design of a new system so I'm saying the interviewer is dumb for not just asking directly for the solution he wants to see (while also giving credit for the original right answer).

              The interviewee is dumb (if he wants the job) to not know this is what they want to hear, so he can just say "I really do think Postgres would satisfy the requirements here, but as an alternative a custom solution would look like.."

              What is the point of not demonstrating your own well rounded knowledge when given the opportunity? Is it not obvious what they want to hear? Then why not tell them, again given that he did want the job

            • By danenania 2026-03-0415:591 reply

              The correct answer is “Postgres would handle it, but if it needed to scale even higher, I’d…”

              The point of a system design interview is to have a discussion that examines possibilities and tradeoffs.

              • By darkwater 2026-03-0416:49

                And people weeded out by this kind of questions are probably rightfully so. I for one could not ever work with someone that says "my answer is correct, period.". Part of the answer and the discussions made by mature individuals must ask for feedback, incorporate it in your design, be open to compromises sometimes but also to die on a hill when it makes sense. And in an interview context, you ought to show the hiring manager all these faces.

                Then, there are hiring managers that suck and you might be discarded because you didn't follow the script. Sure, but that's a bullet you dodged.

            • By LPisGood 2026-03-0415:43

              What kinds of system design questions got destroyed?

      • By h3lp 2026-03-0419:22

        Great example, and a lost opportunity in the interview---they should have asked "What are the requirements that would invalidate this answer? and what would you design if the requirements were changed in this way?". Maybe even "how long is the runway for your Progress solution if we consider future scaling up of the requirements"

      • By pjmlp 2026-03-0415:08

        This is the part I would say thank you, and pass on the opportunity.

        And yes, I have done this on a second Google interview about 15 years ago.

      • By anal_reactor 2026-03-0415:01

        I realized that my manager really confuses complexity with robustness. Case in point: we have a very complicated script that runs at deployment time to determine the address of the database. It's been the source of a few incidents - database wasn't discovered because it was restarting and the script passed an empty string instead of stopping the deployment, script failed because of python update and empty configuration was passed, shit like that. I've been arguing "bro why can't we make terraform create a config file with all the addresses that is directly passed to the app at deployment, or better yet, just copy-paste the database addresses into a file in the repo because we change something there once a year at maximum" but my manager took it as a sign of incompetence and my inability to understand complex systems.

        I feel like lots of people just follow the happy path and don't understand that complexity incurs real cost.

      • By badosu 2026-03-0414:445 reply

        Sorry, I didn't get it. What was the 'right' answer?

        • By munchbunny 2026-03-0416:361 reply

          It depends on the situation.

          Sometimes you just have a bad interviewer who is looking for something specific from you but isn't telling you. If you're experienced in these interviews, you catch the signs and adapt by asking questions to suss out which direction the interviewer wants to take it.

          Sometimes your answer is plausible but the interviewer wants to see you justify it. Sometimes your answer is wrong but the interviewer wants to see if you can reason your way through it, and maybe come up with an alternative.

          If you're junior/inexperienced, it's often hard to tell and it'll feel arbitrary/unfair, and unfortunately that's just how it goes. As a more senior/experienced candidate, you can often figure out which situation you're in by asking questions to feel out the interviewer and then try to pivot during the interview, though it still takes valuable minutes out of the interview that you could have otherwise spent showing your competence.

        • By wccrawford 2026-03-0415:371 reply

          "Postgres, because..."

          They want a conversation to see how you think, not an actual answer.

          Which is stupid, because they asked a question that the person didn't need to think to answer. So they didn't get to see them think.

        • By alistairSH 2026-03-0417:53

          Apparently some combo of kissing the arse and reading the mind of the interviewer...

        • By koakuma-chan 2026-03-0414:501 reply

          distributed virtual abstract factory

        • By sejje 2026-03-0416:20

          nosql on serverless

      • By PKop 2026-03-0414:48

        It's crazy the original interviewer allowed it to come to this which sounds like a waste of time for everyone involved, instead of simply saying; "Very good that is a legitimate solution to the problem. Now let's pretend you have to build something new, what would you do?"

        Why on Earth did the company have to be so willingly obtuse and stupid about it including what sounds like the CEO (well at least he gave him another shot, but there doesn't need to be implicit assumptions about the "point of the interview", just come out and address it head on explicitly.)

      • By bhk 2026-03-0421:29

        Let me guess: the point of the interview was to see if he was a "team player".

      • By flubijeq 2026-03-0415:531 reply

        The best way to get promoted at stripe is just self-marketing and social manipulation. Good engineers are leaving meanwhile tecnical leadership is being replaced with designers and marketers. Internal performance metrics are heavily manipulated as well. Patrick has completely surrounded himself with extreme sycophants at this point - he has no idea what is actually going on in his company beyond curated metrics produced by manipulative sociopaths.

        • By getnormality 2026-03-0415:591 reply

          Patrick Collison sounds like a lovely, trusting, scientifically-minded man who needs to learn the constructive power of destruction. The power of rage and contempt for bad solutions and bad communication (regardless of intent).

          With a smiley face front-end, of course. Wouldn't want to seem not-nice!

          • By flubijeq 2026-03-0420:33

            Agreed, I really like Patrick - he is smart, humble, hardworking and trusting. But his kind and trusting nature is being aggressively exploited by some truly despicable people.

      • By marcosdumay 2026-03-0415:38

        Well, yes, doing the interview again is the right choice.

      • By eunos 2026-03-0414:413 reply

        > okay, well yes you might be right but you also understand what the point of the interview is.

        So the point is? I honestly dont understand.

        • By LandR 2026-03-0414:571 reply

          The point isnt to give a simple answer, even if it's a correct answer. The point is show how much you know and how smart you are.

          The question is framed to you as a way for you to show you know x, y and z and talk about x, y and z.

          Even if a valid solution is just do a, that's great. But the interviewer has no idea if you actually know about x ,y and z do they ?

          • By lucianbr 2026-03-0415:23

            > The point is show how much you know and how smart you are.

            I like that this sentence can be read both as a productive, well-meaning view on interviews, as well as a highly cynical one.

            Also makes me wonder if the person will keep showing how much they know and how smart they are after they are hired, and if that is a good thing.

        • By praptak 2026-03-0415:22

          The point is the interviewers are sometimes obtuse.

          Sometimes the point of the interview is to see if the candidate knows an existing solution and "just use postgres" is the good answer. Sometimes it's to test the technical chops and pretending postgres doesn't exist is the point.

          The candidate shouldn't be expected to always guess right, unless the position says "a psychic". The interviewer should notice if the candidate is solving the wrong kind of problem and nudge them in the right direction instead of punishing the candidate for the wrong guess.

        • By Aurornis 2026-03-0415:08

          In an interview you need to explain your thought process and demonstrate that you’re making an informed decision with supporting evidence.

          Saying “just use Postgres” and then providing no explanation for why you believe Postgres is sufficient for the job, a general explanation of what type of hardware and architecture you’d use, and other details is not answering the question.

      • By kermatt 2026-03-052:26

        They failed him because of that one question?

      • By renegade-otter 2026-03-0414:58

        I always find it funny that "engineers" straight out of school who barely know how to create a PR are expected to "ace" planet scale design questions. It's. Just. So. Dumb.

      • By alistairSH 2026-03-0417:491 reply

        Completely idiotic on the part of the interviewer. Failing somebody for a correct answer - what a waste of everybody's time. If you want the candidate to pursue a particular technical path, tell them to do so while they're there in the office.

        • By inaros 2026-03-0417:59

          That is why they say, as a candidate, you are also interviewing the company you would be working for...

      • By yieldcrv 2026-03-0415:57

        “There’s no right answer we just want to see how you think” is gaslighting if there is a right answer and wrong answer.

        This should go straight to the DOL, EEOC, FTC and other bodies as some form of abusive labor practice that excises it from the employment process under threat of economic sanctions

      • By wpietri 2026-03-0421:221 reply

        > yes you might be right but you also understand what the point of the interview is

        To make the interviewer feel smart and powerful? To hire people who will do the thing the boss wants whether or not it makes sense? To find people who will overdesign things to maximize resume impact and the ability of their bosses to talk about what sophisticated systems they're running and for which they therefore need a much bigger budget?

    • By sovietswag 2026-03-0416:179 reply

      Ha! I just had a debate about this with my friend. A certain ferry company uses a big Google Sheet to track where all of its vessels are currently docked in their home port, as well as which employee is assigned to which vessel for the day, etc (it's very information dense with color coding, and employees check it daily to get their vessel assignment). My friend thought this was completely unacceptable for a big company, and that they should build a bespoke software for this purpose. I think that it was a brilliant idea to use Google Sheets, it already solves all of the difficult problems and obviates the need to have an inhouse software development team or an expensive contract. I buried my hubris deep underground

      • By Vegenoid 2026-03-0419:05

        As a teenager I worked at a company that rented rafts for a short trip down a river. We’d take the rafts from the customers at the end and truck them back up to the start. As they became bigger and busier, it became more important to keep track of the status of rafts and know when they were going to be getting back to the top.

        They paid tens of thousands to have software made for this purpose. It sucked and was totally unable to handle the simultaneous realtime access and modification that was required.

        They knew I was good with computers, so asked me if I had any ideas. In about an hour I made them a Google Sheet that worked great for the next several years until I left.

      • By matsemann 2026-03-0417:19

        I've just spent a few weeks making a tool in our software to replace a complicated google sheet, and it was surprisingly hard. I think the most important thing was that our designer really figured out what the tool should do. If we've just replicated what they have and made a columnar editor of sorts, we would've just made a less flexible tool for them. But in the end, we made something not even resembling what they had, but which actually solved the core issue, and I think that's important.

        And when you take away their sheet, you better be ready to support them. If they need to track new data, they could just add a new column in their sheet. Now they have to talk with tech. If tech blocks operations, they're quickly back to their sheets. The tool made by tech should be an enabler, not something to force compliance or whatever.

        Sheets are so, so flexible. This can be really hard to replace. At the same time, they're also brittle with little system support. Like the example above, what if you assign someone not working that day to a boat? Or accidentally put two boats in the same location? Lots of small issues that proper tooling could handle, especially when backed with more data inside the system.

        What made the operators happy to use my tool in the end was that they didn't have to punch so many numbers. They would copy paste numbers from various systems into their sheet every hour to keep track. The tooling pulls it in real-time.

        So we replaced this one sheet, because it would help them a lot. But their other sheets we're leaving untouched for now. Nothing to gain by moving them. So judge each sheet individually.

      • By wrs 2026-03-0417:07

        My startup used Google Sheets as a CRM until we discovered there’s a 3 million row limit (by running into it) and had to build something else. Sheets is amazing. Don’t forget to lock that first header row, though.

      • By tracker1 2026-03-0416:42

        I'm there with you... maybe, maybe using the sheets API to create a simpler front end for very specific use cases, like an individual seeing their assignment for the day, or maybe texting everyone that info.

        As much as people will rely on databse (rdbms/sql) backed applicatons, in the end a lot of the business world runs on spreadsheets... Not only that, but excel, and I'm assuming plenty of others have integration points for pulling data from other resources... Spreadsheet masters can do very impressive things with what appears to be a simple tool.

      • By Culonavirus 2026-03-0416:44

        I've seen suppliers using google sheets for a list of tens of thousands of items. Also color coded and filterable and what not. It worked. I could access it programmatically, I had no complaints. (Especially with an experience of some of these suppliers having shitty hosts and shitty platforms and their massive XMLs taking forever to load.) Then again I'm sure I would speak differently if someone just decided to rename a column randomly :D

      • By vonneumannstan 2026-03-0416:43

        All fun and games until an Intern deletes the original sheet or fatfingers critical information.

      • By bcrosby95 2026-03-0416:38

        We have no idea if its a good solution or not. It depends upon, among other things: how long it takes to update it, the error rate, and how acceptable those errors are.

      • By bombolo 2026-03-0416:24

        [dead]

      • By cindyllm 2026-03-0416:19

        [dead]

    • By bob1029 2026-03-0414:251 reply

      > What would you do if two different people were emailing a spreadsheet back and forth to track something?

      I realize this is part of an interview game, but perhaps the best response is still to ask why this is a problem in the first place before you launch into a technical masterpiece. Force the counterparty to provide specific (contrived) reasons that this practice is not working for the business. Then, go about it like you otherwise would have.

      • By exogenousdata 2026-03-0414:48

        I actually really prefer your answer. I would likely counter with, “what potential issues could you see with doing things this way?” But a) you’ve shown me that you don’t charge into solutions without first attempting to define the problems, b) your follow-up answer reveals to me what kind of things you think are important, and c) I’d probably quickly ask something like,”let’s assume that in the past, we’ve had issues with missing changes when emailing this back and forth,” and encourage some more dialogue.

        I do dislike interviews where a candidate can fail simply by not giving a specific, pre-canned answer. It suggests a work culture that is very top-down and one that isn’t particularly interested in actually getting to the truth.

    • By GuB-42 2026-03-0417:16

      I think the correct answer would be to ask "why are they doing that and not using Google Sheets?".

      There are a lot of good reasons for not using Google Sheets. Maybe the spreadsheet is using features that Google Sheet doesn't support, maybe one of the parties is in China, where Google services are blocked, maybe it is against company policy to use Google Docs, maybe they have limited connectivity.

      It is good to acknowledge the obvious, off the shelf solutions, but if you are given a job, that's either because the customer did their homework and found out that no, it is indeed not appropriate, or, for some reason, they have money burning their pockets and they want a custom solution, just because. In both cases that's how you are getting paid. So, I don't consider "use Google Sheets, you idiot" to be an appropriate answer. Understand the customer specific needs, that's your job, even more so in the age of AI.

      And maybe the interviewer will be honest and say "just assume you can't, this is just an exercise in software architecture".

    • By chuckadams 2026-03-0414:291 reply

      The followup questions usually help, like: "What are they tracking?" and "What are the problems caused by using a spreadsheet?" That usually gives you a clue of the answer they're looking for. The answer might be bullshit, but you pass an interview by playing their game, not yours.

      • By skydhash 2026-03-0414:38

        This! It’s better to assume that you don’t know some context than go with what appears to be the most pragmatic answer. Even in the real world.

    • By a4isms 2026-03-0419:331 reply

      To give you the inverse perspective, an OG blogger named Steve Yegge made a list of five essential phone screen questions:

      https://sites.google.com/site/steveyegge2/five-essential-pho...

      Question three is this:

      Last year my team had to remove all the phone numbers from 50,000 Amazon web page templates, since many of the numbers were no longer in service, and we also wanted to route all customer contacts through a single page.

      Let's say you're on my team, and we have to identify the pages having probable U.S. phone numbers in them. To simplify the problem slightly, assume we have 50,000 HTML files in a Unix directory tree, under a directory called "/website". We have 2 days to get a list of file paths to the editorial staff. You need to give me a list of the .html files in this directory tree that appear to contain phone numbers in the following two formats: (xxx) xxx-xxxx and xxx-xxx-xxxx.

      How would you solve this problem? Keep in mind our team is on a short (2-day) timeline.

      In Yegge's case, he explicitly does NOT want a hand-written program, he wants the candidate to suggest a CLI tool, e.g.

      grep -l -R --perl-regexp "\b(\(\d{3}\)\s|\d{3}-)\d{3}-\d{4}\b" > output.txt

      ———

      So...

      These questions aren't good or bad unto themselves, but when the person asking is engaging in "Guess the answer I'm thinking of," don't beat yourself up if you guessed wrong. Your answer might be prized by someone else with an enormous amount of experience hiring engineers.

      • By myroon5 2026-03-0419:431 reply

        At AWS, a team asked for help maintaining a bespoke internal Java service that diff'd json for manual reviews.. replaced it with a jq one-liner

        • By MathMonkeyMan 2026-03-0420:59

          A former coworker was evaluating the cleanliness and structure of some non-free GeoIP data that took the form of several large CSV files. He was writing nested loops in Go that parsed the CSV and evaluated the predicates that interested him, and it was arduous and not going as quickly as he would like.

          I told him to slurp it all into a sqlite database and to express his data integrity questions as SQL queries.

          It was still a pain in the ass for him, but leveraging that tool made things go a lot better.

    • By nobleach 2026-03-0414:581 reply

      Way back when I was in IT Admin, I used to have this problem all the time. Some non-tech person emails a spreadsheet, another non-tech person edits it, and saves it. The original person complains that they can't see the changes. Yeah, because it's saved in some MS Windows Profile location that no sane human would ever visit. My solution was to ONLY email links to shared files on a shared resource. The LAST thing I'd ever think of is writing software to solve this problem!

      These days if I were interviewing someone and they said, "I'd use the simple solution that is fairly ubiquitous", I'd say, "yes! you've now saved yourself tons of engineering hours - and you've saved the company eng money".

      • By 1980phipsi 2026-03-0415:40

        I attach a copy of the file and then provide a network location for where it is located. Makes it easy for people to just open up a simple copy to look at it and they know where to go to access the original.

    • By Traster 2026-03-0414:211 reply

      This is one of my favourite interview questions too. I ask a design question that technically could be solved using the specialist skillset I interview for but it would be insane to actually do that in the real world. It's a good opener to see how practical and open minded they really are.

      • By bluGill 2026-03-0415:314 reply

        Is it? I have long thought that most things business people are using a spreadsheet for belongs someplace else. They are easy ways to run quick what-ifs or make lists, but generally the right answer is update the system so they don't need a spreadsheet. If the data is financials - why can't your accounting system give everyone the view they need from the shared system? Othertimes what they really need are a database to track this. But a spreadsheet is easy and so they ignore all the problems it creates because it needs a real engineer (and often more money than they can spend) to create the right solution.

        • By horsawlarway 2026-03-0415:521 reply

          > it needs a real engineer (and often more money than they can spend) to create the right solution.

          Then it's the wrong solution. Period.

          There are plenty of annoyances with spreadsheets, but part of what makes them so robust and powerful is that they don't take a ton of specialized knowledge, and they remain incredibly flexible.

          An expensive, complicated, static, "right" solution for a small business is folly (honestly - this stays true up to medium/large business). It's a ton of time and energy focused on the absolute wrong thing. When a spreadsheet can reach the same result in a fraction of the time.

          Especially given the result may not actually be that important, and they pivot to something else entirely in the very near future.

          I've worked at several startups. I'd caution even software startups from assuming that custom solutions are the right approach. They usually aren't. They're a waste of time and effort that ends up saddling you with a brittle, expensive solution designed to solve problems from last year.

          • By bluGill 2026-03-0419:02

            You are missing something: how much is spent because the spreadsheet isn't the right solution - nobody measures this (or even knows how). How much are you risking because spreadsheets are not robust - when will a mistake catch up, and what will be the cost? There is a reason accountants use double entry bookkeeping, and spreadsheets don't have that.

            Nobody has the money to spend doing things right unless they have been burned. That doesn't mean the money shouldn't be spent first.

            Spreadsheets are powerful I will grant. However they are not robust. A robust system works very different and includes features (like tests) that your spreadsheet doesn't have (I don't if it could have them, but it is safe to guess they don't)

        • By Traster 2026-03-0417:14

          I didn't quite mean it that way. My question is basically asking "Does this hammer know that not every problem is a nail". To give a specific answer to your question, my accounting system is excel, and "everyone" is me. There are definitely plenty of places where a database makes sense. But it's also important for database engineers to understand where databases don't make sense. It's kind of like that old problem we had where people would keep on saying "We can do X with blockchain" and the typical answer is "ok but that's worse".

        • By teeklp 2026-03-0415:59

          Well, you've long thought wrong.

        • By SolubleSnake 2026-03-0416:55

          Argh gawd I hate this!

          There are plenty of reasons that a department within a company will prefer spreadsheets. Software is not the answer to everything and also this is the same problem you get when Microsoft introduces those pesky 'Power App' developers etc or previously the Sharepoint 'web parts' etc....essentially someone who kind of feels they are the 'owner' of some information then decides to formalise the process in their own little way.

          Now you have a person wasting a bit of time making their little tool but you've also got people complaining that someone's now essentially taken control of it etc. At a former employer our procurement team used spreadsheets to track basically everything but importantly everything on our PCBs - every single component and their suppliers and prices etc (various factories around China usually). This would have been a horrible thing to try and formalise in a web app just because of how often they were all changing their own conventions etc (often suppliers changing what information they gave to them, too). It would have been a wild goose chase to formalise it and more than the trouble it would be worth.

    • By robertlagrant 2026-03-0414:262 reply

      I had a similar idea once when answering a Stack Overflow question[0].

      [0] https://stackoverflow.com/a/1831841/61938

      • By gorbachev 2026-03-0414:543 reply

        Quoting your comment: "You definitely don't want to hire the person who thinks - bizarrely - that using library functions is a sign of weakness."

        So true...I've failed interviews, because the interviewee did see using library functions as a sign of weakness.

        • By robertlagrant 2026-03-1312:24

          Thank you, although I regret the "bizarrely".

        • By Cthulhu_ 2026-03-0416:22

          I just wish that in those cases the interviewee gives feedback and allows you to rewrite instead of just failing you. I mean in practice nobody writes library functions themselves unless absolutely necessary, but I get that for some positions you have to demonstrate that you can write lower-level code if you have to.

        • By LPisGood 2026-03-0416:09

          I think that it was probably a poorly designed question, but surely you could throw the interviewer a bone by giving a custom answer after they reject the library.

      • By Cthulhu_ 2026-03-0416:211 reply

        I love how your answer was straight, to the point and leverages existing standards, then scrolled up to the question and had to go through someone else's thorough, multipage response. Full marks to both answers!

    • By RobRivera 2026-03-0418:46

      I've stopped playing the game of 'guess what the right answer is'

      I would have said the exact same thing and pushed the interview to consider 'why are we creating a tool when something off the shelf solves our business needs? What kind of runway and resources do I have to meet this goal? What is good enough for our problem here? Do we want to expand our scope to enable external data integration and downstream data consumption"

      You will find better employment outside the circus, possibly even selling to the circus

    • By SergeAx 2026-03-104:23

      On the interview for my current job, they asked me what I would do if I needed to download the entire Wikipedia. They expected me to design a scalable system with a separate crawler, parser, download queue, exponential backoff, and stuff. I said that I would just download a tarball. To their credit, they quickly accepted the answer as correct.

    • By Breza 2026-03-0616:56

      One of my favorite challenges to give data science candidates is to generate a dataset with a column for date and a column for attendance. With some added noise, attendance started at 1000 and decreased by two per day. I showed a year of data and asked them to predict the value a month from now. It was astonishing how many candidates come up with complicated approaches, like randomizing the data into train/test/validation groups (the wrong thing to do for a time series).

      I don't think any of my applicants so far has double clicked the file to open it in Excel, plotted the data, and saw just how linear it was. You could follow the line with your finger and come up with a decent prediction. Maybe do that in ggplot2 or matplotlib if you want to show you can write code. Even a quick lm(dta$attendance ~ dta$date) would get you great results.

    • By jt2190 2026-03-0414:24

      The lesson to learn is that in-house development groups are often incentivized to “sell” custom software solutions to their organizations, as their existence (budget) relies on it.

      As an interviewee it’s important to try and identify whether the group you’re interviewing with operates this way, literally: How will they get the money to pay for your salary? That way you avoid giving nom-starter answers to interview questions.

    • By fluidcruft 2026-03-0415:361 reply

      Maybe you were supposed to identify what business need they were trying to solve and see if there was anything better than a spreadsheet?

      Spreadsheets are a tricky one some people like the power and automomy they have with spreadsheets.

      But more often spreadsheets are the only way to transfer data between solos and it wastes a lot of time and is error-prone.

      • By bitmasher9 2026-03-0415:411 reply

        It really depends on how much time is spent filling out the spreadsheet.

        If they are collectively spending 1hr/mo on the spreadsheet then it’s not worth an SWE’s time to optimize it. If they are spending 4hr/day on the spreadsheet then it’s a prime candidate for automation.

        • By fluidcruft 2026-03-0419:481 reply

          It depends sometimes it's currently 1hr/month but more frequently and a dashboard would add value to the enterprise.

          • By bitmasher9 2026-03-0514:351 reply

            In an interview setting this is such obvious bait to see if the person will ask more questions or go straight into making a solution.

            • By fluidcruft 2026-03-0520:31

              That would be my assumption, too.

    • By Folcon 2026-03-0414:15

      Honestly, if I'd have heard that, I'd hire you in a heartbeat, you solved the problem without increasing total cost of ownership to the company and meant we could move forwards

      I'd actually trust you to take on harder problems

      Doesn't really matter what the situation is, there's much more that can be achieved in my book with that kind of mindset :)

      I'm also of the opinion that in an increasingly LLM software written world, being able to have this kind of mindset will actually be really valuable

    • By neftaly 2026-03-0414:32

      I would ask, why are they emailing it? Maybe there's a good reason they can't use sheets.

    • By xivzgrev 2026-03-0415:40

      Not an engineer but reminds me of a similar situation I've seen interviewing

      Sometimes we'll ask market sizing questions. We will say it's a case question, it's to see their thought process, they're supposed to ask questions, state assumptions, etc.

      Occasionally we'd get a candidate that just doesn't get it. They respond "oh I'd Google that". And I'll coach them back but they just can't get past that. It's about seeing how you approach problems when you can't just Google the answer, and we use general topics that are easily accessible to do so. But the downside is yes, you can google the answer.

    • By ajspig1 2026-03-0416:30

        I get that "communicate your thought process" or "play along with the exercise" gets offered as the fix here. But that framing bothers me too. Why should simplicity require more justification than complexity? Google Sheets is the design. The fact that it doesn't sound like engineering is the whole point.
      
      I'm just not convinced the solution is learning to package simplicity in a more impressive wrapper.

    • By raffael_de 2026-03-0414:17

      depends on what metric it is that _you_ want to optimize. i would have given the same answer, then aikidoed their confusion into some quick lecture on efficiency of software solutions in a business context and finally a segway into a project i worked on (or made up on a whim) of related relevance that i assume would be more interesting to talk about instead. but given my rather unimpressive career i'd suggest to not listen to me.

    • By lucasfin000 2026-03-0418:09

      The awkwardness after your answered was the interview telling you something important. A team that penalizes picking the right tool over an impressive one is a team where you'll spend years creating complexity nobody needs. The lesson isn't "next time pretend Google Sheets doesn't exist." It's that you found out early what they actually reward.

    • By ChrisMarshallNY 2026-03-0422:06

      I remember getting a test, in an interview in the 1990s, where I was asked to design a set of gates (ICs) to do some binary maths (Division, multiplication, etc). The input was an 8-bit set of leads, and the output was an 8-bit set of leads.

      I looked at the formula, and drew two wires, connecting a couple of the leads from the input, to the output.

      I was offered the job, but ended up declining it.

    • By QuiEgo 2026-03-051:14

      I usually open up technical questions with a disclaimer like “I reserve the right to tell you that you can’t use a library or similar if I think it makes the problem too easy”. Like it’s a make believe problem and it’s something you can finish in under an hour, a certain about of understanding that this is a test not the real world is needed.

    • By docmars 2026-03-0420:29

      I would have said "Move them to Google Sheets, but I gather from the nature of the question this is about finding a solution to build from an engineering standpoint..." and then go into ideas for how to collect user research, and apply those findings to a new tool build.

    • By LPisGood 2026-03-0415:37

      I feel like you could start waxing poetic about engineering value of meeting people where they are, not reinventing the wheel, etc.

      Then after a brief discussion of that you could actually ask if the purpose of the question was for you to design a system to handle that situation and jump into the design.

    • By choonway 2026-03-0422:26

      the lesson to learn is - don't let the conversation die off. think of all the weird scenarios that wouldn't make google sheets work.

      e.g. no access to internet (or at least VPN access via completely locked down devices) / internal email server / only open source etc.

    • By wslh 2026-03-0420:48

      I think you could start saying that there are multiple options. The simpler is sharing the sheets in Google (or Microsoft) Sheets. After this, Then, I would have asked if there are any security and/or compliance issue to doing so to analyze other alternatives.

    • By HPsquared 2026-03-0414:45

      Remember you're interviewing them just as much as they are interviewing you.

    • By tmtvl 2026-03-0414:38

      It's a culture fit question. When the culture is 'make everything ourselves' you're not a great culture fit. When the culture is 'just solve the problem', you fit in perfectly well.

    • By pjmlp 2026-03-0415:07

      In our agency that would be a plus, because we focus on customising existing products instead of building everything from scratch.

      Exactly because that means less costs for software development when deliverying solutions.

    • By gwbas1c 2026-03-0414:121 reply

      Probably that you didn't want the job?

      At least from the point of view of the interviewer, this was the point where they should give you a polite "hey, play along" nudge.

      • By swiftcoder 2026-03-0414:181 reply

        > At least from the point of view of the interviewer, this was the point where they should give you a polite "hey, play along" nudge.

        That may be the game, but we all know it's bullshit, and we shouldn't be playing along.

        If a member of my team actually proposed building a bespoke system for something that can be straightforwardly done in a spreadsheet, we'd be having some conversations about ongoing maintenance costs of software

        • By gwbas1c 2026-03-0414:391 reply

          > If a member of my team actually proposed building a bespoke system for something that can be straightforwardly done in a spreadsheet, we'd be having some conversations about ongoing maintenance costs of software

          All interviews are contrived / artificial situations: The point is to understand the candidate's thought processes. Furthermore, we're getting Bilsbie's (op) take on the situation, there may be context that the interviewer forgot to mention or otherwise Bilsbie didn't understand / remember.

          Specifically, if (the hypothetical situation) is a critical business process that they need an audit log of; or that they want to scale, this becomes an exercise in demonstrating that the candidate knows how to collect requirements and turn a manual process into a business application.

          The interviewer could also be trying to probe knowledge of event processing, ect, ect, and maybe came up with a bad question. We just don't know.

          Given that Bilsbie can't read their interviewer's mind, there's no way to know if that's what the interviewer wanted, or if the interviewer themselves was bad at interviewing candidates.

          • By swiftcoder 2026-03-0418:54

            > The point is to understand the candidate's thought processes

            The problem is that this is a 2-way street. The candidate is forced to guess the interviewer's thought process, because otherwise they may be pitching over the interviewers head.

            We have to spend a ton of time calibrating hiring loops for this, because otherwise you get staff level candidates being failed by mid-career interviewers who don't understand the full context of the question they are asking (and hence don't understand why a staff eng solves it differently than they would).

    • By tedggh 2026-03-0415:34

      Yours was a clever answer to a stupid question. Tech interviewers need to leave college behind and start treating candidates as professionals. Puzzles, white boarding and riddles are unique to software engineering roles, you would never see a lawyer, an accountant, a doctor, or engineers in other disciplines going through any of this nonsense. These methods are proven to be a poor predictor of job performance. In my last role as lead engineer we would chat with the candidate over lunch about random topics. We first wanted to see if they would fit our team. Then in the afternoon let them work in a little project that was actually part of active development. This way we discovered that most candidates who went through the screening process could actually be pretty good team members. Our issue was having to decide who to give the offer to, while other companies keep rejecting candidates over bubble sort. Our attrition was also pretty low. So it happens that software engineers will surprise you when you treat them as grown ass adults. Who would have guessed?

    • By nevertoolate 2026-03-0420:50

      I wouldn’t be surprised and most likely would go for a walk :)

    • By darkwater 2026-03-0416:58

      Honest question: did you really not read the room there? I mean, if I were on the interviewer side, asking that question, and getting an initial answer "Well, to be honest I would tell them to use GSheets because given the current situation is the highest benefits/costs solution, but for the sake of a system design interview I would also think about designing a bespoke internal solution that would use blah blah blah". You would get a "strong hire" evaluation and you would still be able to turn down the offer if you wanted because that question might have been a red flag to you.

    • By ziml77 2026-03-0415:31

      I mean that's not really a good answer because you need to ask why they are sending a spreadsheet back and forth. Like yeah using a shared spreadsheet saves them having to email back and forth, but it doesn't help formalize the process, include validations, or make the data available to other systems. And maybe it would turn out that none of that is actually helpful in this case, but if you don't make an effort to ask and understand what's going on then you won't know if there's some bigger problem that needs addressing.

    • By wildekek 2026-03-0414:214 reply

      The lesson was that sometimes the interviewee can be more competent than the interviewer and they should run.

      • By nomel 2026-03-051:45

        The interviewer should be less competent. That's the goal. The only alternative is that everyone trends dumber as the org grows. Usually you're trying to hire an expert in something. It can't be a necessity that the interviewer is an expert in all things they need to hire for, or even most competent in their field! You want your org to increase competence.

        And, I think that's what causes the slow demise of corporations: the "hire dumb" is much easier. It's hard to get a read on intelligence/competence/skill if you're less of any of those, so, on average, orgs do get dumber. What's the best shield against stupidity? Bureaucracy! :D

      • By travoc 2026-03-0414:55

        So nobody can ever hire someone better at particular skills than they are? Oh boy.

      • By Cthulhu_ 2026-03-0416:24

        Run or email their seniors and ask them if they're hiring for higher-up positions.

        But this is connected to another thread on HN about engineer/manager titles and how they basically have no value if you try to compare them between employers.

    • By sztanko 2026-03-0418:22

      Did you get the job?

    • By gdubs 2026-03-0421:06

      The annoying thing about corporate hiring practices is – speaking from experience – some of us would have loved your answer. But then it goes to committee and someone's like, "this iOS engineer doesn't know any javascript, and I'm an expert in javascript, so I'm a 'no'."

    • By zipy124 2026-03-0414:121 reply

      I mean you gave the right answer imho. Software engineers are just business people whose main tool is coding. You know you're good if you don't reach for the hammer when you don't have a nail.

    • By alansaber 2026-03-0420:20

      "I'm sorry, you're overqualified for this role"

    • By colliv431 2026-03-0415:59

      [dead]

  • By Niko901ch 2026-03-0413:1614 reply

    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.

    • By slfnflctd 2026-03-0414:464 reply

      > now nobody fully understands what was generated

      To be fair, a lot of the on call people being pulled in at 3am before LLMs existed didn't understand the systems they were supporting very well, either. This will definitely make it worse, though.

      I think part of charting a safe career path now involves evaluating how strong any given org's culture of understanding the code and stack is. I definitely do not ever want to be in a position again where no one in the whole place knows how something works while the higher-ups are having a meltdown because something critical broke.

      • By gondo 2026-03-0417:301 reply

        People on call will use AI as well. As long as the first AI left enough documentation and implemented traceability, the diagnosing AI should have an easier time proposing a fix. Ideally, AI would prepare the PR or rollback plan. In a utopia, AI would execute it and recover the system until a human wakes up.

        Or at least there is something to chat with about the issue at 3am.

        • By bigfishrunning 2026-03-0419:34

          > In a utopia, AI would execute it and recover the system until a human wakes up.

          in that utopia, the on-call guy doesn't have a job

      • By bandrami 2026-03-0415:31

        This. I've been a sysadmin for a quarter of a century and have professionally written next to no software. I've debugged every system I've had to support at some point though. It's a very different skill set.

      • By dudeinhawaii 2026-03-0415:49

        True, but I think the implication (as I read it) is that AI may be providing more complex solutions than were needed for the problem and perhaps more complex than a human engineer would have provided.

      • By muyuu 2026-03-0417:29

        it's MUCH worse now, not just because of the massive amount of code generated with zero supervision or very little supervision, but also because of the speed at which the systems grow in function

    • By mattcollins 2026-03-0413:444 reply

      On the other hand, AI coding tools make it relatively easy to set and apply policies that can help with this sort of thing.

      I like to have something like the following in AGENTS.md:

      ## Guiding Principles - Optimise for long-term maintainability - KISS - YAGNI

      • By shafyy 2026-03-0413:523 reply

        Not sure if you're kidding or not, but to write great maintable code, you need a lot of understanding that a LLM just doesn't have, like history, business context, company culture etc. Also, I doubt that in it's training data it has a lot of good examples of great maintainable code to pull from.

        • By yudhiyudhi 2026-03-0413:594 reply

          Neither do most humans writing such code, i have seen llms generate better code than 90% of coders I have seen in the last 20 years

          • By forgetfreeman 2026-03-0414:171 reply

            Admitting you've spent two decades on a career stuck working in the kind of sweatshops that hire people who can't actually code isn't much of a flex, and certainly doesn't lend a whole lot of credence to your argument.

            • By zelphirkalt 2026-03-0510:23

              Not the GP, but when I take strolls through some open source project hosted on GitHub, usually I am not impressed either. Unnecessary OOPism, way too long procedures, that instead could be pure functions, badly named variables, and way, way, waaay too many willy-nilly added dependencies. If that is what the LLMs mostly learn from, I am not surprised at all. But then again this stuff was also written by humans. I remember one especially bad case of a procedure in a very popular project (in its niche) that was basically a 1 man show. A procedure of 300+ lines doing all kinds of stuff, changing the global state of that service it is implementing. But that code was or is relied upon by tech giants and other businesses and no one improves it. They are happy with paying that one guy probably not so much money.

          • By shafyy 2026-03-0415:34

            Please let's stop with the "but some humans also suck at this so it's ok if LLMs also suck at it" argument. It doesn't add anything to the discussion.

          • By Thanemate 2026-03-0420:15

            Awesome! However, the corporate is excited with using AI, making the coder the one who's at risk at getting fired for writing the exact same lousy (for the sake of the argument) code.

            Or worse: for not relying as much as possible to the AI who apparently can write just as bad code but faster!

            A subtle detail: you speak of coders, not software engineers. A SWE's value is not his code churning speed.

          • By shimman 2026-03-0414:531 reply

            This says more about you and the people you work with. I find engineers that have been at the company for a while are quite invaluable when it comes to this information, it's not just knowing the how but the when + why that's critical as well.

            Acting like people can't be good at their job is frankly dehumanizing and says a lot about your mindset with how you view other fellow devs.

            • By zelphirkalt 2026-03-0510:29

              If only more engineers admitted, that something they wrote is not good code, but a product of its time, then I think we would get more realistic expectations.

              It's OK to say that something you made is shit. It is OK to say that you were not given time to do xyz.

              How you recognize something has been made fitting at least is, when you see it in use without much of a change for some 3 or 4 years and while you are the person maintaining it, you rarely ever need to touch it, because you built it in a way that is simple enough to not have tons of bugs yet flexible enough, to cover use-cases and anticipated use-cases.

        • By nhayfield 2026-03-0413:581 reply

          He isn't kidding. I have a directive to write the shortest, least complicated, readable business code and it makes a huge difference

          • By kurthr 2026-03-0414:28

            Sometimes, as in the bilsbi's top level comment, the solution is to use a free tool/library/product that already exists. The solution is not always to write new code, but the agent will happily do it.

            Maybe that's "the manager's job", but that's just passing the buck and getting a worse solution. Every level of management should be looking for the best solution.

        • By whattheheckheck 2026-03-0414:09

          "Be sure to remember software is a sociotechnical system and dont fall prey to the Mechanistic myth"

      • By Niko901ch 2026-03-1120:22

        This is exactly right. I maintain an AGENTS.md for my own AI assistant with similar principles - "禁止只记录不行动" (no recording without action) and strict rules about when to escalate vs. when to solve autonomously.

        The key insight is that the AGENTS.md becomes a kind of "engineering culture in a file". When you onboard a human engineer, you hope they absorb the team's values over time. With AI, you can encode those values upfront.

        The challenge is that principles need to be specific enough to be actionable. "Write simple code" is too vague. "Avoid single-use wrapper functions" (from the sibling comment) is better - it's enforceable.

      • By musesum 2026-03-0415:111 reply

        I wrote something similar in a Claude Code instructions.md: "minimize cyclomatic complexity" What happened next? It generated an 8 line wrapper function called only once from a different file. So, I told it to inline that logic in the caller. The result? One. Line. Of. Code.

        So, I asked it to modify its instructions.md file to not repeat that mistake. The result was the new line "Avoid single-use wrapper functions; inline logic at the call site unless reused"

        instruction.md is the new intern.

        • By Cthulhu_ 2026-03-0416:27

          It reminds me a lot of people who take Code Complete too seriously. "Common sense" is not an objective or universal statement unfortunately - plus, speaking for myself, what I consider "common sense" can change on the daily, which is why I can't be trusted adding features to my own codebase long term <_<.

      • By musesum 2026-03-0415:141 reply

        I wrote something similar in a Claude Code instructions.md: "minimize cyclomatic complexity" What happened next? It generated an 8 line wrapper function called only once from a different file. So, I told it to inline that logic in the caller. The result? One. Line. Of. Code.

        So, I asked it to modify its instructions.md file to not repeat that mistake. The result was the new line "Avoid single-use wrapper functions; inline logic at the call site unless reused"

        instructions.md is the new intern.

        • By reedlaw 2026-03-0415:491 reply

          Maybe a better way to handle "minimize cyclomatic complexity" would be to set an agent in a loop of code metrics, refactor, test and repeat.

          • By musesum 2026-03-0416:042 reply

            Good idea. Am still a bit shy around token budget spend.

            • By Cthulhu_ 2026-03-0416:451 reply

              I think this is at the moment the practical limitation to using AI for everything (and what the coding agents themselves also optimize for to some degree, or it's the slider they can play with for price vs quality, the "thinking" models being the exact same, but just burning more tokens).

              • By musesum 2026-03-0416:59

                Am waiting for the next Mac Studio to come out to experiment with the "AI for everything" approach. Most likely, the open source distilled models will lower quality. So, another "price vs quality" tradeoff. Still, will be fun to code like I'm at a foundation lab.

            • By reedlaw 2026-03-0416:531 reply

              This seems like a perfect use case for a local model. But I've found in practice that the system requirements for agents are much higher than for models that can handle simple refactoring tasks. Once tool use context is factored in, there is very little room for models that perform decently.

              • By musesum 2026-03-0417:071 reply

                What I hope to do with refactoring is to distill namespace and common patterns into a DSL. I am very curious about what tradeoffs you found.

                • By reedlaw 2026-03-0418:09

                  Whatever agent I tried would include thousands of tokens in tool-use instruction. That would use up most available context unless running very low-spec models. I've concluded it's best to use the big 3 for most tasks and qwen on runpod for more private data.

    • By dude250711 2026-03-0413:293 reply

      It's a bad time to be an altruistic perfectionist, tell you what.

      Avoid hands-on tech/team lead positions like hell.

      • By skydhash 2026-03-0413:41

        It’s not even about perfectionism. Code’s value is about processing data. Bad code do it wrongly and if you have strange code on top of that, you cannot correct the course. Happy path are usually the low hanging fruits. What makes developing software hard is thinking about all the failure and edge cases.

      • By cottsak 2026-03-0413:47

        that second line is so underrated

      • By whattheheckheck 2026-03-0415:57

        Thats the kind of thinking that got us into this mess... scab

    • By __MatrixMan__ 2026-03-0415:01

      I think we'll see a decline of software as a product for this reason. If your job is to solve a problem, and you use AI to generate a tool that solves that problem, or you use money to buy a tool that solves that problem, well then it's still your job to solve that problem regardless of which tool you use.

      But given how poorly bought software tends to fit the use case of the person it was bought for... eventually generate-something-custom will start making more and more sense.

      If you end up generating something that nobody understands, then when you quit and get a new job, somebody else will probably use your project as context for generating something that suits the way they want to solve that problem. Time will have passed, so the needs will have changed, they'll end up with something different. They'll also only partially understand it, but the gaps will be in different places this time around. Overall I think it'll be an improvement because there will be less distance (both in time and along the social graph) between the software's user its creator--them being most of the time the same person.

    • By BloondAndDoom 2026-03-0415:261 reply

      This is something I keep thinking while coding with AI, and same with introducing library dependencies for the simplest problems. It’s not whether how quickly I can get there but more about how can I keep it simple to maintain not only for myself but for the next AI agent.

      Biggest problem is that next person is me 6 months later :) but even when it’s not a next person problem how much of the design I can just keep in my mind at a given time, ironically AI has the exact same problem aka context window

      • By fluidcruft 2026-03-0415:50

        Well in 6 months it you and a 6 months smarter LLM.

    • By mrweasel 2026-03-0415:57

      There's also the operational cost of running whatever is churned out. I wouldn't exactly blame that on AIs, but a large contingency of developers optimize for popular tech-stacks and not ease of operations. I don't think that will change just because they start using AI. In my experience the AI won't tell you that you're massively overbuilding something or that if we did this in C and used Postgresql we'd be able to run this on an old Pentium III with 4GB of RAM. If you want Kubernetes and ElasticSearch, you'll get exactly that.

    • By amelius 2026-03-0413:401 reply

      Simplicity is a driver for better abstractions. But now with AI, will we even develop new abstractions?

      • By MarcelOlsz 2026-03-0413:472 reply

        I was in charge of cleaning up a slop codebase by someone who has barely even heard of 'coding' before. Let's just say, it was abstract.

        • By godelski 2026-03-0418:03

          There's different kinds of abstraction. There's abstraction like Jackson Pollock and there's abstraction like what Dijkstra as suggesting: elegance. Which personally made the article a very weird read to me

        • By Cthulhu_ 2026-03-0416:461 reply

          tbh codebases like that predate AI code generators. I had one job where my predecessor was not a very good developer by modern standards, but he was productive... a dangerous combination.

          • By MarcelOlsz 2026-03-0417:44

            I also kind of respect it, it bothers me endlessly when everything isn't perfect and this guy just threw caution to the wind. Jokes on me as I'm working for him now. But it's not like anything that predates AI, I couldn't write this type of slop if I tried lol. Zero formatting, linting, or anything. Just straight goulash.

    • By andix 2026-03-0417:381 reply

      > When an agent can generate a "scalable event-driven architecture" in 5 minutes

      Currently they can't. Anyone with a basic understand of sw engineering will find numerous issues with the result of such a prompt within minutes.

      • By Schiendelman 2026-03-0417:51

        But the product manager who asked for it won't realize that.

        Unless you hire good TPMs!

    • By Cthulhu_ 2026-03-0416:25

      AI generators only generate that if you tell them to though - as a developer (especially senior) it's your job to know what you want and tell the AI coding tools that.

    • By johnfn 2026-03-0419:49

      Was this comment written by an LLM? It has a lot of the tell-tale signals, and pangram gives it a 100% chance of being written by AI.

    • By brightball 2026-03-0413:40

      The flip side of this is that languages who have a major selling point of maintainability just had their value increase dramatically.

    • By kaleidawave 2026-03-0415:02

      The "coding benchmarks" should be based heavily biased on what dependencies they use etc. Reduced characters etc.

    • By jasondigitized 2026-03-0415:02

      What is the maintenance cost when Opus 6 or whatever is available?

    • By an0malous 2026-03-0415:44

      Agree but I wouldn't say it's subtle, the slop builds up quickly

  • By oceanplexian 2026-03-0416:513 reply

    Ironically, this article is "over simplifying" the problem.

    In the FAANGs I've worked at, engineers who come from scrappy companies and implement hacks (Like the example of emailing spreadsheets around) undermine the business and will cost the productivity of thousands of people.

    However, at the startups I've worked at, the folks from big companies that try to implement a super complex thing (e.g. exotic databases, overly ambitious infrastructure) The results are equally catastrophic for a company attempting to bootstrap when the complexity is so far removed from their core business.

    What makes an experienced engineer is recognizing both states, understanding what works where and making the right trade-offs, usually from experience you can't fake your way through. I've seen a lot of projects that took 10-20 engineers 18 months to so we could sell something that landed a $100M contract with a customer. You see that enough times and you won't bias as hard against complexity. But of course it's situation dependent, like anything.

    • By kermatt 2026-03-052:33

      The right answers are usually something in the middle. Don't email spreadsheets (i.e. make copies that drift), don't use K8S unless it is a technical requirement.

      For some reason, this middle ground gets the smallest population.

    • By jpollock 2026-03-0419:23

      There are definite discontinuities in there. What works for a team of 5 is different to 50 is different to 500.

      Even just taking fault incidence rates, assuming constant injection per dev hour...

    • By alansaber 2026-03-0420:36

      Being able to project manage yourself is indeed a very difficult skill

HackerNews