Hacker News new | ask | show | jobs
by bluetomcat 1385 days ago
A generalist would be someone who is fluent in C, Python, Java, JavaScript and probably Haskell/Clojure/Scala. This would mean that they have been exposed to static and dynamic typing, manual and GC memory management, class-based and prototype-based OOP, and all the important functional programming concepts.
2 comments

“Fluent” is a strong word. Developers are rarely “fluent” in one language let alone 5.

“Had exposure to” IMO is more accurate here. You don’t need someone who has mastered each and every language in and out. IMO you don’t even need someone to have experienced all of them to be called a generalist.

It’s more about the way they frame a problem and come up with the solution and their ability to pick up key concepts quickly. The specific experience is key to long-term success but that can be taught to someone that is open and eager to learn.

I guess it depends on what you mean by generalist who's fluent in all of those things — is it someone who has broad rather than deep experience, someone who has both broad _and_ deep experience, or someone who's willing to pick up whatever needs to be done and learn where they have gaps.

I think you're describing #2 and the article is describing #3.