When your company is trying to hire programmers, there is a good chance that your ad on Monster, CareerBuilder, other similar Web sites is going to be the first thing potential candidates see of your open position. Unfortunately, most programming “help wanted” ads are written in a way that makes the best candidates fairly unlikely to respond to them, even if they are a good match for the job.

Why? Because the people writing these ads often don’t understand developers, and they produce a generic ad that reads like a boilerplate job description with an Apply Now link at the bottom. Here are 10 want ads for developers that show how to get top programmers to click that link.

Note: This information is also available as a PDF download.

#1: Show them the money!

While the compensation for this position is ultimately dependent upon the candidate’s experience and other qualifications, the approximate salary range that has been approved for this position is $XYZ/year to $ABC/year.

There are some good reasons why most job ads omit salary information. The problem is, candidates don’t care about your reasons for omitting it. They want to be shown why they should apply for your open position. Programmers are busy people, and they don’t enjoy sneaking away from their desk to have a 20-minute discussion with recruiters doing the ritualistic “compensation dance.” Providing an approximate salary range (with all disclaimers, of course) in the job ad ensures that no one’s time will be wasted and encourages candidates to apply.

#2: Leave the laundry list at home

We are looking for candidates to fill a senior Java developer position. Position focuses on creating and maintaining Web services that interact with a complex database and implement precise business logic. Candidates with experience in the insurance industry will be given preference.

Did you notice that the only technical skill listed is Java? Most job ads turn away many qualified candidates by presenting a laundry list of skills that are “must haves.” In reality, few candidates will actually have that precise combination of skills, so they simply will not apply. What generally happens is that the technical manager writes down all the technologies they use and how often their programmers use them. The recruiter then turns that into the list of “must have” and “plus” skills based upon the usage. When job seekers see the list, especially the items labeled “must have,” they do not apply, even if those skills could be easily learned. Another downside of the laundry list is that it takes up a huge amount of space in the ad. In the example above, skills like XML and SQL are implied by the statement that the work is in Web services; there is no need to explicitly mention it.

#3: Offer a chance to learn

Even the most experienced developers in this position will have the opportunity to expand and improve their skill sets in many advanced areas of knowledge.

The very best programmers did not become good just sitting around and learning by osmosis; they did work beyond their capabilities and learned how to do it. They are much more interested in jobs where they will use old skills in new ways or learn new skills entirely. If your project is run of the mill, you will have a harder time recruiting (and retaining) top talent compared to a more exotic project. But if your project is a challenge, let the candidates know. Not only will you attract more of the best developers, but the programmers who are not as interested in having their limits stretched will be less likely to apply.

#4: Show a commitment to their education

The firm believes that it is critical to encourage personal development to have a successful team. As such, we have established a budget for employee education and allow developers to take training courses or otherwise improve their skill set during normal business hours.

One of the best ways to attract (and retain) developers is to show them that you really value them. And one of the best ways to do that, as well as to show that your company is special, is to establish and advertise an education program for your programmers. Most companies fail to do this and at best allow managers to buy a few books. The expectation is that programmers are supposed to show up ready to work with all skills already learned, and any new skills have to be learned on the employee’s own time. By advertising a formal education program, you are letting candidates know that they will be valued, and that your position is a smart career move for them.

#5: Play up the most attractive languages, when possible

Interested in Ruby? So are we! We are hiring developers to work in Ruby. Candidates with prior Ruby experience will be given extra consideration, but all candidates with a strong grasp of programming principles, particularly experience with other similar languages (Perl, Python, Lisp, Scheme, etc.), will be viewed favorably. We are hiring one senior member of the team and three mid-level team members. Training in Ruby will be provided at the company’s expense.

Wow, an ad that essentially says, “We are looking for a skill you don’t have, but we will hire you anyway”? Yup, that’s right. There is something magical about Ruby amongst programmers. People who work in Ruby are extraordinarily loyal to it, and it seems like a number of really smart programmers are willing to travel or otherwise make sacrifices for the chance to use it professionally. As a result, working with Ruby and advertising that fact will get the resumes piling up pretty quickly. Other languages out there have similar followings, such as Python, Lisp, and Scheme. If your team is using a language that developers are really passionate about using, advertise it.

#6: Mention that relaxed atmosphere

Our development environment has a laid back feeling, with business casual dress throughout the week and Friday “jeans day.” Schedules are flexible within reason, and employees are given the option of working from home one day each week.

When applicants see an ad like this, they know you will be a lot less likely to feel the need to have them under your thumb. Top programmers hate that feeling, and it may very well be a reason why they are thinking about leaving their current job. When you post an ad like this, you are showing candidates that you are not just looking to fill empty chairs, but you actually will give them the latitude in hours, dress, and in-office presence that most developer positions can allow.

#7: Offer toys!

We believe that the most productive developers have the full backing of the company. We ensure that our developers have the most modern workstations and provide a modest budget for all developers to customize their workstation or purchase peripherals they require.

The best developers tend to be interested in computers in general, not just in cranking out code. While many developers are not working on projects so massive that their PC’s capabilities will make a huge impact on their ability to complete the project, giving them a super-nice PC will win big points with them. It shows the developers that you are willing to put your money where your mouth is in terms of supporting them. And giving them a moderate budget to customize their tech is just icing on the cake. When your ad makes it clear that you get the right tools into the hands of your development staff, potential candidates will be more likely to apply.

#8: Advertise the benefits of your location

Our office is located right in the middle of downtown Manhattan, one block from the E line and a wide variety of restaurants.

If your office is located in a place that has a lot going for it, let the candidates know. After all, if they are choosing between your ad and another one that looks roughly the same in terms of work and compensation, things such as the ease of commute, lunchtime options, and after-hours entertainment suddenly become deciding factors. If your office is in or near a great school district, that is a major selling point too. But whatever makes your location special (in a positive way) should find its way into your ad if possible. The response rate to your ads is likely to improve.

#9: Show that you “get” developers

Our company is committed to making our developers as successful as possible. A manager with a work history in IT leads each team, and our sales process includes technical personnel throughout every step of the sale to ensure technical viability of every project.

Some of the biggest complaints voiced by the best programmers are business problems, not IT problems. All too often, their ability to do a good job is hampered by managers who do not understand the special needs of a programming project or by a rogue salesperson who makes wild promises that the development team knows it can’t fulfill. When your job ad shows that your environment works the way a programmer would have it work, candidates will be a lot more interested in your ad than the others that look like another exercise in corporate futility.

#10: Advertise your success

The department has increased revenue four years in a row and is considered the “crown jewel” of the division.

One of the things that can scare a possible job applicant away is a project (or department or company) that might be teetering on the brink. After all, why jump jobs only to lose the new one a year later? Even if the job itself is in no danger of going away anytime soon, no one (especially top programmers) likes working for a project that is not successful. When your candidates know that this job would have them working for a proven winner, they will knock down your door to apply.