News for hackers. Stuff that matters.
Re:Ask HN: How old were the most talented software engineers... by seanmcdirmid on Thursday January 03, 2019 @07:10AM (#18814533)
As a specialist who is currently looking for a job, HR generally only seeks generalists. Almost all interview loops that have been standardized seriously prefer generalists. The mold doesn’t fit anyone and are just generic programming/system design questions that do not evaluate specialist skills and experience at all.

PL specialists are also pretty good generalists. I mean, what hasn’t Jeff Dean done and do people even remember that he has a PL PhD anymore?

Re:Ask HN: How old were the most talented software engineers... by YorkshireSeason on Thursday January 03, 2019 @10:01AM (#18815555)

   PL specialists are also pretty 
   good generalists.
It has also been my experience that people with a PL / compiler background are often great generalists. At Google I can think of at least the following:

Jeff Dean, Fergus Henderson, Ken Thompson, Rob Pike, Ben Gomes, David Stoutamire, David Bailey, Urs Hoelzle, Hal Abelson, Martin Abadi, Peter Norvig, Sanjay Ghemawat.

There are more but can't think of them off the top of my head. Chris Lattner is a non-Google example.

(As an aside, I see a similar phenomenon -- albeit at a much lower level of ability -- in my undergratuate students, and I've supervised a large number: top students almost always do well in / and have enjoyed their compilers course.) Why would that be the case? I can offer 3 hypotheses for discussion.

1. PL / compiler stuff is so trivial that everybody can be good at it.

2. PL / compiler stuff is so difficult that only the smartest can be good at it.

3. PL / compiler stuff forces you to think deeply about the most important tools in programming, namely the CPU and programming languages, and the bridge between them (the compiler).

I'm inclined to go for (3).

Re:Ask HN: How old were the most talented software engineers... by seanmcdirmid on Thursday January 03, 2019 @11:14AM (#18816163)
People are often into PL because they are into programming and want to improve the tools and languages used for programming. For us, programming isn’t just a means to an end, it’s an end also.
Re:Ask HN: How old were the most talented software engineers... by legulere on Thursday January 03, 2019 @05:51PM (#18820133)
Or 4.: Most problems are about transforming A to B like in a compiler. Many of the techniques in compilers are also applicable elsewhere.
Re:Ask HN: How old were the most talented software engineers... by barrkel on Thursday January 03, 2019 @08:49AM (#18815034)
I think experience in compiler and language design is a strong signal of meta-thinking about problems and high-level abstraction. Compiler implementation requires a kind of rigorous thinking and separation of concerns to keep straight, because you're writing code that writes code, and need to model execution explicitly. Also, all edge cases and interacting features need to be considered in both disciplines - you generally can't get away with smoke and mirror demos or handwaving.

I don't think it adds up to generalist though. Generalists need knowledge in a lot of different things (though one man's generalist is another man's "full stack" web app developer), or else they're just smart people who don't know much yet.

Re:Ask HN: How old were the most talented software engineers... by seanmcdirmid on Thursday January 03, 2019 @11:18AM (#18816192)
None of the standardized interview looks test for that kind of knowledge however, they really are generic. Also, I’ve find that the really famous bigcorps don’t care as much about what you know than what you could learn, even for experienced hires. So by generalist, they simply mean someone who can learn to do anything rather than someone who can already do anything. Full stack job descriptions often come from lower tiered tech companies that can’t afford that and anyways don’t have as much specialized infrastructure as a place like google does anyways.
Re:Ask HN: How old were the most talented software engineers... by romeisendcoming on Thursday January 03, 2019 @10:58AM (#18816036)
Very insightful: 'They are smart people who don't know much yet.' One thing to consider is that understanding only how a compiler organizes things or how a good assembly programmer understands the world is not conducive to anything but optimization. The true generalist, while able to perform binary analysis and understand executable file organization, is not tied to that. They are pattern people. Learn the pattern, see the relation.
Re:Ask HN: How old were the most talented software engineers... by throwawaymath on Thursday January 03, 2019 @08:16AM (#18814793)
I think whether or not you're a capable generalist is independent of whether or not you have a PL PhD. Jeff Dean is a generalist because he invested significant time in working across a wide variety of problems, not because of his PhD. If anything, a PhD makes you a specialist by default. You need to do extra work to gain diverse experience across the stack.

This is to say that I don't think you should use Jeff Dean as an argument for hiring PL specialists in generalist roles.

Re:Ask HN: How old were the most talented software engineers... by seanmcdirmid on Thursday January 03, 2019 @11:19AM (#18816213)
Google does this though. Whenever is PL PhDs get together, someone invariably talks about how they are doing ads for google these days. It’s actually so common that it has become a meme.