Stories and Tips: Interviews with Facebook, Twitter, Amazon and Others
blog.robertelder.org
blog.robertelder.org
Whats annoying and disappointing is if the questions are at such a low level that there is little room to shine. You leave after your day not feeling as if the employer gained any understanding about you, and you certainly weren't able to get a read on your prospective peers.
The purely conversational interviews almost invariably lead to disappointment for me. The company is so desperate to fill a slot that they ask you probing questions about your work style. They spin grand portraits of exciting collaborations, novel development techniques, fundamental problems of concurrency and consistency. In the end they just want someone to respond to minor bug reports in their massive taped together codebase and make sure the servers stay up.
I'm very good at my job but would bomb the technical part of many of the traditional interviews.
I think it comes from the "Get that job at Google" blog post[1] by Steve Yegge. It is not clear what Steve means here, but he wrote:
You should be familiar with at least one flavor of balanced
binary tree, whether it's a red/black tree, a splay tree or
an AVL tree. You should actually know how it's implemented.
I understand the gist of a R-B tree, I can probably write the immutable one on a whiteboard, but I don't think I will ever be able to implement the mutable insert/delete methods on a whiteboard. I have never been asked it in an interview yet, though.[1]: http://steve-yegge.blogspot.com/2008/03/get-that-job-at-goog...
and some people will be disgusted, and they probably aren't that great to work with. it would be sad if you couldn't find a job, but i doubt thats the case :)
sounds wrong to hire the best conversationalist. I know many people who are all talk and no substance.
>an you imagine interviewing medical doctors the same way we interview in the tech industry
they are already certified by the boards. Computer science degree is not equivalent to medical board certificate.
Talk only goes so far. It isn't hard to make a poseur look like an idiot if you know what you are doing. A "Five Whys"-style line of questions, for example, will blow up most fakers in a few minutes. After all, how do you know these people are all talk? Is their talk really convincing to a technologist or does it just dazzle non-technical people?
> they are already certified by the boards. Computer science degree is not equivalent to medical board certificate.
People like to overstate the power and effectiveness of medical licensing boards. Very few doctors have to prove anything after their residency. All they need to do is complete continuing education requirements (which, in many cases, are pretty fluffy). That's for the most regulated of the regulated professions, too. Lawyers, accountants, engineers, and others have basically one major hurdle to jump, after which it's easy to remain current by the letter of the law.
Most good candidates know this, and will actively avoid "DevOps" roles.
Now someone claiming 10 - 16 years experience as a DevOp, is : A: Lying. The term is 6-7 years old B: If they have even been using / administering computers for that long should know what a default route is.
Could they have misinterpreted the question? I know the even at a senior level, interviewees can get flustered and confuse themselves.
What job title would you suggest to find people with a working knowledge of programming, config management, and infrastructure/systems internals? If all you can do is copy-paste jenkins tutorials off of the internet, you're not a "senior" anything.
Just saying in case you and your candidates have a different idea of the role you are hiring for.
But that is what you get with great buzzwords like DevOps.
You've been doing a job for x years. There's been some personal development and it's been challenging (maybe you're now managing 10 developers and are having to write proposals, for example) but ultimately you've not had to prove yourself in the way you do in an interview in over a decade. What's to say you haven't allowed other aspects of your skillset that you've acquired over the years? If you're reviewing 20 peoples' code per week, when would you have had time to code out your algorithms? Using your own example, it's not at all unusual for senior doctors to lose their skills at suturing or putting in IVs. That's not to say that they've not acquired other valuable skills but there's also something to be said about keeping your fundamentals sharp.
Now maybe I've been drinking the kool-aid, but my understanding is that at your Googs and FBs they have open remits and expect their staff to be dynamic and quick to learn. One of the most valuable skills in that case is sharp fundamentals.
Losing that familiarity with the nitty gritty is a perfectly human thing, I saw it happen with professors being "outsmarted" by undergrads while at uni and early into my professional dev career I am already feeling certain aspects of my skill base deteriorating, I can only imagine what it'll be like in a couple of decades.
With all that, it's not hard to imagine why your big 5 do have such rigorous hiring loops, especially when they're already oversubscribed...
You work on system design, databases, high availability and making sure large clusters don't fall and are able to talk to each other. None of the above require "algorithms". Also, it's hilarious how every company are asking the Google and FB questions now. And, you rarely get a SQL or database questions. I've had to work with colleagues who think they know everything just because they answer the algorithm question and can't do a simple "group by".
[0] http://www.birminghammail.co.uk/news/midlands-news/ian-pater...
So far that's pretty much been a deal breaker because I have other things I'd like to put my energy in, but eventually I'll just implement a generic rest api that handles common interview cases in languages I want to interview in, and use that, and adapt it as needed.
Pretty funny and also sadly true. The author is the same person that is currently building a C compiler for the one page CPU: http://recc.robertelder.org/. Suffice it to say this person should just be hired on the spot. Any interviewing is a waste of time for both parties.
I worked on Wallstreet for 5 years and this is the exact same attitude reserved for Goldman Sachs types, and that pervades Wallstreet in general.
But do you know how most people get into GS? Because GS says, "I like the school on your resume and the friends you keep."
But do you know how most people get to go to that school and make those friends? Their parents. Their parents move to Westchester, living next to other well-to-dos, and then send their kids off to exclusive colleges and grad, very often on the basis of letters of recommendation from neighbors.
Yes, many of these students will be smart and well educated. But they have almost without exception bought into and willing, consciously or not, to perpetuate the system that provided them their privileged place in our society.
This the polar opposite of what Silicone Valley was supposed to be. But it's not turning out that way. Sadly.
"During your interview, your interviewer is likely to be testing the limits of your ability, and not just whether you meet a certain bar. Naturally, they will pick a problem that they think they know better than you do. If they stump you, or point your mistakes, the way you react is likely more important than the fact that you made a mistake. "
I couldn't have said it better.
One kept asking me the question incorrectly. Mostly because I was baffled, afterwards I googled the question. Ah, correct answer was "Naive Bayesian Classifier", like used for spam filters. Of course. Nothing about the job or my resume was related to spam filters.
After much grilling, another ultimately told me that my extensible grammar that handles many dialects of SQL was trivial, because ANTLR did all the work. Unfortunately, I shot back "Ya, and my C compiler writes all my code for me."
Hire this man. Stat.
Write a simple calculator that uses Roman numerals as its only internal representation of a number
http://www.programcreek.com/2012/11/top-10-algorithms-for-co...
Use coderpad.io to write code for practice passing the phone screen.
So the trick to a good interview is... know the questions in advance so you can google them beforehand?
But it's not the first time I hear such story and I'm sure it must leave a pretty bad taste in your mouth. Nothing similar happens in Amazon, Microsoft, Facebook, Apple... AFAIK.
The act of switching a job is PAINFUL. Most people stick to their jobs for as long as they can just to avoid the pain, pressure and stress.
1. Talking to recruiter ( 0-1/2 hr)
2. InterviewStreet coding challenge ( 2 hrs)
3. Phone Screen - 1 hr
4. Take home coding exercise - 4 hrs
So you are spending 8 hrs just to get your resume looked at. Then comes onsite interview which is another day ( assuming you are not flying out).
All this is not counting prep time to brush up on bigo/algorithm stuff. I was speaking to a fellow interviewee at google and he apparently spent over 4 months of everyday practice for the interview. So no way you could compete with without serious dedication.
I'm genuinely curious.
There are obviously other options but Google is one of the few employers where you can say "well if i hit expectations I will be making 250k".
Google is likely to have interesting jobs where you can get that high which would be big.
I've always had the impression that start ups are looking for skill because they can't afford to pay someone while he/she ramps up on the technologies used.
I had an on-campus interview with Microsoft last year for a pm internship. The interviewer immediately said, "your resume says you know F#, implement xyz algorithm with this function signature." He had a thick Russian accent and a mean face. Normally I would have had no problem answering, but I was caught off guard and panicked. Its good to be prepared for that kind of unusual circumstance and I will be next time.
He ended the interview with 'Maybe try again next year.' Ouch.
I work at a food company in the I.T. department in a development-centric role.
The takeaway: treat interview prep as simply learning the realm of possible questions. (Sounds impossible, but not really.) Rote memorization FTW!
http://www.robertelder.ca/my-uw-journey/
I like his anecdotal style, punctuated with his perspectives. He's quite humble, despite clearly being quite smart (in my estimation) and hard-working. I particularly liked his section on Interviews.