Why we don’t allow Java in job interviews

Josh Tyler
2 min readOct 20, 2014

--

At Course Hero, we’ve made an important, and somewhat unusual, change to our interview process.

Image from Engadget

We no longer allow Java.

For all parts of the hiring process that involve writing code (which is most of them), candidates are free to choose any language they like. Except Java.

This is really just a data-driven decision. Candidates who have chosen Java in our interviews have fared poorly, on average. And of the ones who did well (and those who we subsequently hired), each person indicated they would have been just as comfortable in another language.

But it also got us to thinking about why this might be the case. Here are some possible explanations:

We are a web startup, doing web development. For our work, Java is generally not the tool of choice for people using modern practices and methodologies. Exceptions exist, but we’re willing to assume there are very, very few. Languages such as Python, Ruby, PHP, and JavaScript are much better suited for rapid development, iteration, and deployment of a consumer web product.

Java is the most common language used in computer science instruction. However, to succeed in a startup, you need to have the drive to learn new things, and someone using only what they learned in class probably hasn’t shown that. Also, classes more focused on the web tend to use a wider variety of languages.

Finally, for the type of questions we ask (which are intended to approximate real-life challenges in our work), Java is often not the best choice for creating a clear, concise solution. It’s tough to watch someone write 20 lines of Java for something that can be done in one line of Python. Awareness of the capabilities of multiple languages, and the ability to select the right one for a particular task, is an important skill.

We’re definitely not suggesting people should stop learning Java! Just that, if you’re interested in fast-paced, modern web development, you should have a few more tools in your belt.

And we’re curious: Has anyone else thought about (or instituted) a policy like this? Does it seem unfair? As with everything we do, it’s an evolving process. We would love to know what others think.

--

--

Josh Tyler

EVP Engineering and Design @CourseHero, changing the way people learn. Author, Building Great Software Engineering Teams. Views expressed here are my own.