The Developer Cover Letter

Article hero image

Your cover letter is usually the first impression you make to the people at a company. Even if you got your foot in the door with one person, a bunch of people are going to see your cover letter and resume before you actually get hired, and that's going to be your first impression with many of those people. First impressions matter a lot.

First impressions matter

For instance, as a developer, you have probably opened up your email at one point or another and found a message that looks like this:

Subject: Exciting Startup-Full Stack Developer Needed Hi [perhaps your name but maybe someone else’s], I came across your profile and feel with your background you would be a great fit for an exciting Full Stack Developer position I have available with one of my top clients. It is a well funded company in a lucrative space, with an exciting and challenging work environment. I would love to chat with you about this opportunity a bit more. I can be reached at j.doe@recruiters-r-us.com or at 555-123-4567. Jane Doe 555-765-4321 | jane.doe@gmail.com

I remember the first time I got an email like this I was actually pretty excited; it felt like a bit of validation for me as a developer and so I called them back. I was immediately told I didn't have the required work experience that they were looking for. Today I know better, because I know what to look for. So what are the problems with this first impression?

  • The biggest problem is that this message could be sent to anyone. It is not specific to me in any way, shape, or form.
  • It doesn't tell me what I'd be doing if I got this job.
  • It doesn't address my individual needs at all.
  • Does this recruiter have non-top clients? To whom do they send those jobs? Why am I even thinking about this?
  • I'd like to look up some more information about this client to see if I'm interested… but I can’t because it doesn't say who the client is.
  • Why are there conflicting pieces of contact information?
  • And (to a lesser degree of importance) it comes off as "we so bad, if you wanna be bad come try to join us."

This small email is full problems; it makes a horrible first impression, and I never want to hear from Jane Doe again. If Jane wants to do a better job, she needs to start fixing those problems. First impressions are important, and this works both ways. When you reach out to a company, you want to tell a story about how you are going to fulfill their needs. The resume alone usually doesn't do this because it's all about you, and the cover letter alone doesn't do this because there's nothing to back it up. Resumes have a fairly standard format that makes them easy to scan and consume, but they don’t always tell the right story for the company by themselves. The cover letter is the best place to start the story you want to tell to each specific company.

Figuring out what to say

So what goes into a cover letter and how do you start to tell a story with it? This comes down to understanding the needs of the company. Why are they hiring? What skills are they lacking in? What problems are they trying to solve? Painting a picture where you are the answer to any of these questions is much more likely to get you a call back than a generic cover letter that says the exact same thing as your resume. Let's look at each question a little more in depth to help you get an idea of the direction we might take.

Why are they hiring?

  • Did someone quit and they need to replace them?
  • Are they always hiring so they don't miss out when smart people come around?
  • Do they have too many ideas and need more people to implement them?

What skills are they lacking in? What problems are they trying to solve?

  • Do you know some tools that you could teach their team?
  • Do you have domain knowledge related to their problems?
  • Are you passionate about their mission?
  • Do you have leadership experience?
  • Can you add a new perspective to their team makeup?

This is the part that most people find the hardest. You cannot tell a story where you solve the company's problems without knowing the company's problem, and that means you have to do research—at the very least you have to know what products they have and what they are hiring for—on every company you send an application to.

What bad cover letters look like

Many of the cover letters we see look like this:

Dear Sir or Madam: I would like to submit my resume for your consideration regarding the position of Site Reliability Engineer (SRE). I feel that my experience will be a great fit for Stack Overflow. In addition to many years of experience with the Microsoft .NET stack, I also have experience in a variety of other languages. This background makes we a well rounded developer, and enables me to bring fresh perspectives to problems and tasks. Thank you, Nick Larsen

Hopefully by now you are starting to understand why this is not a good first impression. If I replace the name of the company and the name of the job, I can use this cover letter to apply for just about any developer job, which makes my first impression that of “any developer.” This lacks personalization to the company; it does not address their problems, it does not indicate that I actually want to work there, and the only thing it tells the company about me is that I know the Microsoft stack and some other unspecified languages which may or may not be applicable to what they are working on. Basically this is just benign. This doesn't trigger a negative response from the reader but it does not trigger a positive response, either. This is just another resume I'd toss on the maybe pile—or just throw in the trash if the maybe pile was full today.

An outline for a good cover letter

Let's get back to the good stuff. Once you know the story you want to tell, you have to materialize it into words. This is typically not that hard, but it can be frustrating figuring out where to start. The solution is that all cover letters need to follow a simple two paragraph format:

The first paragraph tells the company why you want to work for them.

You have one of two options: you either want to work with the people who work there, or you want to work on the problems they are solving. If you're truly in love with both, mention both, but only one is necessary. Once you have written down that you want to work there, back it up with a single specific reason why. Why a specific reason? Because it tailors the resume to them, showing you have done some amount of research on the company and decided that you actually want to work there. It's much more impactful than just applying because you saw a job listing. When a company thinks you want to work there, it really eases their decision because all else being equal between two candidates, they are going to go with the one who wants to be there. And wanting to be there can often outweigh even stronger candidates because you have shown shared goals.

The second paragraph tells the company why they want to hire you.

This is where you start telling the story you want to tell, and you have to keep it short, around three sentences maximum, regardless if you're applying for junior or senior positions. The real goal of your story is to convince the company you can fulfill their needs. Highlight the exact things you want to bring to the company, whether it's knowledge of some tech, domain knowledge, a process you follow, or whatever else you think might work to help solve their problems. And again, back it up with a specific example. These specifics are important because they demonstrate capability early in the hiring process instead of leaving it up to the reader to figure it out for themselves. Here's an example cover letter that hits all of these points. It clearly states why I want to work there and backs that up with a specific example. It addresses the company's needs by showing a specific example of how I proactively addressed some major problems at my previous job that are applicable to the job I’m applying for. It keeps it short and to the point.

Hello Stack Overflow, I’ve used Stack Overflow for as long as I’ve been a developer, and I recently came across a post about the architecture of your products on Nick Craver's blog. It made me think, “I really want to work with these people who care so much about what they do.” I’m super excited to hear about all the tools you have built to make developer processes more streamlined; that’s right up my alley. At my current job I started out as a web dev, but I was constantly blocked by broken builds and the multi-step process for getting code out to production. I took it upon myself to fix this by prototyping a continuous integration system that eventually turned into the system our team still uses today. As we’ve started to grow, I’m focusing a lot more of my time on monitoring systems and currently evaluating some possible solutions. I look forward to hearing from you soon, Nick Larsen [contact email] [contact phone number]

If we're supposed to tell a story, why does the cover letter need to be short? The reality is that recruiters are not looking at just your resume today. They are probably looking at 100 resumes today and optimistically that gives you about 2-3 minutes to make your impression strong enough to get added to the call back pile. If it takes longer than that for them to read your cover letter, they will never look at your resume or anything else that you included with your application. Keep it short. To recap, yes, it takes a lot longer to write a good cover letter than to write a cover letter template that allows you to just replace the name of the company and the job. Will you get a call back on every application you send following this template? No, but you will see a significant increase in the percentage of companies that call you back when following the personalized template I have outlined here.

Login with your stackoverflow.com account to take part in the discussion.