16 ms·
This is what I was afraid of. I always thought interviews were something where you present your abilities, experience and knowledge. It should not be something
by czardoz 9y ago
This is what I was afraid of. I always thought interviews were something where you present your abilities, experience and knowledge. It should not be something you "prepare" for because then you're not showing off your skills, instead you're just regurgitating what you are trained to do.
I do somewhat blame the whiteboard culture, but I guess that's the one that has given the best results so far. I've no doubt that it will change soon.
- Rebelgecko 9y agoThe idea of having a whole class on how to solve interview whiteboard problems (a skill that is, at least where I work, not very relevant to doing your job) is terrifying.
- electricslpnsld 9y agoThis isn't that far removed from an algorithms or data structures class, or what you would learn in one of those programming olympics type prep courses that people do.
- mathattack 9y agoIt’s 1 pass/fail credit out of 180 to graduate. The course looks as much like how to job hunt as anything else. (Resume writing, etc)
- colmvp 9y agoIn design school, we had one class which involved things like developing your portfolio, learning how to present yourselves to companies, interviews with Creative Directors, etc. Given that technical interviews a common method of partially evaluating engineers/developers, it doesn't strike me as particularly odd for a practical course to exist that helps students maximize their ability to get a job. As you mentioned, it's really only one class out of dozens of others they'll take over several years. Myself, I took a number of electives that had far less practical impact on my career trajectory.
- Bukhmanizer 9y agoI don't think most people have a problem with the class itself. It's more that the technical interview has gotten away from a practical method of showing what you know, and is now becoming a skill to maximize itself, whether or not it actually demonstrates if you can do the job. To take an absurd example, imagine if for some reason Law firms started requiring an Irish Stepdancing component to their hiring process. I'm sure broadly speaking, you'll see the most dedicated lawyers practicing away on nights and weekends, and the best Law Schools with the best students will hire the best Irish Stepdancing teachers. But at the end of the day, Irish Stepdancing has very little to do with practicing Law. Similarly, if solving stupid whiteboard problems has so little to do with being a Software Engineer, that they can't be learned in the 40+ other courses or internships/PT work, that a student will have to do in their time at University, then the question is why are they even done?
- jjkk0101 9y agohehe. My typical example for how a technical interview can go absurd is cartwheels. Again, nothing wrong with someone trying to get it right but at the end of day we all lose.
- phkahler 9y agoThis isn't quite so far fetched as it seems. Perhaps someone tried the dancing thing to see how a candidate handles himself in an awkward position under pressure in front of people. They found some limited value in it and wrote a blog post about it. Then other law firms started using it. It became a way for such firms to assess a candidates emotional strength under pressure. And now law schools are offering a 1 credit course in "interview dance". Seems to be the perfect analogy to what's going on here ;-)
- barry-cotter 9y agoI’m Irish. WTF is Irish step dancing or Irish stepdancing? On the correlation of irrelevant things to performance in a demanding job you know law school is at best as related to the practice of law as Bar review courses right?
- bitL 9y agoIt's nothing new when it comes to competitive programming, which whiteboard interviews are just watered-down versions of. Russian/EE/Chinese universities are doing that for ages: https://www.edx.org/course/how-win-coding-competitions-secrets-itmox-i2cpx-1 https://www.edx.org/course/how-win-coding-competitions-secre...
- wyclif 9y agoThe idea that you now need to take a class to learn how to successfully interview with tech companies in order to prepare for interviews is terrifying.
- BHSPitMonkey 9y agoAt Google, the recruiter who schedules your interview specifically recommends reading books written about passing Google's interviews. It's a little unbelievable.
- virgilp 9y agoI'm pretty sure they're incentivized to find candidates that get offers - not to find "good employees" or anything of that sort.
- danesparza 9y agoI would think there is a Venn diagram with an overlapping 'sweet spot': Good employees are probably more likely to get offers, as are candidates that prepare for an interview.
- expertentipp 9y agoSimilar experience, spent the same time preparing for the interview as for any other company + couple of hours of browsing some slides from university classes on data structures (sorry Google, you are not a special snowflake) - rejected after the first call:)
- michaelt 9y agoIt's a little unbelievable. If they believe they have the _ideal_ benchmark for a good employee, anything you do that improves your score makes you a better employee.
- jswizzy 9y agoI actually had a job where it was relevant. Solving whiteboard problems is half the job of a nuclear field operator. I had to do boards with the captain of the ship, senior enlisted, and the reactor officer to qualify watch stations. The other half of the job is cleaning bilges till you make first class or weasel your way into an office job. It's not a fun job by any means but it paid for my College so I could do something I enjoy, Computer Science.
- xiphias 9y agoGoogle interviews are mostly IQ tests. There are a basic set of primitives (algorithms and data structures) and you have to think fast and combine them. Google never cared about experience and knowledge as much as intelligence (the ability to learn fast): https://www.youtube.com/watch?v=fjs2gPa5sD0 https://www.youtube.com/watch?v=fjs2gPa5sD0
- brailsafe 9y agoFWIW, preparing for interviews is standard practice irrespective of the industry.
- NTDF9 9y ago>> FWIW, preparing for interviews is standard practice irrespective of the industry. Industry is sane. They ask stuff relevant to actual work or real basics. They don't make a gameable process full of rules and techniques.
- bearforcenine 9y agoIt's been my experience that any industry that * Is attractive enough (compensation, lifestyle, etc.) * and has a larger supply of qualified applicants than desirable positions Will result in applicants preparing for however they are interviewed, tested, etc. This isn't unique to software engineering interviews. People prepare for interviews or exams in finance, law, medicine, etc. They all have a system that is gameable. It might be newer in software engineering interviews, but that is mostly because CS is now incredibly popular and top talent is compensated very well.
- closeparen 9y ago“Interviews or exams” That you think interviews and exams are interchangeable concepts illustrates the problem. Nothing wrong with a rigorous filter at the gates of the profession, but lawyers don’t need to spend months studying for each company’s half-assed version of the bar exam each time they change jobs. Our industry is dysfunctional because, unlike law and medicine, no one trusts the credentialing mechanisms.
- barry-cotter 9y agoWhat credentialing mechanisms? As we’re told over and over a CS degree is not a trade qualification. Having a CS degree is no guarantee of being able to program either. The example of Microsoft and Cisco qualifications is not stellar either. They’re often seen as a negative signal. And most working programmers don’t have a relevant credential unless you count a Bachelor’s degree which is more a certificate of middle class membership than necessary to work as a programmer.
- quotheth 9y agoWhy should interviews test your ability to solve a problem you never expected to have to solve, rather than test your ability to prepare, research, and teach yourself?
- sjg007 9y agoOne can argue that this is the same thing.
- jasonlotito 9y agoSure, you could argue that, but you'd lose the argument every single time. Interviewers don't share the questions they are expecting you to prepare for.
- sjg007 9y ago? In the act of preparation you learn (hopefully) how to abstractly solve problems. So I’m confused as to your point?
- walshemj 9y agoso test for abstract problems not regurgitate rote learned algorithms
- walshemj 9y agoits not going to help you when something out of left field comes at you. For example a couple of years into my first job I got to work to be told we have just brought an a0 digitizer ( cost about 2x my then salary) id like you to hook it up to the PDP 11 and get it working. I should point out there where no drivers or software. I even had to make the serial cable up then write the drivers using some of the more advanced bits of RT11 to run two processes with the driver interrupting the main program when data came in on the rs232 port.
- sjg007 9y agoGood interviews involve problem solving from first principles. In CS it is mostly algorithms. Maybe some systems design and/or os and network fundamentals. That being said, to prep is better than to not prep.. just like the SAT. The problem is that these things favor those who make the time.
- Blazespinnaker 9y agoPreparation is a huuuuuuge part of being successful in the workplace[1]. Simply showing up just doesn’t cut it. Part of interviews aren’t even testing skills, but testing prep. Of course, you want to test for innate genetic talent as well. Good interviews do that, but as with gattaca, we see that desire and sincere interest counts too over genes. Preparation, sincerity, and genes. That’s what I like to see in potential employee, in that order. Sometimes, of course, one attribute really outshines the others - but its order in priority should always be factored in. 1. Source: individual who tried just showing up for 75% of his 20 year career.
- jasonlotito 9y agoSure. But at work, I know what I need to prepare for. Interviews don't exactly give you the questions ahead of time allowing you to prepare. So, preparation is not something they are testing for.
- closeparen 9y agoSoftware engineering does not consist of preparing for and then giving short/intense performances. Plenty of fields do - performing arts, film, trading, etc. all involve some form of short, intense, expensive activity to which you show up prepared and work in a burst of superhuman activity. But software isn’t like that at all - you get a problem and you dig into it, mull it over, research, etc. at your leisure until it’s done. We’re novelists, not actors.
- Blazespinnaker 9y agoThis is true if you have very junior level responsibility, but as soon as you need to take any kind of leadership role others will be looking to you to contribute in a manner that is not ad hoc. Also, you mention research. Research and preparation are synonymous.
- thaumasiotes 9y ago> Research and preparation are synonymous. This is wrong. If I want to handle a problem by researching it, I have a goal in mind ("solve problem X"), and I'll look for things that will help with it. Interview preparation specifically avoids that approach. Instead, you're supposed to become familiar with every possible problem, in case it comes up during the interview. Most of them, obviously, won't, and from a "research" perspective that means that nearly 100% of the time you spent in preparation was wasted.
- qwerty456127 9y agoThe reality is the majority of tech interviews today are filled with questions/tasks that have little or nothing to do with the actual job you are going to be assigned. In fact an average programmer doesn't actually need to know a single piece of computer science or math (almost all such stuff is abstracted by common libraries and frameworks, whatever is not can be looked up on demand) nor to memorize anything (thanks to auto-completion and all the docs and Q&As being just a couple of clicks away), let alone to have skills in solving puzzles. Yet every other interviewer will ask you to write code on paper and give you puzzles on computer science, physics and everything. They will also ask you about your previous salary and the reason you have left the previous job (both matters are purely private IMHO), why have you chosen them (ridiculous, I just want to earn living in a sound company and have sent the CV to a number of companies to land the first one that feels fine and wants me), what do you want to achieve in n years (never thought about this, just want a job) etc. And a funny thing: a friend of mine (an experienced developer with history in multinationals) has once told me he was rejected told being "too unsociable", "talking too little" which is the perfect opposite of what he actually is (dozens of his friends would undoubtedly confirm). Puzzles are fun, intelligence is reasonable to be benchmarked, nevertheless the interviewing thing is done at least slightly wrong usually IMHO. I just hope some scientific research is going to emerge in this area in near future to help rationalize the hiring process. As for myself I ask nothing but the candidate's opinion on some relevant subjects (the opinion itself doesn't really matter much but it can indicate certain degrees of awareness, understanding, intelligence and motivation, also the talk can somewhat demonstrate the personality) and their GitHub profile.
- flor1s 9y agoI don't think these kind of coding interviews are given to average programmers though, and if they are I'm sure they are taken with a pinch of salt (or with a lot of help from the recruiter, or using simple tasks such as FizzBuzz [1]). In my experience, having been an average programmer (and maybe still being, I hope that by now I'm at least slightly above average) who worked in The Netherlands at a "system integrator", a web dev "sweat shop" (some projects using 10 year old tech, relatively high staff turnover) and even a startup, such companies don't ask for whiteboard coding, however take home projects are quite common. I also interviewed at some more "hot" unicorns in Japan, which do have these kind of questions (using a dehumanizing online test in fact). 1: http://wiki.c2.com/?FizzBuzzTest http://wiki.c2.com/?FizzBuzzTest
- dietr1ch 9y agoI think it's rather silly to "prepare" for an interview, but IMHO what they expect at Google/Facebook/Amazon/Microsoft is not something you should really need to prepare for if you took the time to really understand the algorithms and general techniques you study as a CS undergrad. Rehearsing at a relaxed pace over a single weekend should be more than enough, particularly to get used to discuss your ideas and using a whiteboard.
- ng12 9y agoI completely agree. Every time I start a job search I dust off my copy of "Cracking the Coding Interview", do a half dozen problems on HackerRank and I'm good to go. Sure, it's not exactly the skillset a professional software engineer needs -- but if you're a professional software engineer it really shouldn't be that hard.
- czardoz 9y agoYou're absolutely right. The problem with these kinds of courses is that you will now be competing with people who have been specifically taught how to prepare for and crack technical interviews. I am pretty sure that they will perform better than people who just spend a single weekend rehearsing.
- deepGem 9y agoWholeheartedly agree. These companies most likely are trying t o understand the 'why' behind your algorithm choices. Of course, there are exceptions but largely this is the case. Understanding the why only comes to you, if you really understand the algorithms and are able to map those algorithms to use cases.
- akhilcacharya 9y agoEither I’m a bad student or you have an inherent ability that I don’t have. I’ve interviewed at all of those companies and you need a lot more than a weekend to succeed - even my friends with offers took more time to study than that!
- dietr1ch 9y ago
- ianamartin 9y agoOne of the things I miss about being an orchestral musician is that you always knew what you were getting into when you went into an audition. You've known the pool of excerpts for your instrument since you were in college; you've been working on them for years; you've probably known the excerpts for this particular audition for months if not a year. Every one of them is the same: you go in behind a screen, and you have to play those few minutes of music better than anyone else that day. It's hard to do because they choose the hardest stuff, but you know what you're up against. It's very imperfect. It doesn't reflect most of what you're going to be doing in the job. You might play one of those pieces in a given season. The bulk of your time is spent listening to the players around you and playing in sync with them, understanding what the conductor wants, etc. There's a lot more to being a good orchestral musician than being able to nail your part for Don Juan completely alone without context. It's not great, but it is consistent. Evert tech interview I've had in person has been wildly different. Even since I learned pretty early on to ask about the process. You still have no idea. It can be anything from an entire dev team grilling each other in a pissing match that had almost nothing to do with me, to 1:1 with someone grilling me about the finer points of a PhD topic they just finished years studying to a casual conversation over coffee just to get to know you to live coding exercises where you have an hour to write a 3-d car driving game to a conversation with part of the team where they tell you about their real-world problems and ask you for ideas about solutions to getting paid to work on a live project. All for web developer or data engineering positions. I remember being in one interviewer role a while back for a dev ops person for the team. I got thrown into the mix at the last minute because the other interviewers realized the day of the interview that they don't know anything about dev ops, and I kind of carried that portion of things for us. They had literally nothing to offer to the conversation, so it was unprepared me interviewing a highly competent dev ops pro. After 20 minutes, the other interviewers left and said, "I really don't know why we're here. I don't understand any of the words either one of you are using, so just carry on without us." I felt really bad for that guy. He was really really good, and the only thing we got out of it was that the team didn't know why we were hiring for that position. The amount of variability is truly insane. I hope that whiteboarding culture doesn't win the standardization contest because even worse than in the case of a violin audition, there really should be no performing or bravado in an engineering team. But even standardizing around that would be an improvement over the utter chaos right now. Because then it's consistent. Perhaps misplaced, but at least consistent. I wish that instead of teaching classes about how to win the CS technical interview, schools would teach classes about how to interview for technical roles. How to design effective interviews that will help find the best person for that role. There's a ton of research around this. It's not just "whatever seems to work for us." And we need to be better.
- jmtame 9y agoIt’s mostly a copycat culture. But the best companies today are getting smarter and using more realistic interview techniques that accurately reflect the work. I’m also working on the space with www.onsites.co to solve how broken the interview experience is.
- profalseidol 9y agoI blame the limited time that Capitalism provides. Every minute you use when interviewing is capital being used up. Capital that needs to grow.
- kulu2002 9y agoTill today I haven't asked anyone to write actual code on whiteboard. Recently I had a chance to interview a Stanford grad who had previously worked on embedded sys in some start-up. I asked him to draw system level architecture of his product in OSI layer format like where HAL/ firmware, RTOS, insys mem, db, application, UI are placed and how they are communicating with each other ...and this guy was staring at me like I am asking him to jump down from 10th floor. Then I thought did I do something wrong... I mean if you have really worked on/experienced something then you should know that thing thoroughly and then you don't need any special prep for interviews
- _xczx 9y agoI've never felt comfortable answering questions like those, because the designs are owned by the business. Even if I made it, I don't feel like I have the right to hand a design for my current employer to my next employer.
- danesparza 9y agoIdeas (and the ability to convey them) aren't owned by a business. shakes head Our society is waaaay to litigious if an interview is going to be overshadowed by the legal team like this.
- kulu2002 9y agoI don't think drawing just a block diagram of system means giving away the trade secrets of your product. I didn't ask him to draw flow charts of algorithms and business logic. And I don't even do that. I have seen many interviews purposefully conducted by rival companies where interviewers are specifically asked by company's marketing team to drill down interviewee on particular functionality and get details of business algorithms, system performance etc. Offcourse this happens when there is cut-throat competition and few players.
- scardine 9y agoSet up any system with money rewards and people will game it.
- internetman55 9y ago1 credit is about 60-80hrs max of study right? Seems reasonable to spend that much time preparing for tech interviews if you wanna go into my field. My friends who weren't smart and too lazy to put in effort spent that much probably