> Senior Java developers who could not import HashMap without looking it up.
Eclipse does not without me having to even look at it. IntelliJ does the same. In what situation these people had to import it by hand? They had no ide available or what?
No IDE, specifically to test basic ability. We use a web-based shared editor, that has syntax highlighting, and auto-tabbing, but specifically no auto-complete nor auto-import. Sometimes, it's just pseudo-coding, either in a conversation, or on a whiteboard.
Even though Eclipse does it, I'm sure you know where HashMap lives. Some people are compile-and-pray type devs. They lean on auto-complete for everything, not as a productivity tool, but because they don't know how to do even basic things. We don't want those on our team.
> Senior Java developers who could not import HashMap without looking it up
> No IDE, specifically to test basic ability. We use a web-based shared editor, that has syntax highlighting, and auto-tabbing, but specifically no auto-complete nor auto-import.
I can sympathize with the candidate and think the test is poor and not surprised people had to look it up.
I've been doing Java since early 2000's and off the top of my head can't tell you what package HashMap is in without looking it up except it starts with `java.` something, probably. I type `HashMap` in my IDE, hit auto complete. I haven't needed to remember the exact package name since early 2000's when I started coding so don't know it, no need to, why waste space in my head for it. If there's a second HashMap class available on the class path I can tell you the one I want from the suggestion list.
You're trying to test someones memory on something they haven't needed to remember for decades now, knowing a specific fully qualified path to a class/what package it is in isn't a useful test. Knowing what a HashMap is and how to use it is useful.
Enable auto complete/import. You don't have it disabled for your currently employed devs and they'd not function well without it and probably fail the same test.
Equating memorizing import paths - something IDEs have been doing automatically for decades now - to 'basic ability' might be the dumbest thing I've read this year.
It's a valuable skill to recognize which knowledge is important, and which is fluff you shouldn't waste cycles on. Knowing what a hashmap is useful for, when to use it, and when it's suboptimal, is important. Memorizing import paths is not.
Jesus. The last time I could maybe have passed something like that was 20 years ago when I’d only worked in one language and had only recently stopped writing code in MS Notepad.
[edit] oh god it’s closer to 24 years. The time, how she flies.
From my interview at facebook some four years ago, I am inclined to believe they disable intelisense so the candidates do not get tangled up in the minutiae of language syntax, function arguments, etc. and instead focus on the algorithm they are trying to write.
Except you get dinged on your performance if your code doesn't run once the interviewer has a chance to test it after the interview. And getting dinged generally means rejection in today's economy.
I actually got a google doc interview where they asked me to code up a hyperparamater optimizer from scratch. I couldn’t believe that they asked me to code in a google doc. I should have stopped the interview right there.
If I am looking for a senior java developer I absolutely expect that they know about java.util and java.lang classes w/o any reference whatsoever. Heck, I expect they know why java.util.HashMap is subpar, or even the common hash mul-and-add const 31 is suboptimial.
Eclipse does not without me having to even look at it. IntelliJ does the same. In what situation these people had to import it by hand? They had no ide available or what?