News for hackers. Stuff that matters.
Re:Ask HN: Is it better to generalise or specialise as a dev... by sebmellen on Tuesday May 25, 2021 @10:05PM (#27285312)
I’ve never worked at a FAANG, so I may be mistaken. What I do know is that all my friends/acquaintances who’ve ended up at FAANGs have branched deeper into various niches than would be possible at smaller companies.

For example, at a company with 50 people, it might be unreasonable to develop hyper optimized native apps for each platform that necessitate a specialist in memory management optimization in Swift. (This is a real example.)

At a FAANG, jobs like that seem to be relatively common. Scale brings challenges that the vast majority of businesses don’t have to deal with. These challenges require solutions the vast majority of companies can’t afford to build.

The only other field I can think of that requires specialists to the degree FAANG-scale companies do is academia, which is ridiculously hyper-specialized (out of necessity).

I’m not sure about the hiring process... I do know about the prevalence of “leetcode” challenges, though, which I suppose are rather generalist.

Re:Ask HN: Is it better to generalise or specialise as a dev... by xyzzy_plugh on Tuesday May 25, 2021 @10:22PM (#27285430)
As an ex-FAANG who knows dozens of folks at FAANG companies: the vast, vast majority of folks there are generalists, whether they know it or not. The number of people doing anything remotely "hyper optimized" is extremely small relative to the number of employees.

They may work on more specialized problems, but only because the corps are big enough to have entire teams or orgs around things most companies can't even do in-house, but it doesn't make the ICs specialists themselves.

To give you an idea, the last offer I got from Google had me choosing between a team developing a proprietary database, a team working on low-level networking problems, and a team responsible for, essentially, refactoring another teams code to make it portable.

Specialist teams, mostly generalist individuals.

Re:Ask HN: Is it better to generalise or specialise as a dev... by sebmellen on Tuesday May 25, 2021 @10:33PM (#27285501)
I suppose it’s a semantic difference.

In the startup world, being a generalist might mean “Python, Node, Go, some backend frameworks (Express, Django, etc.), HTML/CSS, some frontend frameworks (React, Vue), maybe some experience with cloud and devops, also maybe experience with GraphQL or gRPC, good knowledge of key/value stores and SQL databases, probably high-level knowledge of ancillary technologies like JWT, auth systems, a good understanding of data structures and algorithms, experience in optimizing queries, oh and also a little React Native and maybe Cordova.... <and so on, and so on>” (This is me.)

In a FAANG, one might be a generalist in something like “iOS” or “ML” and then develop a deeper subspecialty in that field.

To me, this looks like a specialist. But I understand that to someone who works at those organizations (FAANG+), a specialist is someone who developed a new language or exclusively builds compilers or does systems-level programming or something.

I suppose these are different vantage points. If you’re specialized enough, everything probably looks “generalist” to some degree.

Re:Ask HN: Is it better to generalise or specialise as a dev... by darkhorse22 on Wednesday May 26, 2021 @01:28AM (#27286726)
wut
Re:Ask HN: Is it better to generalise or specialise as a dev... by sebmellen on Wednesday May 26, 2021 @02:42AM (#27287175)
The words "generalist" and "specialist" are relative, so different people perceive the roles of "generalists" and "specialists" differently.

To me, even a small degree of specialization within software development qualifies someone as a specialist. xyzzy_plugh seems to think many more people are generalists than specialists, even at larger (FAANG) compaines.

Re:Ask HN: Is it better to generalise or specialise as a dev... by xyzzy_plugh on Wednesday May 26, 2021 @05:35PM (#27296414)
By your definition, I've been a specialist in columnar store databases, high-performance RPC frameworks, compilers and toolchains, embedded firmware and vector graphics.

That sounds like a generalist to me.

Re:Ask HN: Is it better to generalise or specialise as a dev... by darkhorse22 on Wednesday May 26, 2021 @09:42AM (#27290364)
you're crazy, I love you, but you're crazy
Re:Ask HN: Is it better to generalise or specialise as a dev... by ma2rten on Tuesday May 25, 2021 @10:34PM (#27285510)
Scale brings different challenges but most of them have been solved already and been abstracted away (at least at Google). From what I have seen most people work on implementing some kind of business logic.
Re:Ask HN: Is it better to generalise or specialise as a dev... by tokipin on Tuesday May 25, 2021 @10:27PM (#27285460)
Despite their stated intentions, the hiring pipelines are for specialists. The leetcode tests are good at selecting for specialists, since the nature of those tests (irrespective of the subject matter) matches the specialist skillset.

It's important to distinguish between specialist/generalist roles versus specialist/generalist people. Most of FAANG is hiring specialists people for both roles. That's my sense of it anyway.

Re:Ask HN: Is it better to generalise or specialise as a dev... by sebmellen on Tuesday May 25, 2021 @10:37PM (#27285527)
Yes, this is my sense as well. Interesting to see the variety of perspectives in this thread.

I suppose I might also just have particularly specialized friends/acquaintances. Who knows...

Re:Ask HN: Is it better to generalise or specialise as a dev... by heavenlyblue on Wednesday May 26, 2021 @05:57AM (#27288407)
Leetcode is just a proxy for intelligence, just like SAT is