Nobody likes writing cover letters. That’s worth saying upfront because if you’re dreading this part, you’re not alone and you’re not doing anything wrong. Cover letters are awkward by nature. You’re writing a semi-formal letter to a stranger explaining why you’re good at your job. It’s uncomfortable even when things are going well. When you’re stressed or in the middle of a job search, it can feel impossible.
Here’s the good news: the bar is genuinely low. Most cover letters are either painfully generic (“I am writing to express my interest in the Software Engineer position at your esteemed organization”) or obviously AI-generated (“I am excited to bring my passion for leveraging technology to drive meaningful outcomes”). Recruiters have read both of those sentences thousands of times. They’ve stopped reading them.
If your cover letter sounds like a real person wrote it, you’re already ahead. That’s the whole goal.
What a cover letter actually needs to do
A cover letter has one job: give the recruiter a reason to look more carefully at your resume.
That’s it. It’s not a place to retell your entire career. It’s not a place to list your skills. It’s not a place to explain your life philosophy or your passion for technology. It’s a short, clear note that answers three questions:
- What role are you applying for?
- Why does your experience make you a reasonable fit?
- Is there anything your resume doesn’t fully explain (a career change, a gap, a pivot)?
If your cover letter answers those three things in under a page, it’s doing its job.
Start with something direct
The opening line matters more than anything else. If it sounds generic, the recruiter mentally checks out before reaching the second paragraph.
Don’t open with
“I am writing to express my interest in the Senior Software Engineer position. With over 10 years of experience in building scalable solutions, I believe I would be a strong addition to your team.”
That sounds like it was copied from a template in 2012. It tells the reader nothing they couldn’t get from your resume.
Instead, try
“I’m applying for the Senior Backend Engineer role. I’ve spent the last 12 years building backend systems and infrastructure at Meta, Stripe, and Mixpanel, and this role lines up closely with the kind of work I want to keep doing.”
That version is direct, specific, and sounds like an actual person. It tells the recruiter who you are, where you’ve been, and why you’re here. In three sentences.
Or even simpler
“I saw the Platform Engineer opening and wanted to reach out. My background is mostly in backend infrastructure and reliability, which seems like a strong overlap with what your team is building.”
That’s casual, confident, and human. It works.
The body: pick one or two things and go deeper
This is where most cover letters go wrong. People try to mention every role, every skill, every accomplishment. The result is a dense paragraph that reads like a compressed version of the resume, which defeats the purpose.
Instead, pick one or two things from your experience that are most relevant to this specific job, and talk about them with a little more context than your resume allows.
Good example
“At Meta, most of my work has been on backend services and internal tooling. One project I’m particularly proud of involved identifying a latency bottleneck on a high-traffic service and bringing it down by around 30%. That required a lot of profiling, a few false starts, and eventually a targeted fix that we rolled out without downtime. It wasn’t flashy, but it was the kind of careful, methodical work I enjoy most.”
That paragraph does several things at once: it shows what kind of engineer you are, it gives a specific example, it admits the work wasn’t always smooth (“a few false starts”), and it sounds like a real person reflecting on real work.
Compare that to
“At Meta, I leveraged my expertise in distributed systems to optimize backend services, resulting in a 30% latency reduction that enhanced the user experience for millions of users.”
Same achievement. But the second version sounds like a chatbot, and the recruiter has read 200 sentences exactly like it this week.
Address the gap or pivot if there is one
If you’re coming back from a layoff, changing careers, or applying for a role that’s slightly different from what you’ve done before, the cover letter is the right place to address that. Briefly. Confidently. Without apologizing.
Layoff
“After a restructuring at Oracle, I’m looking for my next role. The work your team is doing in observability is a strong fit for where I want to focus.”
One sentence. No drama. No lengthy explanation. The recruiter doesn’t need your feelings about the layoff. They just need to know you’re available and motivated.
Career pivot
“I’ve spent the last 8 years in backend engineering, but I’ve been gravitating more toward platform and infrastructure work over the past few years. This role feels like a natural next step for that trajectory.”
That explains the pivot without being defensive about it.
Gap
“I took a year off to deal with a family situation. I’m back, I’ve been catching up on the latest tooling, and I’m ready to get back to building.”
Direct, honest, done. Move on to why you’re a good fit.
The close: keep it short
The last paragraph doesn’t need to be fancy. Just wrap it up.
Good closes
“Thanks for reading. Happy to chat more if this sounds like a fit.”
“I’d welcome a conversation about how my background might work for what your team is building.”
“Looking forward to hearing from you.”
Bad close
“I am confident that my unique combination of skills and experiences would make me an invaluable asset to your esteemed organization, and I eagerly await the opportunity to discuss how I can contribute to your continued success.”
If your close sounds like it was written by a lawyer who charges by the word, shorten it.
The formatting rules
Length: Under one page. Three to four paragraphs. If your cover letter is longer than your resume, something has gone wrong.
Tone: Professional but human. Write like you’d write an email to a hiring manager you respect but don’t know yet. Not stiff, not casual. Somewhere in the middle.
Structure:
- Paragraph 1: What role, who you are, why this one
- Paragraph 2: One or two relevant things from your experience, with context
- Paragraph 3 (optional): Address a gap, pivot, or anything the resume doesn’t explain
- Paragraph 4: Short close
Greeting: “Dear Hiring Manager” is fine if you don’t have a name. If you do have the hiring manager’s name, use it. Don’t use “To Whom It May Concern.” It sounds like you’re writing to a government agency in 1997.
What recruiters actually think about cover letters
There’s an ongoing debate about whether cover letters matter. The honest answer: it depends on the company and the role. Some recruiters read every cover letter. Others skip them entirely.
But here’s what matters for you: when a recruiter does read your cover letter, a good one creates a positive first impression. And a bad one (generic, AI-sounding, or painfully long) creates a negative one. You’re better off with a short, human cover letter than no cover letter. And you’re much better off with a short, human cover letter than a long, generic one.
The cover letter is low effort, moderate reward. Don’t overthink it. But don’t skip it either.
A quick self-check
Before you send, read your cover letter and ask:
- Does the opening sound like a person, or like a template?
- Did I pick one or two specific things to talk about, or did I try to cover everything?
- Could this letter only have been written by me, or could any engineer have sent it?
- Is it under a page?
- Would I feel comfortable if the hiring manager read it out loud in a meeting?
If you can answer yes to all five, send it.