Prerequisite: This post assumes you've built real things — or are building them now. If you're mid-curriculum, read it as a spec: a description of what your resume should be able to say by the time you finish. New to the career track? Start at the Get Hired page.

Picture a hiring manager on a Tuesday afternoon. She has a full calendar, a requisition for a forward-deployed engineer that's been open for six weeks, and a folder of forty applications. Nobody has read your resume yet. That is the normal state of a resume: unread, in a queue, competing for a glance.

She opens your file. She is not reading it. She is triage-scanning it, and she has one question: is there enough here to justify a 45-minute conversation? That question — not your career history, not your potential — is the entire job your resume has to do.

This post is a teardown of five resumes that fail that question in the five most common ways, and the rewrites that pass it. Every candidate below is an illustrative composite built from patterns seen across real applications — not a real person, not a real company.

Your resume is not a biography. It is a bid for a 45-minute conversation — and every line either buys that conversation with evidence, or spends the reviewer's attention on nothing.

The 30-second scan is the real interview

Before anyone decides whether you're a good engineer, they decide whether you're worth talking to. That decision happens in a scan that runs roughly like this — headline first, evidence second, outcomes third:

flowchart TD A["Folder of applications, minutes per file"] --> B["Headline test: what does this person do?"] B -->|"Unclear in one glance"| P["Pass pile"] B -->|"Clear"| C["Evidence test: can I verify any claim?"] C -->|"No verifiable claims"| P C -->|"Yes: artifacts, numbers, scope"| D["Outcome test: did it matter to someone?"] D -->|"Duties, not outcomes"| M["Maybe pile"] D -->|"Outcomes with scale"| I["Interview: probe the evidence"]

Notice the order. Headline is the first gate: a reviewer who can't tell what you do in one glance has no reason to keep reading. This is why "Software Engineer" as a headline, with no target, is weak — the reviewer is hiring for a forward-deployed engineer, someone who ships in customer environments, and your headline should say so plainly.

Next comes evidence: can the reviewer verify anything? A claim like "experienced with APIs" can't be verified from the page; "shipped a FastAPI service with auth and rate limits used by four operator teams" can — at least enough to ask sharp questions about it in an interview.

Finally outcomes: did the work matter to someone besides you? This is where most resumes die. Duties describe the seat you sat in. Outcomes describe what changed because you sat there. A reviewer interviewing for an FDE role is buying field judgment — evidence that you've operated under real constraints with real users. Nothing on this page should be read as a guarantee about any specific employer's process; it's the shape of the problem your resume has to solve.

The minimum concept: a resume is an evidence bid

Here's the smallest idea that fixes most resumes: stop writing a biography and start writing an evidence bid.

A biography answers "what happened to you?" It lists jobs, courses, and tools in chronological order. An evidence bid answers "why should I spend 45 minutes talking to you, and what would we talk about?" Every line on the page is a bid for a specific conversation:

  • "Ask me how I cut that latency" — a bid for a systems conversation.
  • "Ask me how I measured that eval" — a bid for an AI-production conversation.
  • "Ask me what broke during go-live" — a bid for a field-operations conversation.

If a line doesn't bid for a conversation, it's filler, and filler is expensive: it spends the reviewer's attention without buying anything. This is the same discipline the curriculum teaches everywhere — in Scoping & Success Metrics you learned to refuse work that has no measurable definition of done. Apply that same refusal to your own bullets: if a bullet has no measurable claim, refuse to ship it.

The principle

Your resume isn't a biography; it's a bid. Every line should buy a specific 45-minute conversation with evidence a reviewer can probe — not summarize a chapter of your life.

Myth: a longer resume with more skills looks more experienced.
Reality: every unverifiable claim spends the reviewer's trust without buying anything. Two pages of verifiable evidence beat four pages of adjectives. The reviewer for an FDE role is screening for judgment under constraints — adjectives are the opposite of evidence.

The top third: headline and summary

The scan's first gate is the headline — the one or two lines at the very top. Most candidates waste them on either their current job title (information the experience section already gives) or an "Objective" paragraph written for no one in particular.

Before

Jordan Smith (composite)
Software Engineer

OBJECTIVE
Results-driven software engineer seeking challenging opportunities to
leverage strong technical skills and grow with a dynamic organization.

Diagnosis

  • The headline restates the obvious. "Software Engineer" adds nothing the work history won't show — and it misses the target. This candidate wants forward-deployed roles; the headline should say so.
  • The objective is written for everyone, so it persuades no one. "Results-driven," "challenging opportunities," "dynamic organization" — every phrase could appear on any resume in the pile. It spends the most valuable screen space on the page saying nothing.

After

Jordan Smith (composite)
Forward-Deployed Engineer - ships and operates customer-facing systems

SUMMARY
Engineer with 3 years building and operating production Python services.
Shipped a versioned REST API with auth and rate limits, an evaluated RAG
copilot with human-approval gates, and a monitored canary deployment with
a tested restore drill. Looking for field roles where I own the system
after it ships.

Why it works

  • It names the target. "Forward-Deployed Engineer" tells the reviewer, in one glance, which requisition this application belongs to — and the tagline defines the role the way the field defines it: shipping and operating.
  • The summary is an index of evidence. Every clause points at a bullet below (the API, the copilot, the go-live). A reviewer who reads only these four lines already has three interview topics — the scan's evidence test, passed before the first bullet.
  • It states what the candidate wants, honestly. "Where I own the system after it ships" filters for the right roles and out of the wrong ones. A resume that tries to appeal to every opening appeals to none.

Formatting that survives the scan

  • Reverse-chronological, one or two pages. The reviewer reads top-down; don't make them hunt for your latest work.
  • Plain text over pretty. No photos, no skill bars, no graphics-as-text, no tables for layout. If a system has to parse your resume before a human sees it, fancy formatting is where content goes to die.
  • PDF, with your name in the filename. "Jordan-Smith-Resume.pdf," not "resume_final_v7.pdf."
  • Contact info that works: email, phone, location (city is enough), GitHub/portfolio, LinkedIn if it's current. Every link should open to something a reviewer can evaluate in 30 seconds.

How to read this teardown

Five patterns follow. Each one shows:

  1. Before — the weak block, verbatim, exactly as a composite candidate wrote it.
  2. Diagnosis — why it fails the 30-second scan.
  3. After — the rewritten block.
  4. Why it works — what the rewrite buys.

The numbers in the rewrites are illustrative — they're there to show how to quantify, not to hand you figures to copy. Use your own real numbers, and only numbers you could defend for five minutes in an interview. (A standing rule from the curriculum applies here too: never claim a result you can't actually show the work behind.)

Pattern 1: the "responsible for" duty-list

This is the most common failure, and it usually comes from genuinely competent engineers. They did real work — then described the seat instead of the work.

Before

EXPERIENCE
Software Engineer, Mid-size SaaS company (composite)
- Responsible for backend development and API maintenance.
- Responsible for database queries and data processing.
- Responsible for writing unit tests and participating in code reviews.
- Responsible for on-call rotation and incident response.

Diagnosis

  • Duties, not outcomes. "Responsible for backend development" tells the reviewer which chair you occupied. It says nothing about what changed because you sat in it. Four bullets in, the reviewer knows your job description — which they could have guessed from your title.
  • Nothing verifiable. There is no number, no scale, no artifact. The reviewer cannot form a single interview question from any of these lines except "so... tell me about the backend?"
  • No bid for a conversation. Compare "responsible for on-call rotation" with what a reviewer wants to ask an FDE: what broke, and what did you do about it? The duty-list version bids for nothing.

After

EXPERIENCE
Software Engineer, Mid-size SaaS company (composite)
- Cut p95 checkout latency from 1.9s to 640ms by adding a Redis cache layer
  to the order API; load-tested the change to 3x peak traffic before rollout.
- Raised payments-service test coverage from 54% to 82% (210 new unit tests);
  staging regressions fell from roughly 6/month to about 1/month.
- On-call for a 12-service fleet: wrote 9 runbooks; 11 of 12 owned incidents
  resolved inside the team's 30-minute response SLO.

Why it works

  • Every bullet answers "what changed because of you?" Latency dropped, coverage rose, incidents got resolved faster. The reviewer can see the before and the after in one line.
  • Scale and scope are attached. "3x peak traffic," "12-service fleet," "210 new tests" — the reviewer can calibrate how big the problem was, which is exactly what an FDE interview probes.
  • Each bullet bids for a conversation. "How did you find the 1.9s?" "What did the load test reveal?" "What was the one incident that missed the SLO?" A reviewer reading this has a full interview plan. That is the whole game.

Reuse this everywhere

The curriculum's lesson from Scoping & Success Metrics applies directly: a bullet without a measurable claim is a scope without a success metric. When you catch yourself writing "responsible for," delete the phrase and write what the responsibility produced.

Pattern 2: the naked tech-stack list

The second classic: a Skills section that reads like a keyword salad. It usually comes from a reasonable instinct — "I want to pass the keyword filter" — but it backfires with the human who reads next.

Before

SKILLS
Python, Java, SQL, Docker, Kubernetes, AWS, React, TypeScript,
TensorFlow, Kafka, Redis, LLM, Prompt Engineering, CI/CD, Git

Diagnosis

  • Untestable claims. "Kubernetes" could mean "I once ran minikube" or "I operate a 200-node fleet." The reviewer can't tell, so they assume the weaker reading — or worse, they probe it in the interview and discover the weaker reading, which spends trust.
  • Everything claimed is nothing claimed. Fifteen tools with no depth signal reads as "I have heard of these." A reviewer hiring for field work wants to know what you can operate under pressure, not what you've seen in a tutorial.
  • No connection to the rest of the page. The skills float free of the experience bullets. Nothing anchors them, so nothing verifies them.

After

SKILLS
Python (3 yrs, production services) - shipped FastAPI services with auth,
  pagination, and rate limits; see CityOps API project below
TypeScript (1 yr, internal tooling) - built operator console features
  against the same API
Infrastructure: Docker + Compose (dev/prod parity for multi-container
  apps), AWS (EC2, S3, IAM basics; deployed 2 services end to end)
Data: Postgres (schema design, migrations), Redis (caching, rate limits)

Why it works

  • Depth is explicit. Years, context ("production services" vs "internal tooling"), and what you actually did with each tool. The reviewer can calibrate in seconds.
  • Every skill points at evidence. "See CityOps API project below" turns the skills section from a claim into an index. A reviewer who doubts a skill can jump to the bullet that proves it.
  • The cut list is a feature. Dropping Kubernetes, TensorFlow, and Kafka — tools this composite candidate touched once — strengthens the section. Fewer, deeper claims are more believable than many shallow ones.

The rule of thumb: if a skill can't point at a bullet, cut it. You can always re-add it once you've built the evidence. Until then it's a liability, not an asset.

Pattern 3: the project nobody can evaluate

Personal projects are where junior candidates should shine — but most project descriptions are written so vaguely that a reviewer can't tell a weekend toy from a serious build. If the reviewer can't evaluate the scope, they can't credit it.

Before

PROJECTS
House Price Predictor (composite)
- Built a machine learning project to predict house prices.
- Used Python and scikit-learn for model training.
- Created visualizations of the results.

Diagnosis

  • No scope. How much data? How many features? Trained once in a notebook, or served somewhere? The reviewer can't distinguish this from a two-hour tutorial follow-along.
  • No scale. Nobody used it, nothing depended on it, no latency or reliability story. For an FDE role — where operating the thing is the job — that's fatal.
  • No role clarity. "Built a project" hides whether you did the data work, the modeling, the serving, or all three. Reviewers credit what they can attribute.

After

PROJECTS
House Price Predictor (composite) - github.com/composite-user/house-prices
- Trained gradient-boosted models on 42k listings (28 features); time-split
  validation, MAE $18.4k on the holdout quarter; documented where the model
  degrades (luxury segment, sparse zip codes).
- Served behind FastAPI with request validation and a /health endpoint;
  p95 inference latency 220ms on a single container; request/response
  logging for every prediction.
- Wrote a one-page ops note: retraining trigger (data drift check monthly),
  rollback plan (previous model artifact pinned), known failure modes.

Why it works

  • Scope is quantified. 42k rows, 28 features, a named metric on a named split. The reviewer can now ask good questions: "Why a time split?" "What did the luxury-segment degradation look like?"
  • It was operated, not just trained. Validation, a health endpoint, latency numbers, logging, a retraining trigger, a rollback plan — this is the difference between a notebook and a system. For an FDE reviewer, the ops note is the most impressive line on the page.
  • Failure modes are named. Saying where the model degrades is honest engineering, and honesty is evidence of judgment. A candidate who volunteers weaknesses is one a reviewer trusts with customer systems.

Notice the shape: problem → artifact → measurement → operation. That's the curriculum's lesson DNA in miniature, and it's exactly what the RAG End-to-End post drilled: the serving and the failure modes are part of the deliverable, not afterthoughts.

Pattern 4: the AI-flavored resume

Since 2024, nearly every resume in the pile says some version of "LLM experience." Most of it is vapor — a weekend of prompt tinkering dressed up as production AI work. Reviewers have learned to discount the claim entirely unless the resume names artifacts that only production work produces.

Before

EXPERIENCE
AI Engineer, Startup (composite)
- Experienced with LLMs, prompt engineering, and AI agents.
- Built a chatbot for customer support using GPT.
- Improved response quality through better prompts.

Diagnosis

  • Indistinguishable from tinkering. "Improved response quality through better prompts" could describe an afternoon in a playground. There is no eval, no measurement, no version — nothing that separates a production system from a demo.
  • No artifacts. Production LLM work leaves a paper trail: eval sets, versioned prompts, traces, guardrails, approval gates, audit logs. This resume names none of them, so the reviewer assumes none exist.
  • "Chatbot" is a red flag word now. Not because chatbots are bad, but because the word carries no information about retrieval, grounding, citations, or safety — the things that actually determine whether an AI feature survives contact with customers.

After

EXPERIENCE
AI Engineer, Startup (composite)
- Shipped a support copilot (RAG over 2,400 runbook docs): citation-required
  answers, retrieval tuned against a 180-question eval set; supported-answer
  rate 74% -> 91% across three retrieval iterations.
- Prompts versioned as code (prompt v2.3 in the repo, changelog per release);
  every response traced with retrieval IDs for debugging bad answers.
- Human-approval gate on all write actions; read-only answers served
  directly; full audit log of approvals retained per the customer's
  compliance requirement.

Why it works

  • It names the artifacts of production AI work. An eval set with a measured improvement (74% → 91%), versioned prompts, traced responses, approval gates, audit logs. These are things you only have if you actually shipped — which is precisely why reviewers look for them. The curriculum's Evals & Tracing post is the playbook: "version the system, the eval set, and the measuring stick."
  • The improvement is measured, not asserted. "Improved response quality" became "supported-answer rate 74% → 91% across three retrieval iterations." A reviewer can now ask what changed between iterations — the single best interview question for AI work, and this resume invites it.
  • Safety is designed, not wished for. "Human-approval gate on all write actions" and "audit log retained per the customer's compliance requirement" show the Guardrails, Approvals & Audit mindset: trust as a system property, not a model property. For customer-facing AI, that's the line that moves a resume from "maybe" to "interview."

Don't memorize tools, demonstrate judgment

Reviewers don't hire "GPT experience." They hire people who can say how they knew the system got better and what stops it from going rogue. If your AI bullets can't answer those two questions, rewrite them until they can.

Pattern 5: the field-work gap

This one is specific to career-switchers and curriculum learners — often strong coders whose resume reads like a course catalog. The work is real, but it's framed as input ("I completed...") instead of field work ("I shipped, under constraints, for users"). A hiring manager for a forward-deployed role is buying field judgment. Course completion doesn't evidence it. Shipped artifacts do.

Before

EDUCATION / TRAINING
Self-directed engineering curriculum (composite learner)
- Completed an online course covering Python, APIs, Docker, and LLMs.
- Learned about CI/CD, monitoring, and cloud deployment.
- Capstone project: built a full-stack application.

Diagnosis

  • Input, not evidence. "Completed a course" describes what you consumed. The reviewer wants to know what you produced — and more importantly, what constraints you produced it under.
  • No customer, no constraint, no consequence. "Built a full-stack application" for whom? What happened when it broke? FDE work is defined by the field — messy customer environments, real users, things going wrong at 2am. Nothing here suggests the candidate has met any of that.
  • The strongest material is hidden. This composite learner actually built a five-stage city operations system end to end. The resume says "capstone project" and moves on — burying the only evidence that matters.

After

FIELD WORK
CityOps municipal operations platform - 5-stage build (composite learner)
- Scaffolded the service from a customer problem statement ("dispatch is
  drowning in unstructured requests"); defined the scope and refused
  out-of-scope features in writing. (Milestone 1)
- Built the intake pipeline: Pydantic validation on every inbound record,
  quarantine policy for rejects, pytest suite covering malformed input.
  (Milestone 2)
- Shipped a versioned REST API (FastAPI) with auth, pagination, rate limits,
  and retries; operator console for the dispatch team. (Milestone 3)
- Built the Ask CityOps copilot: RAG over the runbook corpus, 180-question
  eval set, citation-required answers, human-approval gate on write
  actions. (Milestone 4)
- Took CityOps live: Docker Compose deployment, health checks and
  monitoring, canary release, backup/restore drill with a timed recovery.
  (Milestone 5)

Why it works

  • It reads like field work, not coursework. Each bullet names a customer-facing artifact, a constraint, or an operational practice — validation, quarantine, auth, evals, approval gates, canaries, recovery drills. That's the vocabulary of someone who has operated a system, because it's the vocabulary of operating one.
  • The milestones are linked, not listed. Each stage builds on the last — scaffold → pipeline → API → copilot → go-live — telling the story of a system that grew under its operator's hands. A reviewer can follow the arc and probe any stage: "What did the quarantine policy reject?" "What broke during the canary?"
  • It borrows the curriculum's credibility honestly. These bullets describe real artifacts the learner built — the scaffold, the intake pipeline, the CityOps API, the Ask CityOps pilot, and the go-live. No placement claims, no inflated titles — just "here's what I shipped and how I know it worked." That honesty is the bid.

If you're working through this curriculum now, treat those five milestones as your field-work section in waiting. Every milestone post ends with artifacts you can describe; your job is to describe them like an operator, not a student.

Productionize: the one-bullet spec

Teardowns are useful; a reusable method is better. Every strong bullet in this post follows the same four-part spec. Memorize it, and you can generate good bullets on demand instead of hoping they happen:

THE ONE-BULLET SPEC
[Outcome: what changed] + [Scale: how big / for whom]
    + [Role: what YOU personally did] + [Constraint: what made it hard]

Weak:  "Worked on the payments API."
Spec:  Outcome    - cut p95 latency from 1.9s to 640ms
       Scale      - order API at 3x peak traffic
       Role       - designed and load-tested the Redis cache layer myself
       Constraint - zero-downtime rollout during the holiday freeze
Strong: "Cut p95 checkout latency from 1.9s to 640ms with a Redis cache
        layer I designed; load-tested to 3x peak traffic and rolled out
        with zero downtime during the holiday freeze."

Two notes on using the spec honestly. First, role clarity is non-negotiable: "we" bullets invite the interview question "what did you do?" — answer it on the page instead. Second, only claim numbers you can defend for five minutes. The interview will probe every figure; an invented or borrowed number turns from an asset into a credibility problem the moment you're asked "how did you measure that?"

The 10-minute reviewer test

Print your resume, set a timer, and read it as the hiring manager from the opening scene:

  • 0:00–0:10 — headline test. Can a stranger tell what you do and what you're targeting? If not, rewrite the top third.
  • 0:10–0:20 — evidence test. Circle every verifiable claim (numbers, artifacts, named systems). Fewer than one per bullet is a rewrite signal.
  • 0:20–0:30 — outcome test. For each bullet, ask "what changed because of this person?" If the answer is "they did their job," it's a duty — apply the one-bullet spec.

The five patterns at a glance

PatternSymptomFix
"Responsible for" duty-listsBullets describe the seat, not the work; no numbersOutcome-first bullets: what changed, with scale attached
Naked tech-stack lists15 tools, zero depth signal, nothing verifiableEvidence-anchored skills: depth, context, and a pointer to the proving bullet
Unevaluable projectsNo scope, no scale, no role clarityQuantified scope: data size, metrics, serving story, failure modes
Vague "LLM experience"Indistinguishable from prompt tinkeringProduction artifacts: eval sets, versioned prompts, traces, approval gates
The field-work gapCourse completion framed as input, not shipped workMilestone-style bullets: artifacts, constraints, operational practices

What never goes on an FDE resume

  • Anything secret. No API keys, no internal URLs, no customer data, no architecture details your employer or client wouldn't want public. If you're unsure, it's secret. The Secrets & Security Basics instincts apply to your resume exactly as they apply to your repos.
  • Numbers you can't defend. Every figure is an invitation to a five-minute probe. "Roughly 6/month" that you actually tracked beats "10x improvement" that you can't explain.
  • Other people's outcomes. Team wins are fine — label your part precisely. "Led the migration" when you attended the meetings is the fastest way to fail an interview.
  • Placement claims and salary figures. No "top 1%," no invented statistics about the market, no salary history. Evidence about your work is the entire document.
  • Real customer or employer names you don't have permission to use. "A mid-size SaaS company" or "a municipal operations client" carries the same weight without the risk. Composites and anonymized descriptions are standard practice — this post's examples are composites for exactly that reason.

Field check

  1. A bullet reads: "Improved API performance." Run it through the one-bullet spec — what's missing, and what would you ask the candidate to find out?
  2. Why is "Python, Java, SQL, Docker, Kubernetes, AWS, React" a weak Skills section, even if the candidate has touched all seven?
  3. Your copilot bullet says "Built an AI chatbot for support." Name three production artifacts that would make a reviewer believe it.
  4. What's the difference between a duty and an outcome? Give one example pair from your own work.
  5. You've finished all five CityOps milestones. Why is "Completed online course covering Python, APIs, Docker, and LLMs" the wrong top line — and what replaces it?
Answer 1

It's missing all four spec parts: no outcome (improved how much, from what baseline?), no scale (which API, what traffic?), no role (what did you do?), no constraint. To fix it you'd ask: what metric moved, what the before/after numbers were, what change caused it, and what made the change hard (e.g. zero-downtime, legacy constraints).

Answer 2

Because it's a list of untestable claims with no depth signal — the reviewer can't tell "ran once in a tutorial" from "operates in production," and floating free of any experience bullet, nothing verifies them. The fix is fewer tools with explicit depth and context, each pointing at a bullet that proves it. If a skill can't point at a bullet, cut it.

Answer 3

Any three of: an eval set with measured improvement across iterations, versioned prompts in the repo, traced responses with retrieval IDs, citation-required answers, a human-approval gate on write actions, an audit log. These are artifacts that only exist if the system was actually shipped and operated.

Answer 4

A duty describes the seat ("responsible for on-call rotation"); an outcome describes what changed because you sat in it ("11 of 12 owned incidents resolved inside the 30-minute SLO; wrote 9 runbooks"). Duties answer "what was your job?"; outcomes answer "why should I spend 45 minutes talking to you?"

Answer 5

Because it frames five stages of shipped, operated work as input — what you consumed — instead of field work — what you produced under constraints. Replace it with milestone-style bullets: the scaffold scoped from a customer problem, the validated intake pipeline, the versioned API, the evaluated copilot with approval gates, the monitored go-live with a canary and a restore drill. Same work, operator's framing.

The resume doesn't get you the job. It gets you the conversation where you get the job. Write every line as a bid for that conversation — evidence a reviewer can probe, outcomes a customer felt, numbers you can defend — and the 30-second scan starts working for you instead of against you.

Now run the 10-minute reviewer test on your own resume, rewrite your three weakest bullets with the one-bullet spec, and keep the Get Hired page bookmarked for the rest of this stage.