9 ms·
This is getting ridiculous. These guides to interviewing at specific companies are starting to sound like the video game cheat code books of old. If the proce
by matmann2001 7y ago
This is getting ridiculous. These guides to interviewing at specific companies are starting to sound like the video game cheat code books of old.
If the process is so nuanced that there's an entire industry around these types of guides (and Google even highly recommends you buy them!), then the process is fundamentally flawed.
But we already knew that, and as long as others are still playing the game, we are forced to play or miss out.
- strikelaserclaw 7y agolearn with the intent to become a better engineer, even if you don't hit the google mark (which is arbitrary anyway), you will become a better engineer. That is the philosophy most people should use when trying to aim for these companies. Don't cram, learn.
- ahelwer 7y agoI disagree. Doing competitive-style programming and learning all sorts of weird algorithms has not made me a better engineer. I can count on one hand the number of times in my career that I have had to design or use an "interesting" algorithm - and no, not in the "not knowing what you don't know" sense where I could have used one if only I'd known about it.
- sanderjd 7y agoI'm very critical of this approach to interviewing in general, but it also isn't the same as competitive programming and it isn't focused on "interesting" algorithms. It is far more focused on understanding how to use data structures and the trade offs between them. Chapter 3 of "The Algorithm Design Manual" (which is fittingly titled "Data Structures") is really the most useful reference for the majority of these interviews. I don't think this is the most useful thing for software developers to be good at, but it's definitely useful and worth learning. I was annoyed that I had to study for one of these interviews, but ended up being pleased that it forced me to review this material.
- blackflame7000 7y agoMost algorithms focus on: 1) binary trees for which theres usually a STL 2) some sort of odd string / array manipulation that never comes up in real life 3) some sort of linked list manipulation where again there is an STL for that and/or wouldn’t come up in real life 4) some optimized algorithm that literally took the first person years to discover prims vs kruskals MST for example, but now is expected to “figure out” on the fly. 5) Expects you to solve all these tasks with an insane time pressure that again is not a simulation of real life, it just makes it stressful almost as a rite of passage
- sanderjd 7y agoNone of that rings true to me. Like I said, I really dislike the way we do interviews, but I find this to all be exaggerated to the point that it weakens your argument.
- int_19h 7y agoI think the point is that you don't need to understand the gory details of how e.g. your hashtable works - for most coders, it's sufficient to know that it exists in the standard library; it's O(n) on space; it's amortized O(1) on retrievals and updates, but can be O(n) on some inputs; and that there is a class of security issues related to using untrusted data as keys. They don't really need to know why all these things are true, or know how to implement it from scratch.
- blackflame7000 7y agoExactly! The field is so large and growing rapidly that it’s unnecessary to memorize the inner workings (especially down to the node pointer level in c++ where you’re begging for trouble and it will be a nightmare to maintain unless you have a performance specific reason not to use the stl) IMO being able to say “I don’t know the the specifics, but I would use dijkstra’s algorithm on this problem” shouldn’t disqualify you because you couldn't code it.
- 7y ago
- dominotw 7y agoI think this might be better mindset to approach it, instead of pure will power. correct or not.
- deleted 7y ago[deleted]
- emmelaich 7y agoOn the contrary; the fact that Google recommends them indicates the process is not flawed. That is too say, their interviewing process explores things at sufficient depth and breadth to make knowing "the" solution not a deciding factor.
- Gracana 7y agoMaybe the sort of person who has the time/desire/interest to study a guide to figure out how to fit in at google is exactly the sort of person they want to hire.
- djakjxnanjak 7y agoYeah, I don’t think my whiteboarding skills are particularly useful at work, but the personality type that makes me obsessively practice whiteboarding for weeks before a job interview tour also makes me effective at work.
- 0x8BADF00D 7y agoThe bikeshedding engineer is exactly what Google or Amazon is looking for. Nothing wrong with that either, I just take issue with the entire industry standardizing around that type of engineer.
- freyr 7y agoMy impression was the opposite. You're given a problem, there are usually a few clear-cut ways to solve it. You're expected to find an optimal or near optimal solution fairly quickly, and explain your approach clearly. That's it. I've thought the more open-ended, unstructured interviews lead to more bikeshedding opportunities.
- tehsauce 7y agoSounds pretty accurate
- lallysingh 7y agoWell, the (in house) recruiters recommend them. The engineering staff that does the interviewing generally don't get involved in this recommendations.
- ChrisCinelli 7y agoI completely agree. Even Google suggest to "practice writing syntactically correct code on a whiteboard". This is clearly a useless skill as a software engineers except in getting a job at companies that do whiteboard interviews. Did you try to refactor code on a whiteboard? How are they able to find people that are able to efficiently debug problems? When I interview people I tell them, "Bring your own laptop set up to be able to code and debug". And I give them "Fix this site" or "build this thing" kind of problems. It looks like that it works a lot better to find "hidden gems" and people that are good at "doing" instead of those that are jsut good at "telling".
- seanmcdirmid 7y agoI’ve heard that Google allows you to type code into a computer now during an interview. A welcome improvement in the state of the art. Still no access to a compiler or debugger, but baby steps.
- dominotw 7y agoI had to write code exclusively on white board last month. Only laptop in the room was interviewers which he was using it exclusively to furiously copy the code i was writing in the whiteboard. He said it will compile it and submit report when he gets back to his desk. :/
- tyingq 7y agoSounds like a great opportunity to whiteboard an exploit instead.
- keanebean86 7y agoI'm a moron and did something stupid not too long ago that would be perfect for this. I'm too lazy to find my actual code but here's the gist: C# but might working in Java/etc too * Create an Image of some size loop hight of image loop width of image Bitmap b = cast Image to bitmap since Image doesn't have the pixel method get pixel value or whatever looks legit end end This creates a new bitmap for EVERY pixel in the image. If the image is large enough and the system is 64 bit bad things happen. On Lubuntu this code burned through 8 GB of ram in seconds and was well on its way to eating all the virtual memory before I forcefully shut it off. Maybe this is a Linux issue but it hard locked my system. I couldn't switch to a different terminal or anything.
- dilyevsky 7y agoGoogle used to run “how to interview with Google” multiple day bootcamps where they’d train you to pass its interviews. I’ve gotten couple of those candidates and thought it was just ridiculous.
- retiredcoder 7y agoI think it is sad, it comes from your own employer (I understand you work for Google, correctly if I am wrong).
- dilyevsky 7y agoNot for a couple years now. Don’t know if they kept this program, I personally noticed only superficial improvement.
- dominotw 7y agoI had a coderpad facebook phone screen last week, interviewer said " that code the won't compile, can you see why?" .. It was missing a semicolon. on a related note, I write scala on daily basis but scala is not that well suited for coding interviews, I found.
- jammygit 7y agoFacebook likes their interview nonsense, but stores passwords in plaintext. I think the credibility of the system is in question
- jensvdh 7y agoThey didn't store pw in plain text. Pw were accidentally captured in logs and those logs were stored in an internal DB. This happens often.
- chopin 7y agoThat's storing passwords in plain text. "Happens often" is no valid excuse, on the contrary. If it happens often you should know about it if you are a qualified engineer.
- sk5t 7y agoThat's because Scala doesn't have nearly enough semicolons. Kidding aside, why do you feel Scala is unsuited to coding interviews, assuming the interviewer well-understands the language?
- dominotw 7y agohard to write heap sort in functional style with immutable collections. I guess you could write imperative style code.
- sk5t 7y agoWell, ah... unless you're applying at Amalgamated SortCo Industries, asking for on-the-spot sorting implementation is pretty high on the list of absurd interview questions. Anyway I'd think one might use an array and not some other list/collection.
- ummonk 7y agoOr it means the process is well defined enough that you can create a level field by telling everyone how it works through guides like this instead of giving connected people a leg up due to inside knowledge of a poorly defined process.
- doctorpangloss 7y agoI can guarantee you that more than 90% of people working in highly compensated positions at the world's most famous corporations have had a lot of "leg up" benefits in their lives.
- ummonk 7y agoLeg ups that have helped them become better at software engineering? Sure. Leg ups in the form of insider connections / elites? Less so, particularly for talent they're hiring today. This is a significantly more meritocratic industry than most, and within the industry, the FANGs are relatively more meritocratic than smaller startups.
- Techonomicon 7y agoMeritocratic in the most boring uninteresting sense of the term where you literally only work on things in a way which Google tells you will help advance you up their ladders while not actually working on anything in a way you would find interesting in general.
- deleted 7y ago[deleted]
- YjSe2GMQ 7y agoYup. It's in th same spirit as SATs - people also practice for that.