Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

A bit off-topic, but I've always avoided language-familiarity questions. If a candidate has coded a lot of, say, Java, then I do expect them to know the details and their importance, mostly because I expect people to care about the tools they use. But to begin with, I don't at all mind hiring people who have literally never once coded in the programming language my team uses. They'll learn, and that investment is worth it. Moreover, I suspect that trying to connect "how well do they understand Java's reference system?" directly to "what seniority of engineer should this person be?" is not very wise. The things to optimize for in a senior engineer are problem solving skills, organization, experience and comfort with technical tradeoffs, architectural wisdom, and so on. Over the course of the next, say, two years, you'll get a lot more mileage out of that; having deep familiarity with your language of choice is just a bonus.


In general I agree.

I only ever asked language familiarity questions if either, A. The job is explicitly frontend and we need someone already well informed (Javascript has a lot of gotchas, and HTML and CSS can be complex; backend experience doesn't directly translate), or B. It's about a technology (not just language) on the person's resume. If you put down you know X, you better expect questions about X. The questions were generally prefaced with asking the person how well they felt they knew the tech, too; it was as much a "does this person know what they say they know" as much as it was a "does this person know X".

Reference type in Java isn't some esoteric library knowledge, either. It's not "tell me everything that implements the List interface" or something else as equally useless. If you want to build any sort of caching mechanism, you -really- ought to know about it, and if you're claiming great Java knowledge, and want to be in charge of delivering a Java product, it's reasonable to expect you to be familiar at least to when you might need to go read the Javadocs on those classes.

If you were a junior programmer who just coded tasks as they were handed to you, and had code reviews, and you don't know it (and you admit that), that's not the kind of question I'd expect you to know. And if you don't claim to have much experience with Java, obviously asking you a Java question is silly; I'd ask you something about what you do use.


I often leave languages off of my resume for exactly that reason. I've used Scala before, and I'd feel comfortable using it again, but I certainly don't know it well enough to handle on-the-spot Scala questions.


And that's probably a good thing. That, or indicate it separately. "Some experience with..." or something, to show that "Hey, I've seen this, I've played with it, I've got some concepts down, but if you ask me about this I am totally going to demur". I can't speak to interviewers at large, and certainly, it ends up with recruiters trying to hire for those languages which is irritating, but I'd like to see it just to ask in what context you've used it. "Played with it in my spare time" is a plus in my book; it means you're actively curious.


Having had a look at some resumes recently, I see some people who list every language / framework under the sun. I question how much knowledge they have of each of these. I would say learning Django alone to a decent level took me 6 months. I am still learning more 3 years later. If you claim to be learning 5 new languages a year, your knowledge of each can't be so deep.


I feel like that these days. I used Java, then Perl for years. For the Last three I have been doing mainly Django. I never feel I learn much about the intricacies of Python, as I am using Django, and coding at a higher level most of the time.


I think I may add your description of a senior engineer to my CV. I can see that these are the qualities I have built up over the years, while my intimate knowledge of programming languages has gone down, as I have used more of them. No one ever list these skills in job ads though....




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: