It’s true finding a job these days in any field is a lot harder than it used to be a few years ago, but experts are saying that the field of computer programming is actually growing. These 6 job search tips will make landing a programming job much easier for a computer science grad, coming straight from the people who will hire them.
1. Don’t Mess Up Your Resume
When a good company has a job opening, it means they also have a giant stack of resume submissions. No company is going to interview the author of every resume in the stack. And it doesn’t matter how qualified you are otherwise; if you write a resume that screams “throwaway stack,” you’re not going to get the job.
“It’s not going to get you hired and it’s not going to get you ignored,” explains Joel Spolsky, the founder of Fog Creek Software and the author of Joel on Software. “However, if I have a stack of 300 resumes, I do face a problem of not wanting to interview 300 people.”
There’s no universal factor for passing the resume screening process. Spolsky looks for a high GPA, because “theoretically it comes from 36 different professors’ individual assessments of smartness.” Ilya Grigorik, the founder and CTO of a data analysis company called PostRank, however, published a rant on resumes that calls GPA “possibly the least useful predictor for a good interview.” Chris Martin, the VP of Engineering for Pandora (), says he focus on the specific technology projects that the applicant has worked on.
Conversely, it’s pretty easy to say what will disqualify you from the screening process: poor proofreading.
“Spelling errors shouldn’t happen,” Martin says. “There are tools for that. If you can’t do it, you’re probably not smart enough to work here.”
2. Be Smart and Get Things Done
These are the sole two hiring criteria Spolsky names in his Guerrilla Guide to Interviewing. But, as a job candidate, how can you be perceived as smart and demonstrate that you get things done?
Well, the first point you can’t really do much about.
“I can’t tell you to try using really long sentences and then you’ll look smart,” Spolsky says. “either you are or you aren’t, so there’s no use faking it.”
In other words, if you aren’t smart, your best bet may be to try another profession. But no matter how smart you are, you still need to demonstrate that you get things done.
Be able to explain your specific role in the projects you’ve been involved in as well as the framework of the entire project. Start or contribute to an open source project. Answer questions on sites like Stack Overflow ().
“Write a blog, send me a link to your Stack Overflow (or something equivalent) profile, or GitHub username – something, anything that shows me your interest and involvement in the community,” suggests Grigorik.
3. Check Your Ego
Martin has run into a consistent problem while interviewing programmers for Pandora: “We’re always looking for really smart people, and really smart people often have big egos,” he says.
At least for Martin, it doesn’t matter how skilled the programmer is — if they’re arrogant, they’re not worth putting up with.
Demonstrate your normally proportioned head during the application process. Don’t be picky about which projects you’ll be working on and show your willingness to learn new things. This is not the time to demand a private office.
4. Learn People Language, Too
While not exactly a profession known for the people skills of its people, programming does involve a good deal of human interaction. You need to be able to effectively communicate with both your team and people, like marketers and managers.
“If you ever look into a professional kitchen in a restaurant, you will see the head chef’s ability to keep control is more about his communication skills than his cooking skills,” Spolsky says. “The same thing happens with programmers. If you can’t communicate, you’ll maybe be ok as a sous chef, the equivalent of chopping lettuce all day.”
Grigorik thinks people skills are so important that he invites candidates at PostRank to work with the team for a day or two so that he can see how they interact. “You can tell a lot about a person just after a few hours of working with them side by side,” he says.
Be conscious of grammar and composition when writing your cover letter and exchanging e-mails. If you’ve had problems with interpersonal skills or communication skills in the past, consider seminars or books that might help you improve.
5. Be Prepared to Prove Yourself in the Interview
Go ahead, study behavioral interview techniques and be prepared to answer them. But what is really going to make or break your job interview is how well you prove your competence. Different companies have different approaches to testing you.
Pandora asks its job candidates to spend four to five hours in interviews with about eight different people. Martin says he’ll ask a lot of programming questions, but that he won’t sit anybody down in front of a computer and ask them to code. Spolsky, on the other hand, will always ask people to write code during the interview.
“When I ask a question like that, I’m not asking it to get an answer,” Spolsky says. “I want to have a conversation about it.” It’s important that you demonstrate a logical thought process and that you don’t give up on the problem if it seems too difficult. It’s not important whether you say “because the holes are round” or “because it’s easier to roll the cover than carry it.”
6. Don’t Fake It
After Fog Creek Software’s interview questions showed up on glassdoor.com, the company interviewed a candidate who had read and prepared for them. He nailed the first question. The second question wasn’t included on the list, and it became painfully obvious that the candidate had no idea what was going on.
“A lot of people get caught in the cycle of, ‘oh, I know that,’” Martin says. “And then it’s just embarrassing when they don’t.”
Don’t exaggerate the number of your proficient skills when you write your resume. And don’t try to talk your way around programming questions that you aren’t familiar with during the interview. You will not pull it off. And it will be embarrassing.
“If you don’t know this stuff, saying you don’t know it would be a good place to start,” Martin offers.
Beyond being embarrassing, there’s really not much reason to fake knowledge of additional languages. Most employers aren’t looking for people who are experts in every language. They’re looking for good programmers who can learn new languages if required.
“Learning how to program in C Sharp is 99% knowing how to program and 1% C Sharp,” Spolsky says.
Computer Programming Job Listings
Every week we put out a list of social media and web job opportunities. While we post a huge range of job listings, we’ve selected some of the best computer programming jobs from the past two weeks to get you started. Happy hunting!
- Drupal Programmers at TMG in Washington, D.C.
- Senior Programmer/Technical Lead at Forum One Communications in Alexandria, VA.
- Software Engineer – J2EE, Web Services at Mocospace in Boston, MA.
- PHP Developer at ANYwebcam.com Pty Ltd in Landrum, SC.
- Software Engineer (Web Services API) at Incentica, Inc. in Santa Monica, CA.