Live data from Hacker News

Google: 90% of our engineers use the software you wrote (Homebrew), but...

twitter.com

421–430 of 683 posts

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#421
post #344

Earlier quoted context omitted.

Think of the problem from Google's perspective though. At some point, you have tens of thousands of candidates and you need a system to quantify how good they are. Further, it's reasonable to have false negatives (people you don't hire that should have been hired) but really bad to have false positives (people that you hire that you should not have). Together, these boil down into the de facto whiteboarding interview…

This has got to be the biggest hiring fallacy I've ever heard. "It's better to reject a good candidate than hire a bad candidate." That's completely false, and anyone who says that is completely ignorant of Bayesian logic. Here are some simple numbers. Suppose that a "good" candidate is a 1-in-100 find. Suppose that a "bad" candidate has a 1% chance of tricking you into hiring them anyway. Every time you pass on a "g…

I understand your point, and I'm not trying to be a troll.

Humans are more complex than that. I don't think you can assume that candidates will perform the same all the time. Sometimes an excellent candidate can perform badly for multiple reasons (e.g. nervousness, poor preparation, bad interviewer, personal problems, etc).

It seems to me, that rejecting a good candidate, and have him/her interview again after some time, if that candidate was a 'good-hire', then it would increase the chance of hiring him/her, since it is most likely they will prepare better, and know what to expect.

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#422
post #395

Earlier quoted context omitted.

"filter out a bad hire" Good teams have a balanced skill sets I've found. You need some uber-algorithm guys who can pass questions like this, but you also need engineers who can fill in all the rest of the tasks that make up a production worthy system. I have not found that the uber-algorithm guys always pay attention to detail, put in good comments, think of all the edge cases, communicate well with outside teams, e…

> you also need engineers who can fill in all the rest of the tasks that make up a production worthy system. I have not found that the uber-algorithm guys always pay attention to detail, put in good comments, think of all the edge cases, communicate well with outside teams, etc. What's to keep a good engineer like you describe from buying a couple of books and spending a couple of months working on becoming the type…

There is a glut of interesting opportunities out there. For me personally, there are just many more interesting ways to spend my time than revising the CS classes I took almost 15 years ago.

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#423
post #127

Earlier quoted context omitted.

other then search and maps, how many of their products use algos heavily though? many projects i have worked on over the years required very little knowledge of algos.

All of infrastructure. You end up using LSM trees, Paxos, variations on binary search trees, checksums, Reed-Solomon, bloom filters, external sorts, and all sorts of other academic algorithms when you deal with distributed systems. Docs/Drive does a lot with operational transforms and CRDTs, ever since Wave was merged into it (c. 2011). Remember that all Google Docs are collaborative. All logs analysis & experimentat…

There's totally a lot of crunchy CS in many things Google is into (and I do distributed systems stuff, so I can empathize heavily with your first paragraph). If you're doing it right, though, writing the crunchy CS bits of these should be exceedingly rare. Understanding is important, but I'm not sure you get a measure of working applied capability from writing this stuff in an interview. Discussing it, surely, but this is stuff that one--wait for it--Googles when dealing with implementations. And I strongly doubt that the overwhelming majority of Google developers are involved with the actual construction of this stuff.

The real reason, as near as I can tell, is because it allows management to not think as hard about allocating talent (the mythical "fungible engineer" nonsense), but whether it even works is another thing entirely.

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#424

Earlier quoted context omitted.

If only whiteboarding interview processes actually weeded out false positives. In practice, they select for people with good memorization skills. If you can remember the details on a ten dozen different algorithms and data structures, you can pass one of these without having a single lick of creativity or skill. I say this as an employee who has worked alongside many unskilled drones who made it past the algorithmic…

That's not what the interview process is like at all. They're more interested in how you approach real world issues (the questions I got asked were conceivably real-life issues a company like Google would face with its products). If you can solve that issue by applying efficient and well understood data structures and algorithms, then that indicates you understand the problem space and solutions that may apply. It's…

The important part of the "realistic" process is the part where you go from "the crawler's indexing is too slow" to "it might be because it allocates a lot of little bits of memory; it needs to first generate a BST of outbound link weights, and then functionally invert that into a second graph with a bunch of inbound link weights, and then inject all that into the PageRank matrix. You could probably save some time (though at the cost of memory-safety) by inverting the first BST in-place."

Once you get to that point, though, if they asked me "and how would you invert the tree in-place?" I'd answer "well, first I'd make sure we aren't just using a tree structure that already knows how to invert itself, or could easily be extended to know how. Then, assuming that didn't pan out, I'd google 'in-place invert binary tree' and read three or four solutions that already exist to burn the semantic structure of what I'm about to write into my head so that I don't subtly screw it up and have to fiddle with it for the next hour when I could be coding something else. Then I code it."

And that should be enough.

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#425

Earlier quoted context omitted.

You're given weeks to refresh your knowledge ahead of a Google interview. They tell you the basic CS fundamentals that are going to be covered. Binary trees are MOST ASSUREDLY on that list. They just don't have time during 45 minute interviews to let the candidate go on the Internet to look things up they should already have come prepared for. Anecdotally, at a previous company, we tried an "open book" (i.e. you can…

Out of curiosity, can you elaborate why the open book interview policy failed?

At prior employers we've had very good luck with open-Google interview policies. I mean, we'd watch what you're Googling, and if you're copy-and-pasting we're going to drill you to make sure you actually understand it, but I expect to have a search engine when programming and I think you should too.

I prefer not to ask code questions at all, though.

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#426
post #75
post #43

Earlier quoted context omitted.

These types of interviews work really well for the "I got 1600 on my SATs and went to {insert high profile school here} crowd" There are books out there just to prep you for Google interviews I see these as very similar to SAT test prep books. I'm not so sure Google is really interested in hiring the best engineers but rather a specific type of engineer.

People have previously mentioned hallway discussions at Google routinely devolve into bragging about SAT scores and GPAs. Nothing says Google must accept sub-par technical people, but Google fails to realize you don't have to be the top 0.0001% in absolute algorithms intelligence to do great work. Google's basic theme seems to be "you must be low latency ultra smart in our narrow interest areas" to pass an interview…

In The Plex is great read for insight into their entire process. Basically, Google is run by people who have never been told "no" to anything in their lives, so they continue to think they are the best at everything until reality forces them to reconsider their delusional assumptions ("montessori naivety").

Which is unfortunate, because objectively Google doesn't actually have a very impressive track record of creating successful products and services given its size and resources. It has a goose that lays golden eggs (the on-line advertising business), two strong on-line services (search and mail, both over a decade old) and two well-established platforms (Android and Chrome, both nearly seven years old). Other than those, most things Google tries seem to land somewhere between unremarkable and complete failure, with Google+ surely the most obvious example of the latter. They also seem to be developing an unenviable reputation for killing things off as a result, which is going to make it more difficult for them to succeed with future endeavours. Whatever workforce their hiring process is producing for them, it doesn't seem to be one that is very good at creating successful new projects.

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#428
post #263

Earlier quoted context omitted.

> It's not like they get you in a room and ask you to draw a linked list or a binary tree. And yet the OP was turned down for not being able to invert a binary tree (based on limited information, etc etc.)? What do you feel that is, if not a "whiteboard this algorithm" question? As for many of the other companies who try and emulate Google - this is exactly what they do.

There are tens of thousands of employees at Google. Most of them interview. People are different.

> There are tens of thousands of employees at Google. Most of them interview.

You say that as if it's a good thing. Do you expect that most people could be e.g. effective teachers, effective marketers, or effective taste-testers, with no previous experience?

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#429
post #228

Earlier quoted context omitted.

And that insecurity manifests itself as a facade of arrogance and condescension?

Sometimes, but not necessarily. Sometimes it's people who always have to be "right" - which means every conversation (whether about technical things or what you did last weekend) devolves into a carefully orchestrated dance of definitions that allows everyone to escape with their egos intact - because he conceives of himself as "the smart guy" or "the guy who is always right" - so if he's wrong, he changes the rules[…

Thanks for a very interesting perspective. To further your argument RE:[2], I would like to point out that comic book guy was not the one who made the magic xylophone comment. Though I did not attend CMU nor do I work at Google, so perhaps pedantic jerks are simply endemic to our profession. ;) Possibly because it attracts the sorts of people that have no problem fighting compilers, I'm not sure.

Re: Google: 90% of our engineers use the software you wrote (Homebrew), but...

#430
Google really does only hire individuals who are strong in theory.

Maybe we are jealous. We wish we had the brains of the people getting into Google. I can say personally that I envy these people.

The fact that they don't mind being treated as numbers maybe says something about these people too. They are cold. Their ego must be pretty big too if they make it into Google.

Someone should do a study...hehe.

Post reply on HN