Hacker News new | ask | show | jobs
by bitcharmer 1420 days ago
I'm struggling to understand how OCaml reduces the risk of bad hires and other languages don't.
1 comments

Languages large swaths of the industry know (Java, C#, JS, Python, etc) include a subset of people who learned it purely for the job opportunities but aren't competent developers. The number of people who learn more niche languages like an ML or Haskell has a far lower % of people of that type.

An example of a language that I could see shifting from one to the other pretty soon is Rust now that it could be a way in to many of the high paying big companies like Google, Amazon, etc.

I agree with this to some extent. However in case of firms like Jane or Citadel or Quadrature you have to have a well documented, long track record of accomplishments in various orgs before your CV lands on their desks.

These companies hire from a different pool than you described.

I don't know if that is true. As a new grad, I got invited to interview for Point72, Headlands Tech, HRT, Two Sigma. (although some of these are in a different "tier", and different business than Jane Street or Citadel).

I definitely didn't have more special accomplishments than 2 typical internships and both were not FAANG.

I should have been more specific in my trite original post. I think at the college hire / intern level, its not quite as useful as everyone is so green .. so people screen based on college / attempts at raw brainpower games with brain teaser puzzles and stuff.

On the more experienced end of the scale, I'm often surprised to see how many resumes with 3-5 years experience are basically Python-only. This, in the absence of something else in the resume that speaks to domain expertise or something.. its definitely a less exciting prospect to me.

The 2000s version of this were Java-only devs and people who acted as though we didn't need to know how the hardware worked anymore because Java abstracted it away. You see this attitude with some cloud/k8s type dev today.

In both situations, naively.. yes you don't need to understand much about the hardware for your basic implementations.

Arguably once you get into moderate levels of complexity you actually have higher cognitive overhead because you need to understand how the underlying hardware behaves and how the abstraction layers between you & it interplay..

I'm going to venture a prediction that knowing how computers really work isn't every going to go completely out of style, or even decrease in utility in absolute terms. It's already decreasing in utility in relative terms as more and more useful stuff becomes possible without it, but someone will always write the thing underneath the thing underneath the thing.

The AGI/singularity conversation aside of course, which I am not at all interested in having. ;)

While this may be true, JS explicitly says they don’t expect you to come in knowing Ocaml. So the filtering hypothesis doesn’t really hold.