11 ms·
That time when I failed the Microsoft interview
- eldhobenny 2mo agoIt's interesting to see how interviews often test more than technical skills. I probably would've made the same choice and asked for another question too man. Really enjoyed reading this.
- ericmay 2mo agoWhat was the lesson learned? I’m guessing they didn’t care whether or not the OP knew the answer, they just wanted to see how they solved the problem and cramming for the test is the anti-pattern because that’s what the try-hards do and you generally don’t want try-hards around except where you need people to grind out things.
- tyre 2mo agoA classically terrible interview question. Solving riddles in realtime is almost never a real job skill. _Maybe_ in an incident, but you’d be relying on tooling and experience, not an intern. Same with leetcode at startups. It makes no sense. You’re almost certainly not going to do algorithms work. It’s only relevant if you’re looking for people willing to grind bullshit, which is certainly some jobs, but, again, you’re almost never doing this under arbitrary time pressure with someone watching over your shoulder judging and not helping. My advice: if you encounter this, don’t work there. If a company doesn’t value testing relevant skills for candidates, don’t expect leadership to be strong critical thinkers once you get there.
- coolThingsFirst 2mo agoClassical algorithms kind of thinking is similar to ML research.
- arcfour 2mo agoThe speed with which I can remember some obscure AIX partitioning-related fact during an incident, for example, is orders of magnitude faster than the speed with which I would figure out which of 12 marbles is slightly heavier than the others.
- xelxebar 2mo ago> I can remember some obscure AIX partitioning-related fact Now you have my attention. I'd love to read about some of these trivia.
- prewett 2mo agoNot the GP, but I have one non-partioning AIX trivia I discovered by accident. Turns out that malloc(0) returns NULL on AIX, but non-null on Linux, SunOS, and Irix. (I was surprised multiple ways on that one!)
- doubled112 2mo agoSometimes I think "it's a UNIX system, I know this" but I've been caught by subtle differences before too. killall is very different between Linux and Solaris, for example. I would rather have not found this out on a client machine for the first time.
- pjmlp 2mo agoAnother AIX different that caughts folks off guard, it uses COFF primarly, and its dynamic library models is closer to Windows, OS/2, Symbian, than classical UNIX with ELF. Including the existence of import libraries, linker export files, and lazy dynamic loading of symbols.
- shakna 2mo agoThat one has bitten me more than once
- mjevans 2mo agoNow that you know, can you conceptualize reasons why each pattern might be a correct preference? Among those reasons, which would you prefer as a system? ^^^ THAT is how an Interview Question should work around this factoid.
- arcfour 2mo ago
- jameshart 2mo agoThis was an internship interview over a decade ago. Nothing wrong with a brain teaser interview question under those circumstances. What would you rather ask an internship candidate? They don’t have work experience or real world skills.
- Waterluvian 2mo agoI’d be unsurprised if an interviewer who thinks that trivia isn’t a goofy waste of time also believes that young people don’t have real world skills. But a good interviewer would probably spend time getting to know the candidate’s character. Something I’ve learned from years of mentoring teens and raising kids is that there are qualities you cannot teach, and they’re enormously more valuable than any technical skills. I’m confident I can teach just about anyone any of the skills Microsoft employees find themselves milling away at. But I can’t teach that fire a 10th grader has where they go home and spend their entire weekend figuring out how to make their idea work in Java, even though they barely understand programming, and then swarm you at the door next week to proudly show it. That’s the kind of quality you seek to find in an interview. All the other stuff can be taught to anyone.
- jameshart 2mo agoDoesn’t “enthusiasm to try and tackle somewhat abstract puzzling questions” act as a reasonable proxy for some of those attributes?
- ThrowawayR2 2mo agoIt does; the old school hackers, the people who built the computer and software industry, loved logic puzzles / brainteasers and elegant, high performance solutions to coding challenges. Most of the pushback is from dull corporate programmers (no shame in that, so am I) who want to claim that they are hackers for the clout but aren't. Ironic that a site named Hacker News is almost entirely devoid of true hackers.
- Waterluvian 2mo ago
- muadddib 2mo agoMicrosoft is a dumpster fire. You probably dodged a bullet. Source: I work in the dumpster fire
- dasyud 2mo agoI agree. Source: I used to work at the dumpster fire
- encomiast 2mo agoI agree. Source: I am an Azure user.
- mjevans 2mo agoMy condolences. I read that other hacker news post (was it a couple months back) from the (ex?) engineer...
- r_lee 2mo agoI'm so sorry
- pjmlp 2mo agoAs user I still find it less painful to use than either AWS or GCP, where I had worse experiences in platform complexity (AWS), or talking to bots for support (GCP).
- pinewurst 2mo agoI’ve been through the Microsoft loop(s) several times over the years, and (to borrow from Tolstoy) each was unhappy in its own way. There were great people who would have been a pleasure to work with but always at least one joker in the deck. One just had to laugh because it was so obvious it wasn’t me. I remember speeding through the loop for something closely analogous to my job at the time, only to be suddenly told by the hiring manager (who up to that time was a strong supporter) in a final interview that I wasn’t qualified. Not wanting to invest any more energy, I formally withdrew, only to get a call from him protesting why I’d do such a thing. Or being told to leave at the end of the day only to be called to drive back 20 miles immediately during dinner, and finding out later that was a mistake. Or being literally screamed at (spittle in my face!) that HPC was only MPI and nothing but MPI. Or being yelled at that Windows Server was exactly the same as an enterprise storage system like EMC/HP/Hitachi. The hits go on.
- protocolture 2mo agoTheres a Sphinx working at Microsoft and you proved that you aren't capable of adapting to the team culture.
- georgemcbay 2mo agoLife lesson learned for OP, when it comes to tech interviewing: (1) the riddles you already know you answer after some staged deliberation to pretend you are working it out from first principles using your genius brain (bonus points if you can work "first principles" into the conversation). (2) The riddles you don't know the answer to are the ones you say you already read in a book or online and repeat this until you get back to a (1)
- saintfire 2mo agoThis was the real riddle all along.
- iioiio 2mo ago[dead]
- ThrowawayR2 2mo agoI've seen candidates breeze through the basic version of a question they claim to never have seen when asked and then choke hard when the requirements are modified slightly. Honesty is the best policy, kids.
- deleted 2mo ago[deleted]
- buildbot 2mo agoCounterpoint to many responses here - when I have interviewed people, it’s a really positive signal if the candidate says they have already seen a problem- the we can move onto something more interesting! Not solving does not mean failure either. As a candidate myself I always mention if I have seen similar problems, such as finding primes - real example, and I was hired on that loop at Microsoft! On the other hand, if I heard that a candidate had not mentioned they had the same question twice, or later let it be known they already knew the answer, I would lose a lot of trust in them. Be honest; it’s more likely you will be hired by honest people.
- goodpoint 2mo ago> Be honest; it’s more likely you will be hired by honest people. He applied for Microsoft.
- buildbot 2mo agoThe experience I was referencing was actually Microsoft!
- gofreddygo 2mo agoI'd preface the solution and the key point before mentioning that I'd seen this problem before and then further ask if they still want me to code up the solution. This eliminates the case that I, the interviewee might be bluffing. Also they might just be interested to know if you can think on your feet by then adding a twist later. who knows not my call. It would be dumb if the next one they throw at me is one i've also seen or is ridiculously hard for an interview. Then i'd question the value of my honesty.
- stephbook 2mo agoThe interviewer might also just be a cog in the machine and know how it works. "Just solve it and I'll note down an A+" is sometimes better than "candidate was honest, but didn't finish the alternative riddle."
- 2mo ago
- mircerlancerous 2mo agoSadly I've seen this kind of interviewing from lots of places; maybe it's a technique they teach in college or something. Interview questions like this are useless as they are not an accurate approximation of a real work scenario. I've frozen up at a whiteboard in an interview before, and then figured it out on the drive home. The best approach I've found is to do a send home quiz, and then ask them questions about the quiz to test understanding. The test also shows coding habits, which tells you a lot right there. Bonus: put some typos in the quiz that don't matter. Red flag for the people that get hung up on that.
- chrismcb 2mo agoPlease no. No and home quizzes
- ThrowawayR2 2mo agoAn accurate approximation of a real work scenario would be sitting in a conference room for two hours while trying not to fidget or visibly look bored as co-workers make a mountain out of a molehill.
- lovich 2mo agoAnd then after being 90% complete with the project having your manager or business liaison change the fundamental requirements at the last second and be mystified as to how that could possibly affect any sort of estimates or deadlines.
- anal_reactor 2mo agoOnce I've been to an interview where first they made us solve a problem in a group and then we had 1-1 interviews. After the group task the guy immediately asked me "Don't you have a feeling that you might've been forcing your opinions onto others?" to which I replied "Yes, I have.". Absolute fucking Chad I was.
- bitwize 2mo agoInterviewer's notes: anal_reactor is stubborn, difficult to work with, has little regard for others' opinions, not a team player. Do not recommend hiring.
- skittleson 2mo agoI really loved to work there. I knew alot of friends, toured the campus, and even worked with prior employees that had good experiences. Every product before 2015 was beautiful (i still miss my Zune). Then they broke me. I tried to give feedback on the products, interviewed, and really tried to reach out to them. Mostly ignored (except Outlook team, thanks ). The heavy marketing and tech debt within Windows is what did it for me. Rant over.... the interview felt like some trick questions at that time.
- shubhamjain 2mo agoAs I have grown older, I have realized dead-honesty is a false ideal to live by, especially when it comes to being rewarded in the capitalistic world. I know someone who reached executive level position in a major company and all of his career progress can be traced back to lying on his resume about a NASA internship he never got, which he conveniently purged later from everywhere. I wouldn’t go that far, but I think it’s perfectly fine to reverse-engineer the interview game and reap the rewards. There’s no reason to feel guilty about it.
- chatmasta 2mo agoThe candidate may have had more success if he saved the honesty for after he solved the riddle he claimed he already knew how to solve.
- Aurornis 2mo ago> and all of his career progress can be traced back to lying on his resume about a NASA internship he never got, which he conveniently purged later from everywhere I don't like when people get ahead by lying either, but nobody cares about your internship at the executive level. That one lie helped with the first job, but it doesn't explain all of the person's success. > There’s no reason to feel guilty about it. Even if we ignore guilt, there's a subtle problem that happens when you tell a lie to get a job: You have to forever hope that nobody checks it, that no contradictory evidence accidentally shows up, and that it never becomes a point of contention. I've participated in a lot of interviews where candidates never expected us to check claims they made. It's interesting to see the entire hiring panel's view of a candidate change when someone discovers they lied about something. Everything else comes into question.
- molybd3num 2mo ago"if you never lie, you don't have to remember what you said"
- artisinal 2mo agoI learned that if you put “2015 - 2020 / University X, Computer Science” on your resume, nobody asks if you actually graduated.
- vecter 2mo agoI interviewed for an internship in 2006 and didn't get any brainteasers, but I got some pretty interesting questions that were somewhat computer science-related: 1. Suppose you have a binary tree (NOT a binary search tree) where each node with pointers to its parent and children. Given pointers to two arbitrary nodes in the tree, find their lowest common ancestor. 2. My favorite: given a uniform random number generator mod 5, create a uniform random number generator mod 7 3. Forgot the exact question, but something along the lines of: suppose you want to keep track of function arguments as you call them. How do you do that? I got (1) and (2) and utterly failed (3). (3) is entirely trivial and basically a stated fact if you know how anything about how operating systems work, but I was a freshman in college and didn't know that function arguments got pushed on a stack in memory, so I was totally lost.
- leni536 2mo agoI would assign (3) to language runtimes and calling conventions rather than operating systems.
- dcrazy 2mo agoFWIW, in most architectures the first few function arguments get passed in registers. But so many of today’s programmers grew up with 32-bit x86, which has a paucity of registers, that they mentally shortcut to “every argument gets passed on the stack”. Nowadays, with x64 and AArch64, the first several arguments will be passed in integer or floating-point registers.
- yellow_lead 2mo ago> You have 12 marbles and a balance scale. One of the 12 marbles is inconsistent with the others, meaning it could be heavier or lighter than its peers of normal weight. You are allowed to use the balance scale exactly 3 times to identify which of the 12 marbles is irregular AND determine whether it is heavier or lighter than normal. I also got this riddle, in 2015. I couldn't solve it. Tbh, I think it's a terrible question. There isn't really a step-by-step problem solving process, but you just need to have a "leap" to realize you can weight the marbles in groups of 3. I also got rejected. It's crazy to get rejected from a one-question riddle like this
- Swizec 2mo ago> I also got this riddle, in 2015. I couldn't solve it. Tbh, I think it's a terrible question. There isn't really a step-by-step problem solving process, but you just need to have a "leap" to realize you can weight the marbles in groups of 3. It’s an information theory question similar to the “how far can you drop the egg before it breaks” puzzle. You don’t need a leap of intuition, just remember the right theorems and formulae from college. I probably would’ve failed the interview. At best I could write an algorithm that empirically arrives at the answer, which may or may not impress the interviewer enough to pass. Stuff like this is why I dropped out of coding competitions some time in high school. You can always brute force the easy version, then the next tiers drop numbers that cannot be solved unless you know (or can invent) that one weird maths trick.
- krackers 2mo ago>It’s an information theory question similar How would you approach it from an information theoretic sense?
- judofyr 2mo agoIn the initial state there's 24 (12 * 2) different possibilities: The marble you're looking for is one of 12 and it's either lighter or heavier. By using a balance scale there's 3 possible outcomes (left side is heavier; right side is heavier; same weight). This means that for your last (third) weighing you'll have to have reduced the problem down to 3 (or fewer) different possibilities. If there's 4 or more there's no way to reduce it down to a single possibility. Before the second weighing you should have reduced it down to 9 (3*3) different possibilities. Once you know this, you can start making educated guesses for the first weighing and quickly eliminate those which makes it impossible to continue. For instance: Splitting the marbles into two. This gives two possible outcomes: Left side is heaver or right side is heavier. For the first outcome it means that either the target marble is lighter and part of the left group (6 marbles) or heavier and part of the right group (6 marbles). That's 12 different possibilities (more than 9) and therefore we know that it's impossible to determine the marble with just two more weighings. There's still guessing to be done, but at every part of the decision tree you can at the very least quickly avoid exploring paths which are guaranteed to not work.
- Panzerschrek 2mo ago> You have 12 marbles and a balance scale. I hate such interview questions. They have nothing to do with think one really needs to do in practice. It seems for me to be just a way for interviewers to show their intellectual superiority.
- not_a_bot_4sho 2mo ago> They have nothing to do with think one really needs to do in practice. See, this is why you weren't selected for the team: https://imgur.com/a/xnHgjjH https://imgur.com/a/xnHgjjH
- jo-m 2mo agoWell, maybe you can use this to trick the interviewer into giving you a new problem if you don't know the first one they give you.
- waynesonfire 2mo agothat seems very risky. it doesn't take much effort for the interviewer to spot a trickster, forfieting the interview. There is also no telling the second problem would be easier. I'd rather take my chances and hope i solve it or try to limp through with a hint.
- throwawayffffas 2mo agoThat is exactly what the interviewer did. And yes solving the problem you know how to solve is the right move.
- fp64 2mo agoThe article only mentioned he asked for a different problem, not that he was quickly explaining the solution and then asked for a different one. So this were exactly my thoughts, it's a bit like getting asked to find the roots of a polynom and replying "oh I already know how to do it, can you ask me something different?"
- ThrowawayB7 2mo agoOdd that they received a brain teaser at a MS interview in 2015. IIRC that's several years after internal interviewer training was updated to recommend that brain teasers not be used in interviews because they weren't useful.
- flakes 2mo agoI interviewed with Microsoft at the end of 2016 as a new grad and was given the same marble question over the phone. I then made it to the on site interview where I failed horribly haha.
- userbinator 2mo agoI have not seen this problem before, but the answer seems blindingly obvious? A balance is trinary, not binary. You just need to explain the decision tree.
- noduerme 2mo agoI hadn't seen it before either. I solved the branches in my head in a couple minutes, and my initial impulse was instinctively 4-4-4, but until you said trinary I didn't think of it in those terms.
- tayo42 2mo ago> I’m afraid I’ll never know! The rejection was so generic and there's so much random bs that goes on it could be anything that lead to that result.
- aryehof 2mo agoSadly interviews are really aptitude and personality tests, perhaps knowledge of leetcode, tools, frameworks and languages. In an industry that loves calling itself "engineering", it seems nothing further of value can be established?
- mrheosuper 2mo agoI have question for MS people. How do you guys view external contractors(the one with email address start with v-xxx) I was contractor for MS for a while and it was not a very positive experience. i was kind of being forgotten and only be mentioned when convenient. I went by months without any actual real work done.
- lode 2mo agoI definitely experienced that “yellow badges” were viewed by long timers as somewhat of a lower caste. Starting with the first onboarding day where they were given hand-me-down phones and laptops. (This was a long time ago, during the Ballmer era. Just my personal 2 cents.)
- alternatex 2mo agoSpeaking as someone who worked offshore for most of their career and is now a full time employee at MS. Vendors are treated as vendors usually are. They are given the work that nobody wants (work that provides no career growth and usually is uninteresting), they get the least amount of attention and mentoring, they are expected onboard quickly with little help from the team, etc. I have noticed that I'm more empathetic to vendors than people who have never been the offshore/contractor person.
- exodust 2mo ago> "I told the interviewer I already knew the riddle, and I asked for another one." The question wasn't "do you know this riddle", she just wanted the riddle answered. No need to make it more complicated. There's no lie in withholding information never asked for. It's possible the request for a new riddle was interpreted as a ploy to get an easier riddle.
- barrenko 2mo agoHR is modern priesthood, and their function is to prevent the "unwashed" from ascending up the higher ranks. Now there I've made it much worse (or better!) than the actual reality, which is that there's just not enough quality engineering jobs no matter which way you cut it and all of this theatrics result from scarcity.
- modeless 2mo agoOnce long ago when I interviewed at Apple I was asked the classic "fork in the road, two guys, one always tells the truth and one always lies" riddle, with complete earnestness as far as I could tell. Possibly the single worst interview question I've ever been asked. Of course I told the interviewer I'd heard it before and then gave the correct answer. In my case we just ended up chatting about previous experience instead of doing another brainteaser and I ultimately passed the interview, I think. But afterward the recruiter strung me along for weeks telling me they wanted to make an offer but not giving me one, and I ended up going to Microsoft instead. Not the worst interview experience I've had, though. That would be the time I interviewed for a full time position after an internship and a group of guys who knew me and had worked with me all summer asked me a pointless brainteaser as the only interview question. I crashed and burned for a full 40 minutes in front of them. Humiliating, and pretty much a pointless hazing ritual as they offered me the job anyway. Luckily I got a better offer and was able to turn them down. Here are some other brainteasers I've been asked in interviews. I actually think these physics based ones are fun (probably because I had no trouble solving them), but they're still terrible interview questions: You're in a boat on a lake with a bowling ball. After you drop the ball overboard and it sinks to the bottom, is the lake water level higher or lower or the same? Three balls are on three downward sloping tracks. One track is a straight line down to the end, the second is the same except for a small hill in the middle, and the third is the same except instead of a hill it has a small dip. All tracks start at the same height and end at the same height and cover the same horizontal distance. The balls are released at the same time and roll to the end without leaving their tracks. Which one gets there first?
- kstenerud 2mo agoUltimately, the problem is that every person has their own anecdata-driven or follow-the-leader-inspired ideas about how to interview effectively, and large swaths of them are in stark opposition to each other. And now after decades of research, we're still using magic potions that mostly don't make sense.
- piskov 2mo agoIt makes sense alright. The qualities that are needed to grind the algorithms, system design, and what have you have a nice correlation with success later Perseverance, diligence, sheer will to grok the somewhat boring shit. Even writing some code in the notepad/whiteboard means you have enough mental RAM/stack/context window to keep the bits in the head. — So it ain’t no “magic potion”. Ideally we had a less strenuous thing ( Bloodborne/Dark Souls platinum trophy for the diligence part? :-) ) but you can’t always have what you want.
- npodbielski 2mo agoYes, the best way to land yourself a good gig is to have a friend in the company already and will put a good word.
- meerita 2mo agoNow I understand why Microsoft, Apple, and other tech giants are slowly falling behind: they put strong candidates through a series of puzzles. What a great way to filter out talented people. Great times. Very character building.
- atoav 2mo agoI once had a geography teacher who had the absolutely unhinged habit of asking spontaneous gotcha questions designed to make himself look good. The kind where the question doesn't contain enough information to get to the answer he had in mind. Then when someone answered the question correctly, but didn't use the exact answer he had in mind he went all "gotcha!". Sometimes he asked the same question again and when someone remembered the answer, he still went "gotcha!" only with a changed answer. The lesson I learned from that guy, was that sometimes a question says more about the person asking it than about the person answering it — more precisely that men with small egos bend reality to get the outcome they prefer. The appropriate strategy with him was to ask in a Socratic way while stroking his ego: "But haven't you thought us X is Y? I would like to get it correct!", then he would squirm around and admit that yes, this is also correct. This type of dynamic can also occur in interviews.
- dmurray 2mo agoIn these circumstances I always say "I've seen something similar before". That has the benefits firstly, that the interviewer will probably go ahead with the question anyway while still noting your honesty; and secondly, that it's usually true - it's possible this problem is subtly but importantly different from the one I'm pattern matching against. There are half a dozen versions of this ball problem.
- cronin101 2mo agoMy favourite interview question that I received was when I was asked to write code that would serialize/deserialize a binary tree and was told it was fine to use "any programming language". They received a crash course in the power of Haskell ADT and `deriving (Show, Read)`.
- skylurk 2mo agohttps://aphyr.com/posts/340-reversing-the-technical-interview https://aphyr.com/posts/340-reversing-the-technical-intervie...
- throwaway2037 2mo agoI like the next blog post even more: "Hexing the technical interview" [1] [1] https://aphyr.com/posts/341-hexing-the-technical-interview https://aphyr.com/posts/341-hexing-the-technical-interview
- benrutter 2mo agoThose kind of abstract CS interview questions never feel that helpful to me, but in all honesty, your story sounds like a job of the interview working. You were able to demonstrate that you were enthusiastic and knowledge about programming as a whole, which is probably more helpful than what they were originally trying to test for.
- moron4hire 2mo agoWhat is "abstract CS" about binary trees and serialization?
- xeromal 2mo agoI think it's because most of us don't do CS once we graduate. We build APIs and websites which don't involve CS at all. It barely involves engineering. lol. No one uses binary trees or some manual form of serialization. They use "superlib.search(arr)" or (seriliazer.parse(thingy)" and that's about it. No one cares about what it does. They just know it does it faster than something they could write. The only places that care about it are at the utmost peak of scale. Heck, I run an API that gets tens of millions of reqs a day and I'm an idiot that couldn't computer science their way of of a paper bag.
- keeda 2mo ago> Microsoft, of all places, might sound like a weird company to target in 2026. Heh, Microsoft might actually have been weird to target in 2015, especially in SV / startup circles, given that pg had declared it dead in 2007 (https://paulgraham.com/microsoft.html https://paulgraham.com/microsoft.html) I guess the Netherlands didn't get that particular memo. In 2026 Microsoft might actually be interesting again, given it's up there in the Mag 7 jockeying for position in the AI race. I know it's gonna be impossible to get an accurate vibe-check on HN, but I wonder what younger folks think of it today...
- ventana 2mo ago2015 was one year after Satya Nadella became a CEO, and Microsoft looked pretty OK to me back then. Much better than a few years before that.
- keeda 2mo agoRight, that was the Ballmer era, and when pg pronounced them dead. But I do think that perspective didn't appreciate the coporate Game of Thrones (https://substackcdn.com/image/fetch/$s_!Vk-D!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa83209a5-d055-4eb6-bafd-cd36727938d3_666x436.png https://substackcdn.com/image/fetch/$s_!Vk-D!,f_auto,q_auto:...) Ballmer had to play to pave the way for Satya to remake Microsoft from a Windows + Office company to an Azure + Windows + Office company.
- LoganDark 2mo agoNot super young but I've felt like Microsoft has been really sloppy. Not like, AI sloppy, but like, not good at their jobs. They've always just seemed stupid to me. Windows feels so basic and primitive compared to other operating systems.
- keeda 2mo ago> Windows feels so basic and primitive compared to other operating systems. That's interesting, the complaints I hear most often are about bloat and lag. I'm on Mac as a daily driver but whenever I use Windows I don't find much lacking, just maybe it's more optimized for different workflows. Do you mean in terms of features, or polish, or capability?
- ventana 2mo agoJust don't ask brain teasers when you conduct an interview; I believe they give no valid signal at all, and I also believe Microsoft does not ask them anymore. The coding questions that require an "aha!" moment are very similar to brain teasers, and should also be avoided. When I conducted interviews for FAANG, I asked somewhat simpler coding questions, something around DFS and/or topological sorting (without calling it by name, of course), because those are thing which you might actually need to implement at work: people sometimes traverse JSONs, and people sometimes resolve dependencies. No one has ever told me "oh, I know this problem, it's DFS", because surely I know they know it. Just show me that you can write the code.
- viccis 2mo ago>The coding questions that require an "aha!" moment are very similar to brain teasers, and should also be avoided. The problem with these is that their solutions always seem trivial when you are shown them (or spend time solving yourself) and then mull over them for a while.
- ventana 2mo agoI've been doing "daily leetcode" for fun, just to remember how to write code manually without agents, and a few days ago they gave a brain teaser kind of task [1], for which the solution was just [2] (spoiler alert). It took me quite some time to come to that solution, and I'm not really sure I would've found it with all the stress of being on a real interview. [1]: https://leetcode.com/problems/stone-game/ https://leetcode.com/problems/stone-game/ [2]: return True
- viccis 2mo agoYeah one of the worst offenders of this are the leetcode problems that have a clever but extremely elegantly simple greedy algorithm (such as "return True" lol). Great example is Majority Element [1] The answer seems pretty clear when you think about it enough, even the proof seems like it makes sense. The problem is marked Easy on Leetcode. But coming up with the algorithm and proving its correctness is a two-name algorithm with its own Wikipedia article. In your example, the challenge isn't even really to "design" that algorithm, it's to prove that it's true. 1: https://leetcode.com/problems/majority-element https://leetcode.com/problems/majority-element 2: https://en.wikipedia.org/wiki/Boyer%E2%80%93Moore_majority_vote_algorithm https://en.wikipedia.org/wiki/Boyer%E2%80%93Moore_majority_v...
- MPSimmons 2mo agoMy favorite (probably apocryphal) Microsoft brain teaser question I've heard is, "If you had to move Mt Fuji, how would you do it?" I've never interviewed there, or been asked that question, but I think it would be a lot of fun to answer.
- sgerenser 2mo agoThere’s a whole book on Microsoft’s hiring brainteasers, appropriately from 2004 right around when the practice was waning and brainteasers started to get a bad reputation: How Would You Move Mount Fuji?: Microsoft's Cult of the Puzzle (https://www.amazon.com/dp/0316778494 https://www.amazon.com/dp/0316778494)
- alwaysmrno 2mo ago"One mouthfull at a time"
- chrisjj 2mo ago> "If you had to move Mt Fuji, how would you do it?" Wait 1s.
- deleted 2mo ago[deleted]
- rwmj 2mo ago"I wouldn't even try it because I don't want to be deported from Japan."
- dcrazy 2mo agoWe do it every several years. It just takes a lot of paperwork. https://en.wikipedia.org/wiki/World_Geodetic_System https://en.wikipedia.org/wiki/World_Geodetic_System
- sajithdilshan 2mo agoBrain teaser questions are the dumbest thing one can ask in a software engineering position interview. One time I interviewed for Deutsche Bank. There were two interviewers and one guy joined half way through the interview and was completely focusing on something else. At the end of the interview other interviewer asked from the distracted guy if he has any questions and he came up with the stupidest brain teaser question ever, I don't even remember what it was, but after I answered it, he changed it again and then I asked the answer from him, and was very arrogantly said "I'm sure you know the answer" and I immediately said back, "But I guess you really don't know the answer to your own question right?". He was dumbfounded. I think he didn't expect me, the candidate to call him out. Afterwards, I immediately sent and email to the recruiter about how bad the interview was and one interviewer was being more than 30 mins late and withdrew from the process and added Deutsche bank to my black list.
- sulot3212 2mo ago[flagged]
- bitwize 2mo agoQuestions like this, and things like Leetcode, etc., are a measure of not only your intelligence, but one of the most valuable skills you can have as an employee: the ability to "carry a message to García". https://en.wikipedia.org/wiki/A_Message_to_Garcia https://en.wikipedia.org/wiki/A_Message_to_Garcia That is, when given an assignment, to faithfully carry it out to the end, without wasting your superior's time with pointless questions or excuses as to why it cannot be done. This, and this alone, is what separates the outstanding employees from "the imbecility of the average man". Tim Bryce has observed that the average programmer is mentally lazy and prone to sloppy thinking; simple tests like this will help to weed these out. The sillier, the better, in fact, as long as the puzzle actually has a solution. OP has failed the test, and justly gotten himself preemptively fired for insubordination.
- JSR_FDED 2mo agoA friend told me about his AWS interview experience. It was a case study describing a potential client, their needs, limitations, etc - trying to be “realistic”. In the end it came down to either pressuring the client to embark on a complex cloud transition in time for a major sports event (that was a make or break event for the customer) or, as my friend recommended, start with a PoC but do the risky transition after the sporting event to minimize the potential for a catastrophic failure if things didn’t go to plan. He didn’t get the job because even though the technical attributes were all good, he should have pressured the customer. My takeaway was that interviews are a game with their own rules, and you have to play by those rules - demonstrating some sense of judgement outside the parameters of the game will not be tolerated.
- neuroticnews25 2mo agoIf you consider getting hired despite value mismatch winning the interview game, then good judgement would be recognizing that you're expected to push the products aggressively even when it's bad for the client.
- makeitdouble 2mo ago> He didn’t get the job because even though the technical attributes were all good, he should have pressured the customer. I'd say he didn't get the job because they would have asked him to pressure customers day in day out, he would refuse, never get promoted and be otherwise miserable in an aggressive culture. IMHO he shouldn't change his answer to please the interviewer, the process is working as intended and I'd assume he found a job that better matched him somewhere else, where his mindset will be better valued.
- achenet 2mo agoYes, strongly agree with this. The goal when interviewing is not "get the job", it's "am I a good fit for this role". If the company is some weird dysfunctional hierarchy run by socio-paths, I'll be happier elsewhere. Or to put things in a much more pretentious manner - If you're too stupid to appreciate my genius, you don't deserve to work with me :)
- jeffrallen 2mo agoCompanies that use riddles get the employees they deserve.
- yitchelle 2mo agoJeez, the text in the rejection letter is the same today as it was back in 2015!
- lkramer 2mo agoYou can not improve on perfection!
- xyzelement 2mo agoso funny to read the reactions here. "Puzzles are stupid and hiring is broken" without thinking about how to navigate a question like that. I think someone without an "aha moment" can use a question like this to nail an interview: Candidate: thank for your the questions. I don't immediately see how we can solve this by using the scale only 3 times. What I would normally do in situations like this is explore a simpler problem to get an understanding of the space and some solution that works and then try to improve it. Can I try that? Interviwer: absolutely. Makes a note: candidate able to propose an approach when answer not obvious. Able to nareare their thinking. Candidate: let me think about a naive solution first. We just weigh the balls in pairs. If two balls weigh the same then neither is the answer. If the pair doesn't weigh the same then one is the answer but we don't know which one. So we need to compare one of them against any of the other balls: if the scale is unbalanced then that one is the answer, otherwise the other one. I think this tells us which ball is the answer but obviously we use the scale too many times. In this case at best we use the scale twice and at worse seven times. Interviwer: great - I agree this works but uses the scale too much. How can we improve it? Makes a note: candidate able to design a simple algorithm that gets the answer.and evaluate its performance. Candidate: the fact that we have to do the final weighting even after we know which pair has the imbalance and the fact that I can compare against any other ball seems interesting. Let me think about that for a second. ... Hmm hmm hmm ... Hmm hmm hmm (Fails to have the aha moment) Interviwer: ok that's a good insight. What if you could place more than one ball on each side of the scale at a time? (Gentle hint that can put the candidate on track without giving away the answer) Candidate: oh interesting! I wasn't visualizing it that way. ... Ok! So we have the pattern of "figure out which pair has the imbalance and then which one in the pair is the weird one" so now we can generalize it Let's try this: I weigh 3 vs 3. If balanced, it takes me 2 weighings to figure out which set of 3 contains the answer. And from there another 1 or 2 to figure out which of those 3 balls is the answer. So now our "worst case" has gone from 7 to 4. That's better but still falls short of our goal of course ... Interviwer: Makes a note: candidate is open-minded to feedback and made good use of a subtle hint to improve their solution while still realizing the goal is not met. OK! this is a good improvemen. There was something interesting you said: that it could take 1 or 2 weighings to figure out which ball of the 3 is the answer. I am curious about the case when you can do it with 1. What's that about? Candidate: well if we weigh two balls and they are the same - that tells us something about the one we didn't weigh. OH! Ok I see why you are drawing my attention to that. What if we took the same approach to the initial step of the problem. Let's try: split the 12 into 3 sets of 4... (Etc etc) Interviwer: this was fun! Thanks for working through this problem with me Makes a note: candidate is a solid problem silver, able to define and analyze a solution and look for improvements. Did not give up. Listened carefully and made good use of hints provided. Able to show transpancy into their thinking and collaborative. Would not hesitate to bring them on the team, leaning hire. Better than "this is a bad question, I hate puzzles" huh.
- steveBK123 2mo agoOne thing I've taken away in my career, interviewing every 3-5 years is that difficulty of interview & difficulty of job are uncorrelated. Often they are inversely correlated. Possible reasons.. Sometimes a team is growing so fast / or turnover is so high / everyone is so busy / etc that they cannot really stand up a proper interview process .. and/or they just need to get people into seats, and are happy to fire fast later. Sometimes a job is so boring and team leads have so much time on their hands that they can construct immaculate interview processes and spend hours grilling candidates.
- gwbas1c 2mo ago> difficulty of interview & difficulty of job Define "difficulty of job" I'm going to assume you mean "people problems;" because the best way a team avoids people problems is by interviewing very, very carefully.
- WorldMaker 2mo agoYou avoid people problems by interviewing soft skills as soft skills, not building elaborate mazes of "technical interviews" that are really soft skill interviews testing how pedantic you want to be or how much you want candidates to sweat in soft skill-dominant conditions that don't resemble your job that you are hiring for.
- LanceH 2mo agoMy current stumbling block is the "design" interview. I get what they're going for and what I have to practice, but as someone with 25 years of experience I just can't help but have my experience creep into my thoughts. Chief among those thoughts is that we can't design a clearinghouse for a banking system that already has 11 components and the request is just two simple sentences asking for a design. I apparently have an hour to complete this design task. An hour is so laughably small a time to get onto the design phase. Again, I understand what they are going (I'm just not practicing it) for but it all feels like they're hiring for tennis but interviewing for ping pong.
- cloverich 2mo agoComing from another experienced dev who was frustrated (early) - one tip. Don't over think it. I was tripping up in two system design interviews that ultimately boiled down to them wanting laughably basic answers (one pagination, the other a db transaction). Don't be afraid to deal in basics and then directly ask if they'd like something more detailed, or not. Many places, especially non-elite ones, treat system design as a _very_ basic test of knowing how pieces fit together.
- herodotus 2mo agoMy most interesting interview experience, but as interviewer not interviewee, was when we interviewed someone by phone and could hear a friend of the candidate whispering answers to him. He was not offered a job. We should have offered it to the mystery voice person.
- deleted 2mo ago[deleted]
- Bisuta 2mo agoummm..!
- zeezer0 2mo agoGoogle analysis of their own hiring data shows these questions provide no predictive value for job performance. Gets you a bunch of puzzle experts. Probably bad idea since they will enjoy wasting time playing sodoku on the job instead of focusing on their work.
- mikestew 2mo agoMost interesting is that interviewers were still asking such questions some fifteen years after Microsoft interviewers were told by HR to quit asking such questions (because the answer might rely on cultural knowledge, etc.) Source: as an interviewer, I had to sit in that meeting.
- j_rosenberg 2mo agoYou are not required to be honest with corporations, corporations are not honest with their consumers or employees.
- wombat-man 2mo agoWow, I got the same question, wonder if we interviewed with the same dude. I have had an interview or two where I got a programming challenge, and I was able to solve it with intuition. I don't know exactly if I didn't explain my reasoning well enough, or if my code was just too messy even though the tests passed, but I didn't get the job. Sometimes they want some insight into how you think, and they might not get it even if you solve it.
- newobj 2mo agoWhat? They were still asking these Mt Fuji ass questions in 2016??
- apwheele 2mo agoMy experience like this was for a data scientist position at Facebook in 2022. So the question was something like, here is a table of predicted probabilities for credit card transactions (hypothetical table, I do not remember the exact quantities), but it looked something like this: Amount, Probability, ActualFraud $5 , 0.2 , 0 $100 , 0.5 , 0 $3 , 0.7 , 1 $1 , 0.9 , 1 And then the question was "what was the threshold used to maximize (precision|recall)?" (I cannot remember which metric they were asking for). My response was that a proper decision model should take the dollar amount of the transaction into consideration, so the decision should more like be `$*p > threshold`, where this threshold meets your precision and recall for preventing dollars lost instead of the binary yes/no. The interviewers English was not great, so after all that I was just like "well to answer your exact question, it could be anywhere between `0.5 < p <= 0.7`" Did not make the second round!
- gwbas1c 2mo agoA common interviewer mistake is looking for exact answers, assuming that a candidate just needs to regurgitate facts.
- winternett 2mo agoAt one point earlier in my career (during the early 2000s), they flew me to Chicago, picked me up in a limo and gave me a tour of the office... I knew I didn't want to relocate (from the East Coast) and remote work wasn't an option back then, so I had nothing to lose... They asked me the question of "4 lightbulbs in a room down the hallway, with 3 light switches in the room I'm in" to tell which switch belonged to which bulb... I went in totally unprepared for logical tests, and flubbed the perfect answer partially, but it was funny because I asked the guy if I was "doing an interview to be an electrician or a software developer?". Since then I've been just fine, and to this day, I've never had to answer that question nor use that type of logic on any job... I reverse engineer & migrate major software apps all the time as a Solutions Architect & Development Director. I've always found interviews that involve behavioral and cognitive tests to never be good for me as long-term jobs... Now I interview & hire people regularly without asking those types of questions at all because the questions can too easily be studied & rehearsed prior to interviews.
- gwbas1c 2mo agoHalfway through my career, being on both sides of the table (interviewer and interviewee,) I've observed that a common interviewer mistake is to expect candidates to regurgitate facts; or be able to provide a memorized answer. In this case, the goal is to hire great engineers; and great engineers do not memorize solutions to every problem, nor can they come up intuitively with great solutions in a matter of minutes.
- thomastjeffery 2mo agoThe problem is much bigger than that. Their goal is to find a "good fit", not to find a good engineer. That's why their software is so incredibly disfunctional: it's just a reflection of their workplace culture.