Live data from Hacker News

On Being a Generalist

flaviocopes.com

111–120 of 140 posts

Re: On Being a Generalist

#111
post #89
post #88

Earlier quoted context omitted.

Building the thing right is useless unless you're building the right thing.

Perfectionism is never allowed in a business environment. In fact most of those folks turn toxic because they don't get their way

he said 'right' thing not 'perfect' thing - certainly those that building the 'right' thing do better in a business environment than those that build the 'wrong' thing, no?

Re: On Being a Generalist

#112
post #41

> Some companies only hire specialists. If you’re Google, it makes little sense to hire a generalist, I think. Having been through a Google interview and offer process, this seems exactly backwards: Google selects heavily for generalists, so that they have people who can adapt to and integrate different technologies. (I'm sure they do hire specialists in various areas, but their interview process optimizes for genera…

No, they hire Competitive Programmers - this is a separate specialty, but Google assumes such programmers should be able jump into real world software engineering. They recognize the flaw but so far can't come up with a different way.

Front end, back end, games, data science, embedded etc are all very similar if you ignore the frameworks existing in each domain. So you can become a decent generalist in all of them if you do it bottom-up and become fluent at relevant algorithms first, while if you go top-down and learn each framework then you will never become good at all of them at once since there is just too much complexity in each domains frameworks.

For example, a person who only knows react, angular, vue and node is a specialist and will unlikely be successfully to transfer to a different kind of team. A person who built their own javascript frameworks on the other hand had to build and learn a lot of fundamental concepts which are transferable to any domain, I could use such a person. So personally I strongly favor algorithmic interviews over more specialized ones. I don't care if you learned how to use library X to solve narrow problem Y, no matter how many times you did it.

Re: On Being a Generalist

#113

> Some companies only hire specialists. If you’re Google, it makes little sense to hire a generalist, I think. Having been through a Google interview and offer process, this seems exactly backwards: Google selects heavily for generalists, so that they have people who can adapt to and integrate different technologies. (I'm sure they do hire specialists in various areas, but their interview process optimizes for genera…

Most of Silicon Valley ignores specialization on the level of particular languages and tools (to the point that I'm mildly suspicious of "resume driven development" claims - they genuinely don't care, as long as you can do the algorithms interview).

But I do generally see at least a backend/frontend/mobile split, with backend sometimes further subdivided into product vs. infrastructure. Does Google not even go that far?

Re: On Being a Generalist

#114
post #21

> Some companies only hire specialists. If you’re Google, it makes little sense to hire a generalist, I think. Having been through a Google interview and offer process, this seems exactly backwards: Google selects heavily for generalists, so that they have people who can adapt to and integrate different technologies. (I'm sure they do hire specialists in various areas, but their interview process optimizes for genera…

I second. Most data and anecdata says you need to be a solid generalist software engineer to be hired at Google. You may have some specialty (the vast majority don't), but a single area of expertise won't take you there. Vide the famous tweet ( https://twitter.com/mxcl/status/608682016205344768 ): "Google: 90% of our engineers use the software you wrote (Homebrew), but you can’t invert a binary tree on a whiteboard s…

"They use standardized hiring procedure (they need to work at a scale)."

That's funny. In some HN threads that discussed exposes on awful interviewing practices at Google, time and time again Googlers would point out that Google is a big company and every team does it differently.

So which is it? Do they have a standardized procedure or does each team do things differently?

Update: Ok, maybe it wasn't per team, but the impression I got was that different parts of the company interviewed differently. Whether people you wound up working with wre the ones you interviewed with is a separate issue.

Re: On Being a Generalist

#115
post #12

I've been currently looking for employment and job descriptions nowadays are ridiculous. In one paragraph or section of a job description, they'll specifically state that they want a generalist, and in the very next section, they'll state explicitly that they want a specialist; just crazy. Also, throughout my job history I've been more of a generalist; sort of like a modern day devops (but much broader in scope/respo…

Some of this might be because specialists are perceived to need less on-boarding, and it's very easy to overestimate the cost of on-boarding.

Once fully on board, I think many would agree the generalist is desirable.

Another factor is, as someone else pointed out, that there's a huge difference between "learned, skilled generalist" and "inexperienced who hasn't yet learned much" and both characters may go by the generalist name.

Re: On Being a Generalist

#117
The main assumption of this post is that humans have limited resources to store and compute knowledge. This is shortsighted. Polymaths, though rare, are an example that excellence can be achieved in many domains. Even in the “normal” range of human capability, there are many roles that are designed for a generalist. Healthcare is the prime example. You can’t have specialists handling primary care because they can’t see the human body holistically, but as an instance of what they have specialized into. Product management is also a domain you can’t put specialists in charge. You need people who can translate user / customer needs into technical specifications and even between specialists so they can understand the tasks to be done (think health analytics or other interdisciplinary activities). You also need to be able to understand all faces of a problem to provide an efficient solution. Sometimes you need someone sufficiently unattached to kill features and products that are no longer financially viable. Startup founders, although technical, end up doing everything because of financial constraints. In this case the “regression” towards generalism is a survival skill. IMO, generalists are skilled people who have the ability to learn and adapt faster than the average people and are able to provide reasonable solutions.

Re: On Being a Generalist

#118
post #21

Earlier quoted context omitted.

I second. Most data and anecdata says you need to be a solid generalist software engineer to be hired at Google. You may have some specialty (the vast majority don't), but a single area of expertise won't take you there. Vide the famous tweet ( https://twitter.com/mxcl/status/608682016205344768 ): "Google: 90% of our engineers use the software you wrote (Homebrew), but you can’t invert a binary tree on a whiteboard s…

"They use standardized hiring procedure (they need to work at a scale)." That's funny. In some HN threads that discussed exposes on awful interviewing practices at Google, time and time again Googlers would point out that Google is a big company and every team does it differently. So which is it? Do they have a standardized procedure or does each team do things differently? Update: Ok, maybe it wasn't per team, but t…

Of the people who interviewed me on-site at Google, none were in any of the same teams as the roles for which I was being considered.

Only after my packet had passed the hiring committee did I speak with potential hiring managers about team fit.

When I was interviewed at Amazon, all but one of the interviewers was a future colleague. And the one who wasn't led an adjacent team.

Re: On Being a Generalist

#119
post #21

Earlier quoted context omitted.

I second. Most data and anecdata says you need to be a solid generalist software engineer to be hired at Google. You may have some specialty (the vast majority don't), but a single area of expertise won't take you there. Vide the famous tweet ( https://twitter.com/mxcl/status/608682016205344768 ): "Google: 90% of our engineers use the software you wrote (Homebrew), but you can’t invert a binary tree on a whiteboard s…

"They use standardized hiring procedure (they need to work at a scale)." That's funny. In some HN threads that discussed exposes on awful interviewing practices at Google, time and time again Googlers would point out that Google is a big company and every team does it differently. So which is it? Do they have a standardized procedure or does each team do things differently? Update: Ok, maybe it wasn't per team, but t…

You must have misunderstood something, Google doesn't let teams interview their own candidates. At Google you are always interviewed by random engineers from random teams who you will never meet again. And the people who decides if you get hired or not will not ever meet you.

You are probably thinking of Amazon or Microsoft or some company like that, but I have never seen a Googler say that interviewing varies from team to team at Google.

Re: On Being a Generalist

#120

Earlier quoted context omitted.

"They use standardized hiring procedure (they need to work at a scale)." That's funny. In some HN threads that discussed exposes on awful interviewing practices at Google, time and time again Googlers would point out that Google is a big company and every team does it differently. So which is it? Do they have a standardized procedure or does each team do things differently? Update: Ok, maybe it wasn't per team, but t…

Of the people who interviewed me on-site at Google, none were in any of the same teams as the roles for which I was being considered. Only after my packet had passed the hiring committee did I speak with potential hiring managers about team fit. When I was interviewed at Amazon, all but one of the interviewers was a future colleague. And the one who wasn't led an adjacent team.

Amazon has started doing general hire and then placement for senior engineers in some areas, international hires in consumer goods for instance. I like this better as it gives you a lot more options. In the other model if you didn't have good fit you might end up with another partial loop.

I also like this better than the Facebook model where you don't find out your real team for several months after the hire.

For these broad loops they pull people from across the company to do the interview but will have people from your role if they can. Which isn't hard, the roles for most hiring at sdm, sde, fee, TPM.

Amazon always puts one "unbiased" bar raiser on the loop to ensure hiring isn't made for local only optima like "I need someone for 3-6 month shortfall so I'll lower my standards." These people have veto power on the hire and also play the consistency in level role.

Edit: clarity

Post reply on HN