Lesson 1 of 5
Resume & LinkedIn That Get Callbacks
"A resume doesn't get you the job. It gets you the interview. Confuse the two and you'll write the wrong document." — a recruiter who has screened more resumes than she can count
You can pass the coding screen, design a system on a whiteboard, and tell a STAR story that lands. None of it matters if your resume never gets read. Before any of the skills in this volume come into play, a different, quieter gate has to open first: someone — or something — has to look at a page of text and decide you're worth a phone call.
That decision is faster and more mechanical than most engineers imagine. A recruiter spends around six seconds on a first pass. Before that, an applicant tracking system (ATS) may have already parsed, scored, and filtered your resume against the job description without a human ever seeing it. Two gatekeepers, both skimming, both looking for reasons to move on to the next candidate in a stack of three hundred.
This chapter is about getting through both. Not with tricks or keyword stuffing, but with the same discipline you've already practiced in the STAR Results step: showing specific, quantified impact instead of vague responsibility. By the end you'll be able to write a resume bullet that survives the six-second scan and the parser, tune it to a job without lying, build a LinkedIn profile recruiters actually find, and get the referral that beats a cold application every time.
When a recruiter gives your resume six seconds and an ATS gives it none at all, what has to be on the page for a human to decide "let's talk"?
The two gatekeepers you're actually writing for
Most resume advice fails because it imagines an attentive reader studying your career. There is no such reader. There are two skimmers.
The ATS is software that ingests your resume, extracts text into fields (name, title, dates, skills), and matches it against the requisition. If it can't parse your file, or it can't find the terms the role calls for, you can be filtered before a human looks. It is not artificial intelligence sitting in judgment — it's a database that's bad at reading creative layouts.
The recruiter picks up where the ATS leaves off and gives your resume a six-second triage: current title and company, most recent role, a scan for the skills in the job description, and one question — is this person plausibly a fit? They are not reading; they are pattern-matching for a reason to say yes or no.
| Gatekeeper | What it does | What it needs from you |
|---|---|---|
| ATS (the parser) | Extracts text into fields, scores against the job description | Clean single-column layout, standard section headings, real text (not images), the role's actual keywords |
| Recruiter (the 6-second scan) | Triages hundreds of resumes for plausible fit | Relevant title up top, quantified impact, obvious keyword match, one page they can skim without hunting |
Write for both at once and you don't need tricks. A clean, keyword-honest, impact-driven resume satisfies the machine and the human, because they're looking for the same thing from different angles: evidence, quickly.
The resume: format that survives, content that convinces
The one-page rule (for most of you)
If you have under ten years of experience, your resume is one page. Full stop. The one-page rule isn't about brevity for its own sake — it's a forcing function that makes you cut everything that isn't your strongest evidence. A two-page resume from a mid-level engineer signals that you can't distinguish signal from noise, which is precisely the judgment the role is testing. The exception: genuinely senior engineers, staff-and-above, or people with long research/publication records may earn a second page. Early-career and mid-career: one page, ruthlessly.
Reverse-chronological, always
Recruiters and every ATS expect reverse-chronological order: most recent role first, working backward. "Functional" or "skills-based" resumes that hide your timeline are a red flag — they read as an attempt to conceal gaps or job-hopping, and many parsers mangle them. Standard sections, standard headings: Experience, Skills, Education, Projects. Don't get clever with the labels; the ATS is looking for the words it knows.
The bullet formula
This is the heart of the whole document. A resume bullet is not a job description — it's a result. The same instinct you use in the STAR method's Results step applies here: don't tell me what you were responsible for, tell me what changed because you were there.
The bullet formula
[Strong action verb] + [what you did / how] + [quantified impact].
Built a caching layer for the product API, cutting p95 latency from 800ms to 120ms and reducing database load 60%.
Verb → Built. What → a caching layer for the product API. Impact → p95 latency 800ms → 120ms, DB load −60%. Every strong bullet has all three parts. If a bullet has no number, ask whether you can add one — and if you truly can't, at least make the outcome concrete.
The metric is what separates a resume that gets callbacks from one that gets skimmed and dropped. "Improved performance" is a claim; "cut p95 latency from 800ms to 120ms" is evidence. Not everything is measurable, and you must never invent a number — but far more of your work is quantifiable than you think: time saved, error rate, users affected, revenue, cost, build time, incidents, test coverage, page count in a migration, size of the codebase or team.
Before and after: the rewrites that matter
Here are the model rewrites. Study the move in each one — every "after" adds a strong verb, a specific what, and a real number.
| Weak (before) | Strong (after) |
|---|---|
| Responsible for maintaining the payments service | Owned the payments service (12k transactions/day), cutting failed-payment rate from 2.1% to 0.4% over two quarters |
| Worked on improving website performance | Reduced homepage load time 45% (3.2s → 1.8s) by lazy-loading images and code-splitting the bundle |
| Helped migrate the database | Led migration of 40M rows from MySQL to PostgreSQL with zero downtime, using a dual-write cutover |
| Part of a team that built new features | Shipped 3 customer-facing features in a 6-person team; the saved-search feature drove a 12% lift in weekly active users |
| Wrote unit tests to improve code quality | Raised test coverage on the checkout module from 34% to 87%, catching 9 regressions before release |
| Used React and Node to build applications | Built a React/Node dashboard used daily by 200+ internal support agents, replacing a manual spreadsheet process |
Read the left column again. Every weak bullet is true — and every one is invisible. "Responsible for," "worked on," "helped," "part of a team," "used" — these are the verbs of someone describing a job, not someone describing their impact. The right column says the same things with ownership and numbers, and that is the entire difference between the reject pile and the phone screen.
How it plays out A hiring manager pulls two resumes off the stack. One says "Responsible for the notifications system." The other says "Rebuilt the notifications pipeline to handle 5M daily sends, cutting delivery latency from 4 minutes to under 10 seconds." Same job, same person's work. The second candidate gets the call — not because they did more, but because they made what they did legible. Your work only counts if the reader can see it in six seconds.
A full example experience entry
Here is what a complete, well-built entry looks like — one role, tight and evidence-first.
Model entry
Software Engineer — Acme Logistics · Mar 2023 – Present
- Rebuilt the order-tracking service in Go, reducing p99 response time from 1.4s to 210ms and cutting cloud spend on the service by $3k/month.
- Led the rollout of feature flags across 4 backend teams, enabling incremental releases and reducing rollback-causing incidents by 70%.
- Mentored 2 junior engineers through their first on-call rotations; both are now independent responders, and the team's mean time-to-acknowledge dropped 30%.
- Designed and shipped a self-serve refund API used by the support tool, eliminating ~15 hours/week of manual ticket handling.
Notice: four bullets, every one led by an ownership verb (Rebuilt, Led, Mentored, Designed and shipped), every one carrying a number, and a range of signals — technical depth, cross-team scope, mentorship, and business impact. That mix is deliberate. It tells the reader you're not one-dimensional.
Keywords and the ATS: match, don't stuff
The ATS matches your resume against the job description, so the job description is your keyword list. If the posting says "Kubernetes," "distributed systems," and "gRPC," and you've genuinely done those things, use those exact words — not "container orchestration" and "microservices" when the parser is scanning for "Kubernetes." This isn't gaming the system; it's speaking the system's language for skills you actually have.
What it is not is keyword stuffing: a hidden white-text block of every buzzword, or a "Skills" section listing forty technologies you touched once. Recruiters see through it instantly and modern parsers weight it poorly. The honest version: keep a Skills section of technologies you can defend in an interview, and weave the role's key terms naturally into your bullets where they're true.
Tailoring without rewriting your life
You don't rewrite your resume for every job — you retune it. Keep one strong master resume, then for each application:
- Read the job description and note its top 5–8 recurring terms and priorities.
- Reorder your bullets so the most relevant ones sit first under each role.
- Adjust your Skills section and a few bullet phrasings to mirror the posting's language — where honest.
- Make sure your top third of the page screams "fit" for this role.
Ten minutes of tailoring per application beats a hundred generic blasts. The recruiter can tell the difference between a resume aimed at their role and a form letter.
What to cut
Space on a one-page resume is your most valuable real estate. Spend it only on evidence. Cut:
| Cut this | Why |
|---|---|
| Objective statements ("Seeking a challenging role where I can grow…") | Says nothing, wastes the prime top-of-page slot. Replace with a one-line summary only if it adds specifics. |
| "References available upon request" | Assumed. Everyone knows. Dead weight. |
| Every technology you've ever touched | A 40-item skills list dilutes the ones that matter and invites questions you can't answer. |
| Your full mailing address, photo, birthdate, marital status | Irrelevant, and a photo can trip ATS parsing (and invite bias). City + email + LinkedIn/GitHub is enough. |
| Irrelevant early jobs and hobbies | The barista job from six years ago isn't earning its line unless you're a new grad with little else. |
| Fancy graphics, columns, tables, icons, headshots | They look modern to you and break in the parser. Clean, single-column, standard fonts survive. |
Projects: the early-career engineer's secret weapon
If you're a new grad or career-changer without much professional experience, projects are how you prove you can build. But a project entry follows the same rule as a job bullet — it's not "made a to-do app," it's evidence of real engineering:
- Built a full-stack expense tracker (React, Node, PostgreSQL) with authentication and CSV export; deployed on a VPS, used by ~50 beta users from a personal waitlist.
- Contributed a bug fix to [open-source library] merged into the main branch, resolving a memory leak in the connection pool (PR #1423).
Deployed, used by real people, merged into a real repo, solving a real problem — that's what turns a project from a tutorial exercise into a hiring signal. A live link and a GitHub repo beat any bullet, because the reader can check.
LinkedIn: be findable before you're ready to apply
Your resume is a document you send. LinkedIn is a profile recruiters find — often before you've applied anywhere. A huge share of engineering hiring starts with a recruiter running a search and reaching out. If your profile isn't built for that search, you're invisible to a pipeline you never see.
The recruiter's search view
Recruiters use LinkedIn Recruiter, which lets them filter by title, skills, location, years of experience, and keywords, then ranks results. They see a compact card: your photo, headline, current title, location. That card — not your full profile — is what earns the click. So the two highest-leverage fields are the headline and your skills/keywords, because those drive whether you appear in the search and whether the card gets clicked.
The headline
The default headline is just your current job title. That's a wasted asset. Your headline is searchable and it's the first line a recruiter reads. Make it say what you are and what you work with:
| Weak headline | Strong headline |
|---|---|
| Software Engineer at Acme | Backend Engineer · Go, Kubernetes, distributed systems · building payments infrastructure |
| Aspiring developer | Passionate about tech | Full-Stack Developer (React/Node) · open to junior SWE roles · 3 shipped projects |
The strong versions carry keywords recruiters actually search and tell them in one line whether to click.
The About section
Write it in first person, like a human, not a third-person corporate bio. Three or four short paragraphs: what you do and your focus, a signature accomplishment or two (with numbers, same discipline as always), the technologies you work in, and — if you're looking — what you're open to. Front-load it; the preview cuts off after a couple of lines, so the hook goes first.
Being findable: skills, open-to-work, and staying current
- Skills section: LinkedIn's skills are a direct search filter. List the ones that match the roles you want, and get a few endorsed. This is one of the strongest levers on whether you surface in searches.
- Open to Work: you can signal availability privately to recruiters only (the discreet setting) without the green banner your current employer would see. It puts you into a pool recruiters specifically filter for. If you're job-hunting, turn it on.
- Keep it current: an outdated profile reads as neglect. Your current role, recent work, and up-to-date skills should match your resume. Recruiters cross-check.
- Photo and completeness: a real, professional-enough headshot and a "complete" profile rank higher and get more clicks than a blank silhouette.
Think about it Right now, would you appear in a recruiter's search for the exact job you want? Open LinkedIn, type your target role's key skills into the search as if you were hiring, and see whether someone like you shows up. If your own profile can't be found by the search that matters, that's the first thing to fix — before you touch your resume.
Portfolio and GitHub: the signal that can't be faked
A resume claims; a repo proves. For engineers, a GitHub with real, readable code — a pinned project or two, sensible commits, a clear README — is corroborating evidence a recruiter or hiring manager can actually inspect. You don't need a dazzling portfolio site; you need a few things you're genuinely proud of, cleaned up and pinned. One well-documented, deployed project beats twenty abandoned tutorial forks. If your GitHub is a graveyard, pin your best work and let the rest recede.
Referrals beat cold applies — and how to get them
Here's the lever most engineers underuse. A referred candidate is dramatically more likely to get an interview than one who applies cold — referrals are how a large fraction of hires actually happen. A referral routes your resume past the stack and into a recruiter's "the ATS flagged this one as internal" lane, with a human vouching for you. Same resume, completely different odds.
You don't need a close friend inside. You need to be reasonable and specific:
- Start with your real network: former colleagues, classmates, bootcamp cohort, people you've worked with. A warm "I'm applying to your company — would you be comfortable referring me?" is normal and expected.
- Make it easy to say yes: send them the specific job link, your resume, and two sentences on why you fit. Don't make them do work. Most people want to refer good candidates — companies pay referral bonuses — but they won't chase you for details.
- Reach out cold, but warmly: a short, specific, respectful message to an engineer on the team ("I'm applying for the backend role and admired [specific thing your team built] — would you be open to a quick chat or a referral?") works more often than you'd expect. Be brief, be genuine, make it skippable.
- Give before you ask, over time: the best referrals come from relationships you built before you needed them. Answer questions, contribute, stay in touch. Networking isn't a favor economy you raid in an emergency; it's a garden you tend.
Analogy A cold application is walking up to a locked building and buzzing the front desk, hoping someone's listening. A referral is a colleague inside walking down to hold the door open with your name already on the visitor list. Same building, same you — but one of these gets you into the room, and it's rarely the buzzer.
Common Mistakes
- Writing a job description, not a resume. "Responsible for X" lists duties. The reader wants results. Fix: lead every bullet with an action verb and end it with a number.
- No metrics anywhere. A resume of vague claims is indistinguishable from every other. Fix: quantify time, cost, users, errors, performance — anything true and specific.
- Fabricating impact. Inventing numbers or titles is the one unforgivable error; it collapses the moment an interviewer digs (and this volume's honesty rule is absolute). Fix: use real, defensible figures; if you must estimate, keep it honest and be ready to explain it.
- Fancy formatting that breaks the ATS. Columns, tables, text boxes, and graphics confuse parsers. Fix: single column, standard headings, real text, a common font, PDF-from-text (not an exported image).
- One generic resume for everything. A form-letter resume matches no job well. Fix: retune bullet order and keywords per role in ten minutes.
- A dead or default LinkedIn. An untouched profile with the default headline is a closed door to inbound recruiting. Fix: strong headline, real About section, skills filled in, Open to Work if you're looking.
- Only ever applying cold. Ignoring referrals throws away your biggest advantage. Fix: for every serious application, spend five minutes finding a warm path in.
- Keyword stuffing. Hidden text and 40-item skill lists get filtered and embarrass you in interviews. Fix: use the role's real terms only where they're true.
Self-audit Take the single strongest bullet on your current resume and grade it against the formula. Does it start with an ownership verb? Does it say specifically what you did? Does it end with a number a stranger could verify? If any of the three is missing, you've just found your highest-leverage edit. Now do it to every bullet. Most resumes double in strength from this one pass — no new experience required, just made visible.
Because this chapter is about the document, not a spoken answer, the "levels" here are how your resume's emphasis should shift as you grow — the same role, the same page, weighted for who you now are.
Hands-on Do these four things this week, in order.
- Fix five bullets. Take your five weakest resume bullets and rewrite each with the formula: [action verb] + [what you did] + [quantified impact]. Find a real number for every one.
- Cut the dead weight. Delete your objective statement, "references available," any 40-item skill list, and any bullet without a result. Get to one page.
- Rebuild your LinkedIn headline and About. Replace the default title with a keyword-rich headline; write a first-person About with one quantified accomplishment. Turn on Open to Work (recruiters-only) if you're looking.
- Line up one referral. Pick one real target role, find one person in your network at that company, and send the specific job link + your resume + two sentences on your fit. One warm path beats fifty cold applies.
Template for the referral ask: "Hi [name] — I'm applying for [role] at [company] ([link]) and think it's a strong fit given [one specific reason]. Would you be comfortable referring me? I've attached my resume and can send anything that makes it easy. No worries at all if not."
Summary
- You're writing for two skimmers: an ATS that parses text against the job description, and a recruiter who spends about six seconds looking for plausible fit. A clean, keyword-honest, impact-driven resume satisfies both.
- The bullet formula is everything: strong action verb + what you did + quantified impact. The metric is the difference between a claim and evidence — the same "show the result" discipline as STAR's Results step.
- Format to survive parsing: one page (for most), reverse-chronological, single column, standard headings, real text — and cut objectives, "references available," bloated skill lists, and anything without a result.
- Tailor, don't blast: retune bullet order and keywords to each job in ten minutes; match the JD's real terms without stuffing; never fabricate a number.
- LinkedIn makes you findable: a keyword-rich headline, a real About section, filled-in skills, and Open to Work put you in the recruiter searches you never see. Back it with a GitHub that proves you can build.
- Referrals beat cold applies by a wide margin — for every serious application, spend five minutes finding a warm path in.
- Emphasis shifts with seniority: new grads lead with projects, mid-levels with impact and scope, seniors with leadership and outcomes.
You've now got the interview — the resume passed the scan, the referral opened the door, the recruiter said yes. Next, we turn to what happens once you're in the room and the conversation turns to money: how to talk about compensation without leaving value, or dignity, on the table.
Editorial reflection There's a quiet honesty at the center of a good resume. The discipline of quantifying your impact isn't just a trick to beat the six-second scan — it's a habit of knowing, precisely and truthfully, what difference your work actually made. Engineers who can't answer "what changed because you were here?" tend to drift through careers doing real work that no one, including themselves, can see. Learn to see it. The resume is where you practice telling the truth about your own value — clearly, specifically, and without either inflation or false modesty. That skill outlasts any single job search.
Q&A · 0
Enrol to ask questions and join the discussion.
No questions yet — be the first to ask.