Category Archives: interviewing

A Dumb Careers Page

I saw a posting on Valleywag today about Bright Idea, an “innovation management” company. I honestly have no idea what that means but I went to their site to check it out and clicked on the careers page to see what they use to build their platform since your engineering jobs – and yes, everyone is hiring engineers – will list what stack you are using so you don’t get a crapload of unfit resumes.

Here’s the page:

http://brightidea.com/i/cc_jobs.asp

So what’s wrong you ask? Click on any of the jobs postings. Go ahead. That’s right, they are mailto: links. There are no details about any of the jobs, what the duties are, what the requirements are, etc. On their end they either get a lot of useless resumes and/or get crappy resumes because the good folks aren’t going to submit their resume to a job posting that has NO details. On the applicant’s end they might need to go through a useless phone screen or interview to find out the job’s responsibilities don’t line up with their expectation to the job posting’s title.

Or are they just too lazy to come up with job descriptions?

Warning Signs About a Job Posting

I tend to look at local job postings on a semi-regular basis. Not because I’m looking to leave my current job usually but rather because I’m curious and like to see what trends are forming and to see how healthy the local job market is.

But by watching these listings I’ve definitely formed opinions about what I think are warnings signs to stay away from a particular company/post.

1. They say how great or HOT they are in a given area

I’ve seen both Nextag and now Next Internet using this tactic on Craigslist. If you’re so hot, why do you have to tell me about it? If you’re so hot, you’re going to get interest without having to ask for it just because you’re at the center of the known geek universe and word tends to travel pretty fast.

2. They post for the same job every few months

Unless it’s a large company that I know is in growth mode then either one of two things probably happened. One, it’s a really crappy place to work and every person they find leaves within a few months. Or two, they didn’t find anyone and decided to put it off for a few months. Most of the time it seems like it’s from one of those companies that’s probably just barely staying afloat. They aren’t going under but they’re not really growing either. I’ve worked for one one of the latter before and it’s not fun at all.

3. They have completely unrealistic expectations

This one is more obvious but I’ve learned that a company that has unreal job requirements either expects a superhero / rock star developer or they really haven’t defined the job they’re looking for. The exception to this if they say something to the effect that they know that no one has all of these things but they are looking for someone with a certain set of them. It’s still a little worrisome because it still kind of smells like they don’t know what they are looking for but it’s not a definitive red flag. The times that I’ve talked to companies that want the rock star it’s amazing that they generally are also companies that balk at paying at rock star levels. I’ve seen one on in the east bay that is always looking for consultants in the 5 year experience range with a number of technology requirements and actually posts a salary level of sub 60,000. In the Bay Area that just isn’t happening. Well, unless it’s not a full time job.

And that leads me to my last one for now…

4. They post salary levels that are just insanely low

This one is really obvious but it’s more an amazement thing on my part that a company is so out of touch that they think they’ll get anyone by listing a salary that is at least 20K below market for a given job. It’d be one thing if it was a startup offering huge stock grants and being up front about that but it’s another when it’s just some consulting firm that has been around for a while.

Overall, at least here in the bay area, the job market is doing pretty well so if you are talented it puts you in a pretty good place to be a lot pickier about the type of company and environment you decide to work in. You just have to be diligent about looking for the warning signs of a company that would not be a good fit or has internal issues that would drive you crazy.

What other red flags do you notice in job postings?  I’m sure there are a ton of them and these are just the ones that I thought of off the top of my head.

Interviewing Job Candidates

I started out writing a bit about mock objects but this topic has been on my mind lately so I’ll cover it first. Plus, my mini rant about the proliferation of long resumes seemed to hit a nerve.

I’m curious how others approach their interviewing? Do you go hardcore on the tech questions? Or ask specific questions about their experience? Maybe you look for aptitude more than direct relevant experience?

I’m been trying to hone my approach lately. In some ways my approach has to been to give the developer open ended questions and see if they answer them or hang themselves, to borrow a phrase. Basically, I start asking questions about decisions they have made at previous jobs and projects that they list on their resume. The first thing it tells me is if they actually worked on the projects I find interesting. You’d be surprised at what I come across. I had one guy spend almost half a page talking about these business processes that he built so I asked him how they were configured (i.e. XML or some other metadata) and what tools he looked at to help him solve the problem. He immediately fessed up that they were just hard-coded Java classes and weren’t really workflow. That pretty much sunk his interview, although he wasn’t doing great up to that point anyways. The good candidates tend answer the questions pretty quickly and don’t go overboard with their descriptions. They show they know their stuff and then tend to ask questions back about what other specific things I’d like to know. Bad candidates usually go off on tangents and never get around to answering the question. I don’t stop them, either. I want to see how far they’ll go.

The next step after these types of questions tends to be specific questions about tools that they have listed knowledge about that I have strong knowledge in. For instance, if they’ve listed Hibernate experience and claim their skill level is like a 6 or 7 out of 10 I ask specific questions about the difference between the session and second level caches. If they know that then I go in to questions about how they’ve configured Hibernate. Then maybe on different ways to model a many-to-many type of relationship. I like to dig and see if they’ve really used the tool and then pose what-if questions to see if they understand the tools they use as well.

Last (hey, I only usually have an hour with them) is the coding challenge. We make candidates code. Lately I’ve been using a challenge to make them write a random weighted list implementation. It’s basically a weighted round robin algorithm implementation. The code for it is actually quite simple. It’s maybe 8 real lines of code if done correctly…something like that. The first thing it tells me is if they can think through a problem and come up with a simple solution. The last thing I want is for them to start inspecting return values and insuring a specific statistical return percentage based on an item’s weight. That’s just ridiculous. The second thing it tells me if they read requirements. I give very specific requirements and in some ways make it easy if they would just read and think for a minute or two before starting their response. Most don’t. I then look at the solution. If they do things like make the class immutable to keep the implementation simpler then they get bonus points. Even more if they can coherently explain why they did what they did as well. Hey, they might have seen the question on the Internet and are good at regurgitating without understanding.

So anyways, after using this approach for a while I’ve started to ask a little more Java related skills to see if they understand the language and programming concepts in general. It seems that folks that know the little things tend to be developers more interested in their craft as well. My latest test (and I came up with this when discussing the answer to the first question with a candidate) is to give them a simple Java class that is mutable. It has a default constructor and a getter and setter for an attribute. I then tell them to modify the class to be immutable. No sub-classing or anything like that. Just change the code. Again, I get some very strange looks and even stranger responses. It’s kind of boggling that people with a good deal of experience don’t even understand the concept of immutable or can even describe its benefits.

That was longer than I expected. Well, if you guys have any ideas or tests you like to use, drop me a line and let me know what you do and more importantly why you ask and what their answers tell you. That’s more important than the question in my opinion.

What’s Up With Huge Resumes?

What’s up with huge resumes these days? The company I work for has been hiring lately and so I usually end up interviewing one to two people a week. Lately I’ve been seeing huge resumes from developers. I mean like 9, 10, and 11 pages for guys with maybe 7-9 years of experience. I have 12 years of experience and my resume is at 3 pages or so. It might have gotten in to 4 but I’m going to start removing stuff from jobs beyond 10 years I think. They’re not relevant and just make the resume go on and on.

Anyways, back to the relevant stuff. These resumes just go on and on (and ON) with mind numbing detail such as, “Configured log4j properties files”. What??? Why would I care about that. Great, you can use log4j, I must want to hire you now. But seriously, they put way too much detail about what they have worked on and I want to take a nap before I get through 2 years of experience. I just want bulleted items of the important things they actually did and/or were responsible for. These people are also the ones that didn’t run spell check on their resume usually. Hint: Education is not spelled with two Ts. What’s worse is that most of these resumes come from recruiters. I actually think it’s the recruiters that tell these people to fluff up their resumes. The recruiters should get dinged for not even proof-reading the resumes. Or at least lose a few % of commission. It’s just pathetic.

And last, people, get your resume right! Contrary to the belief of some, Struts is not a methodology. Neither is UML. UML is a modeling language, folks. The RUP is a methodology.

Another fun little tidbit: In Microsoft Office, if you type “JBos” instead of “JBoss” it will correct it to “jobs”. Proofread please!