A few days ago I received the usual e-mail I get every year from a Google Recruiter. Apparently my name must be in one of their databases of possible candidates from the days when I was actively seeking a position there. They like to check on me every once in a while. Here’s what I wrote back:
Hi <recruiter name>,
thanks for getting back to me.I understand that this is a general position open to anybody who applies. I’m quite familiar with the hiring process, so I’d like to clarify that I’m not willing to schedule phone interviews regarding my coding abilities. It’s not because I don’t want to solve challenging problem. I very much enjoy hard problems, they are quite fun.
Here’s why I will not spend my time for a round of phone interviews: job applicants like me get scheduled for one or more of these 45-50 minutes interviews, we get pressured to solve very difficult problems and we do not receive feedback on our overall performance. This method allows your company to rate a large pool of interviewees and progressively advance those who score in the highest percentile.
I consider myself a good coder. If I need to solve a problem I will take my time to analyze the problem, do research if I need to, state my assumptions, identify edge cases, verify my results and discuss them with one or more fellow developers. Most importantly, if I make a mistake, I’m always eager to learn how I can improve. During these technical interviews we are pressured for time, we do not have the means to do our proper research and most importantly, we do not receive feedback on how to improve.
I would gladly accept to meet some of your engineers and discuss as well as evaluate my technical abilities with them on-site, but I will not spend time over the phone doing algorithmic puzzles for the purpose of assigning a score next to my name. I’m much more than a number and I don’t need to prove it. If Google has a need to do an early evaluation of my abilities, they can check-out my Github account, my contributions to several open source projects ( https://www.pierotoffanin.com/projects/ ) or call my previous professors/employers for a reference (I can provide names and phone numbers upon request).
Let me know if my request can be accomodated; I’d love to be back in Mountain View for a chat. I visited the Bay Area a few years ago during a road trip and had a great time!
-Piero
During my time in college I learned to get really good at solving programming interviews (Reading #1, Reading #2, Link #1). Solving puzzles is a lot of fun. But when you put great effort to solve these problems, and you know you have found a good solution for them, getting a rejection without knowing what you could do to improve is not very nice.
If I want to spend time solving puzzles for the purpose of assigning a score next to my name, I’d rather compete in the Code Jam or the Hacker Cup. At least there, at the end of each round, I can see other people’s solutions and take steps to improve my abilities. 🙂
Bravo!! You don’t want to work there, anyway, unless you go in as a contractor (I did). Contractors receive specific assignments, get to work with a project start-to-finish and generally have a better experience than permanent/full-time Googlers any day of any week.
Google regards people as, “Fungible.” This means you can wake up on any random day of the week, go to work and discover that you’ve been temporarily or permanently assigned to a different team doing something you don’t even enjoy. Nevermind what you intended to do on a given day, needed to do that day, etc. You will be moved around as needed to put out fires on other teams/projects. And, the act of doing that will most likely cause fires on your project. Plus, when you come back, you discover that someone else has been working on your area of a project, took different approaches, made potentially drastic changes to an approach you were taking, etc.
It’s often enough to make a Zen Buddhist outwardly express much anger and possibly cane someone. Because it’s a cascading series of small disasters that I’d personally like to eventually see cascade into an #AvalancheOfFail for this ridiculous company.
Trust: You only *think* you’re a number during the interview. Wait until you actually get to work there. You’ll learn what being a number is really all about. I have personally seen truly excellent engineers become depressed over this. They care about nothing with a heartbeat and respiratory rate. They don’t even care about inanimate objects. In the few months I was there, even their cafeterias were proven fungible. Arrived in one part of the year when a certain cafeteria had a certain name and served Mexican food. By the time I’d left, it was serving sushi.
If you want to feel as though you’re actually working inside a lava lamp, work at Google. If you want to enjoy your job:
1. Only work at Google as a contractor; or
2. Go do your best work anywhere else
That’s my advice after my own personal experiences working at Google (Mountain View campus) as a contractor. The company sucks, and I won’t even go work there as a contractor again. Just seeing people treated like that was enough to make me early-terminate my contract and leave. I made great friendships. Most were taken away to go work on other projects. The effect that had on the team I was on was devastating. I don’t care if that product ever shipped. Google doesn’t *deserve* what those excellent men and women were trying their best to create (and succeeding). They were ripped off of THEIR project (they invented it) because they were excellent to go make up for the shortcomings of another team.
I simply never want to witness something like that again. If you had any doubts, you did make the right choice and you made it for the exact right reasons. So…BRAVO!!
#ScrewGoogle
Wow! Thanks for sharing your experience Rob. Much appreciate the insight! I will definitely keep you in mind if I travel to Pittsburgh.
Great post! You put into words a big problem with many technical interviews. Often the problem assigned is more of a 20-30 minute task, but you have 8-15 minutes to do it, presumably so they can find people who move quickly. The problem is, the person who solved that quickly may not move so fast on a different problem, and the 25 minute solver may take half the time on a certain other problem. Add in the lack of feedback when a solution is wrong, and it all just seems so silly.
Yeah – you are completely right. I cannot be more agree with your post here,
In the last 10 years the tech world (and the societies too) going through great ramification and also our lives.
Why?
Exactly because of guys/gals that “solving problems in 30 minutes”. Faster does not meaning best or even better! It meaning what is really meaning – faster.
We get clumsy apps, clumsy products, careless attitude of producers (because this will be fixed in next version) and indeed worst life experience.
Most often the solutions itself rise more problems than solves.
Why? (repeating myself here) Because of this wild run – quantity and speed instead of quality and stability.
The great ideas look simple – but they never are indeed. The GOOD GREAT IDEAS have tremendous background and experience factor involved.
Stop pushing to our world this HR nonsense – get a person for real, not a score numbers.
C’mon Google (and other tech giants) stop going on this clumsy way.
Also let me get a point here – if everyone work for them (Google/Amazon/Apple/etc.) from where will rise next competitor? 🙂