Should dead code be removed?
Should it be commented out?
What’s the harm in leaving it there?
Should dead code be removed?
Should it be commented out?
What’s the harm in leaving it there?
If you’ve made it to the phone screen, you’re doing better than *half* the people I look at on a regular basis. Most fail with their résumé. Now the tough part: You’ve got to sell me during the phone screen. When I walk out of the phone screen, I’ve got to feel like you’re not going to be a waste of time to bring in for an interview. You have less than an hour to convince me.
As Sun Tzu once said, know thy enemy. There are well documented methods to phone screen candidates:
Steve Yegge’s Five Essential Phone Screen Questions:
Joel Spolsky’s Phone Screen Questions:
You only get one chance to make a good first impression, and the phone screen is that one chance. Make the most of it.
We’re in a recession. If you believe the austrian economists, it’s not going to get any better anytime soon. Now the good news: There are plenty of software developer jobs out there. Bad news: Everyone and their brother is applying for the same job you are.
Not all programming jobs are created equally. Working at a hipster media engagement firm is different than developing an internal line-of-business app, which is different than game programming or non-profit work.
Most programmers work dull jobs in a corporate environment developing bespoke software. It’s a living. My advice won’t help you land a job at Fog Creek Software, or Amazon, but it will help you everywhere else.
1. Pare down your résumé. I don’t read pages worth of résumé. I just don’t. It’s not interesting, and it tells me little about a candidate. When I find a résumé with one page, that makes me a happy camper. I get grumpier with each subsequent page.
2. Tailor your résumé to the position you’re going for. If I’m hiring for a Winforms job, I’m looking for experience with C# and Winforms. I think it’s cool that you know Perl, and we’ll talk about it during the job interview, but don’t spend bullet points devoted to it. If you don’t tailor your résumé, it’s an indicator that you don’t care or are desperate. You may be desperate, but pretend this is dating: Don’t show it.
If you feel the need to include those jobs for the years of experience myth, then include the header and the position title. I don’t need gory details. If I care enough, I’ll ask in the interview.
3. The minor details matter. It’s not ‘dotNet’ or ‘.Net’, it’s ‘.NET.’ If I see dotNet on a résumé, I automatically file it under, “This candidate doesn’t pay attention to detail.” No squiggly lines, either. Most résumés these days are sent electronically, and those squigglies show up.
4. Skip the boring stuff. Every programmer debugs and writes code. If you feel a need to include it, do it as the last bullet point in each position. Otherwise, I want to read about the exciting stuff: How you saved them money or time, or sped up the code through doing something neat. Show me the numbers.
5. If you write it on your résumé, be prepared to talk about it. It may seem cool to put ‘JavaScript’ on your résumé if you’re an ASP.NET developer, but if all you’ve done is copy and paste a JavaScript script off the internet, you aren’t a JavaScript developer. Litmus test: If you can’t create a memory leak in your favorite language, you aren’t competent in that language.
6. Get rid of the objective statement. They take up space, they are horribly written, and they all sound the same. I skip them. If I see an objective statement that says, “I want a job that doesn’t suck.”, then we’ll talk. Otherwise, keep it out of your résumé.
7. I don’t care about your references. I’m not going to contact them. If you’re smart enough to be a developer, you’re smart enough to get people that will say good things about you.
8. I want to see that you code in personal projects. The vast majority of programmers are 9-5 programmers, for various reasons. All else being equal, I’m going to hire the programmer that codes on their spare time.
9. I’m going to google you. Have a web presence. We’re 16 years into the adoption of the World Wide Web. If I don’t see your name online by now, you’re 16 years behind the curve. Get a LinkedIn Profile, a blog, and spend time on programmer websites (+1 if you have a Stack Overflow profile).
10. No walls of text. Don’t overwhelm me with what you’ve done; I’m not actually reading it anyway. I’m only skimming, and I’m looking for specific things: Highlights, numbers, words that don’t belong and your grammar and spelling.
11. Include a cover letter. Woo me there. Give me the stuff that doesn’t fit in your résumé there. Make it interesting. Fact: I’ve received dozens of résumés, none that had a cover letter. Zero. That means if you give me a cover letter, you’re already ahead.
Next time I’ll go over what to do (and what not to do!) in the phone screen.
When I was a young sergeant in the Army, I had the honor of serving under a Staff Sergeant who had spent 18 years in the Army. We worked in a unit that handled the administrative functions surrounding wounded and injured soldiers. The unit itself was rather large at the time (this was in 2005, at the ‘height’ of the Iraq war) and as such there was plenty to keep us busy. He was nearing retirement, this would be his last assignment, but you’d never know it by talking to him.
We hung out a lot at work, and daily there’d be something that he’d wonder about. He did that a lot, just wondered aloud why something was the way it was; or how we would go about doing x. Invariably I’d talk to him the next day and he’d have asked the right person or already gotten x done. This Staff Sergeant batted 1.000. You could bet that if he ever brought up a task that wasn’t assigned to you, he’d already have it done by the time it came up in conversation again.
I’ve never seen anyone work like that.
He would give me tasks to do, and he’d give himself tasks to do. In the beginning I’d ask him about the tasks he’d assigned himself, curious since I hadn’t seen any visible progress. As it turns out, I never saw visible progress because he’d already have it done by the time I asked.
Pretty incredible.
It wasn’t just the small things that he seemingly got done, it was everything. If he brought up a topic, I could bet money that before we talked about it again, it would be done. Without fail.