Every so often I have an experience that reminds me why working is slowly killing me. I’ve started job hunting and the market for technical people is red hot right now (I started sending out resumes last Monday, and have already had 4 interviews today, with more coming up).
I was talking to two guys in Mountain View. They start asking me trivial Java questions. These are THE WORST technical interviews (programming on a whiteboard is bad too). Its like you’re interviewing someone to be a high school geography teacher and the entire interview is asking him populations of countries around the world. At the end, he’s going to feel like shit because he doesn’t have the population of Thailand memorized and you’re not going to have any better idea whether or not he’ll make a good teacher.
There are websites listing Java interview questions, and I could just spend an afternoon, read through them all, then come across like a genius to these nimrods, but I refuse to do it because its just *SO STUPID*. This was one of their questions if you’re interested.
One of them seemed like a decent guy, but the other guy, after every question I said I didn’t know or didn’t answer exactly the way he expected (often with technical questions there are many possible answers, and the interviewer has to be bright enough to realize when an answer is correct – even if it wasn’t the answer he was looking for), he acted snooty and made disparaging comments. Some people seem to be very good at deferring to people higher up the food chain from them, and treating people they see as below them like crap.
Towards the end of the interview I’d had enough and actually stopped it (only the second time I’ve ever done this). It surprises the hell out of interviewers when you end one early (its the ultimate in taking charge!). Probably not the smartest thing to do (I may have lucked out and got offered the job), but why would I want to work for a company that assigns a jerk to interview me?
With technical work, it seems to be necessary to get treated badly by the people above you in order to get a paycheck. I’m not sure if this is because our work is mysterious to them, so they feel they have to exert their authority somehow, or if its because we’re earning big salaries and they resent having to pay them or what.
Maybe this is simply the nature of 9-5 work (and why I hate it).
8 replies on “Work Kills a Piece of my Soul Every Day”
There are no such thing as ‘Good Jobs’. J.O.B.S
They do not pay you what your worth.
Man, reading this again makes me happy to be a PhD student! I should remember to re-read this if I’m ever thinking of re-entering the workforce.
You gotta see it from the other side of the desk, though. Interviewing developers is tough, it’s hard to separate those that pad their resume with buzzwords and claim 4 years experience programming in Java, from those that crammed “Learn Java in 24 Hours” into 6 hours. Throw in some people for whom English is a second language, and it gets even harder to see the difference between an all-star programmer with poor English, and a mediocre programmer with passable English.
As much as interviewees hate them, whiteboard questions and generic “how would you increase system performance in this situation” questions aren’t about the exact question at hand, but more about how you solve the problem, how you response to questions about your solution, and how you can effectively communicate your solution to the interviewer. Even if you can write an optimized Merge Sort algorithm that runs in O(n) time, you won’t be very effective to a software development team if you can’t explain your algorithm to others, or reasonably debate whether a a Quick Sort algorithm would be better. In that way, an interview is often about assessing potential personality conflicts with a team.
If you’re a developers that is confident in his skills, an interview is more of an opportunity to see if this job would be a good fit for you, rather than the other way around. The two biggest ways I see people fail in an interview is when they under-deliver what their resume promises (it’s pretty easy to see when someone claiming 4+ years C# experience calls it “see-pound” and doesn’t know the difference between a class and an interface), or when they lack the self-confidence / linguistic skills to explain why they came to a particular solution.
I don’t say I like these interviews as well. Generally, I don’t come across as a “star” programmer in one language, but I emphasize that I’ve worked in several different languages and that in my work experience, I chose the language that would get me the result as fast as possible rather than sticking to one language and becoming an expert to it.
However, I got one of the worst interview from a major technology company. The guy asked me: how do you find the longest substring out of two strings. I gave him the “dynamic programming” with efficient memory management answer:
http://en.wikipedia.org/wiki/Longest_common_substring_problem
The guy didn’t know what is dynamic programming (by his own admission), and only had the brute force algorithm in mind. I was really taken aback by that. Unfortunately, he didn’t understand the answer and remained skeptical about it. It is quite surprising that an interviewer at a major technology company doesn’t have the skills, or the time, to search an interview question on wikipedia and understand it before using it in an interview.
From that moment, I recognized that technical interviews are a poor way to assess of a candidate skills in programming, but an easy filter to select them. That must be how that interviewer got hired.
Wow, you can tell this article is 3 years old. The job market is certainly not that hot any more.
This article just reminded me how much I dislike working myself and how I want to retire…*sigh*
(retire = do what I want to do + when I want to do it)
I am reminded of the saying, “Do what you love and you never have to work a day in your life!” Reading this it sounds like the author really needs to find a small company of similar personalities that love to do the work they do. I left a major financial institution and spent 9 months interviewing various companies to find the one that truely fit me! http://www.tridelta.ca I truely love the work I do and am sure to fill my life with my other passions: family, sailing, golf, travel. This make the work seem like just another fun activity. 🙂 Go find and live your passion EVERYDAY! Frank
Asking trivia is stupid (what’s FINAL do in Java) vs. algorithm questions which I do myself and I get a sense of how a person thinks. I’m not looking for the AHA answer, but rather a serious of problem solving steps.