I won’t get into whether many companies really believe this, but having good people who are true assets begins with the hiring process, and the first meaningful step (once you've advertised for the position) starts with reviewing the resumes.
Unless we have an immediate need for a very specific skill (and despite pressures we have from time to time, this is in fact very rare), as a software development manager I look to hire good programmers, period. I don’t worry about prior experience with a particular language or platform, but I will use experience that is directly related to our needs as a tie-breaker, all other things being equal.
When it comes to the resume, I’m sure that I’ve overlooked some good candidates in the past because their resumes didn’t differentiate them from the pack. A fair amount of developer resumes read like a shopping list, providing a dry list of tools and technologies, but little in the way of what you can really do.
What I really want to know is that you are able to think through difficult problems, prioritize tasks, that you take personal responsibility for your work, that you have some initiative. I want to understand your accomplishments and what your capabilities are.
To succeed in today’s world you need a range of skills and abilities that I as a manager find important, including technical knowledge, communication skills, collaboration skills, and regular showers. However, I won’t notice your hygiene until your resume gets you through the door…
And that means that your resume should highlight more than the technology that you have touched! Being qualified for a position in this field requires more than just having technical knowledge; you need to be able to produce results. Make your resume speak to whoever is going to read it, compel them to at least pick up the phone to have a conversation!
For my money, I prefer it if you provide me with your real qualifications up front. Don’t provide a bland list of compilers, database platforms, and communication protocols that you’ve played with. Tell me about what makes you a good candidate. You can write short paragraph or provide bullet-lists, but tell me what you can do – at a high level. For example:
- Demonstrated ability to deliver quality results, on time and on budget, as part of an Agile team.
- Proven track record of designing and implementing highly scalable, enterprise systems.
- Accomplished presenter and author with 5 published articles and the writer of a weekly blog.
- Recognized for building collaborative, committed, high-performance teams.
Get me interested to read on and find out more. I’ll learn more about the specific technologies that you have worked with as I review your employment history. You want your resume to get me intrigued enough to pick up the phone and schedule an interview to discuss your experience in person.
Personally, I don’t find an “objective” statement all that useful. You want a job, right? You know what position I’ve posted, so presumably you know what you are applying for, correct? I always assume people have career objectives, and I am more than happy to explore these during the interview process, provided you reach that point.
What I really look for are individuals who have a track record of learning and growing, who can work through difficult problems and deliver, and who will be a good fit for our company and the team that they will be assigned to.
Once you’ve provided me a short outline of your capabilities, the rest of your resume can be divided up with your actual employment experience, education and anything else (do you blog?) that you think that I should know about.
If you want to list the technical tools and platforms, put them in a Technical Skills section. And with so many candidates on the market today, it's a good idea to tailor your resume by putting the skills and knowledge that we've advertised for up front. Don't let me overlook you!
When describing your actual experience, include your job title and list your key accomplishments and the benefit(s) provided along with the technologies and platforms that you had experience with in that position. Seek to provide more than just a list of facts about your prior employment. For example:
2007-Present XYZ Corporation
- Led a high-performance team of 5 developers that replaced an entire suite of mission-critical mainframe products, re-designing and re-writing them using Microsoft C#, SQLServer 2005, and Microsoft Office SharePoint Services (MOSS). The new applications took 50% of the time required to develop the original suite and added new workflow automation, enabling the XYZ Corporation to lay off 10,000 employees, achieving significant long-terms savings realized through greater productivity.
- Designed and developed an “implement” add-on for Microsoft PowerPoint entirely in VB.NET in 45 days. This add-on enables business users to generate small-scale, working software products directly from PowerPoint slides with a push of a button, eliminating the need for costly software development projects. Received a chairman’s award and gift certificate in recognition for generating hundreds of millions of dollars in new revenue.
- And so on…
Another nice touch that adds to your being noticed: A cover letter. If you’ve paid attention to the job posting, you can call out specifics about your experience listed on your resume that make you qualified for the position.
If I receive a cover letter along with a resume, I always read it. It allows me to understand the person behind the resume a little more, and this is a great place to provide a little information about your career goals and aspirations. A good cover letter can make the difference between your being a "maybe" on a pile of other resumes to getting a phone screen at the very least.
If you are interested in more resume-writing tips, I suggest the following links: