Skip to content
Path to Engineer

Free · No account needed

The resume format that survives the parser

Most advice about fresher resumes is about taste — fonts, colours, whether to use a sidebar. Almost none of it is about the thing that decides the outcome: whether the software reading your PDF extracted your name, your skills and your dates into the right fields, or turned them into noise.

This page is the format rules, the way to write a bullet that earns its line, the Indian conventions worth dropping, and a plain-text template you can copy.

Start here

Your resume is read three times

Each reader is looking for something different, and each one can end the process. Writing for only the third — the one that appreciates good work — is why strong candidates get no reply.

  1. 1. The parser

    Software that turns your PDF into database fields. It does not read; it pattern-matches on layout and headings. This is the gate that fails silently — nobody tells you your work history landed in the wrong column.

  2. 2. The recruiter

    A person with a stack of resumes and a role to fill, skimming for the handful of things the job description asked for. They are not evaluating you yet — they are deciding whether you are plausibly in scope.

  3. 3. The engineer

    Someone who will interview you and is looking for one thing to ask about. This is the only reader who wants depth, and they only ever see resumes that cleared the first two.

Gate one

Eight rules that keep the parser working

These are not style preferences. Each one describes a way of laying out a page that makes an applicant tracking system extract the wrong text, or none.

  • One column, top to bottom

    Two-column layouts are the most common parsing failure. The parser reads left to right across the full width of the page, so a sidebar of skills gets spliced into the middle of your job history one line at a time.

  • No tables, text boxes or shapes

    Text inside a table cell or a drawn box often extracts out of order, and sometimes not at all. That includes the invisible tables most design templates use to line things up.

  • Nothing in the header or footer

    Many parsers skip the header and footer regions entirely. Put your phone number there and you have submitted a resume with no way to contact you.

  • Standard section headings

    Write Education, Experience, Projects, Skills. A parser looks for those exact words to decide where each section begins. “Where I’ve Been” and “My Toolkit” are invisible to it, and everything underneath them gets filed under whatever came before.

  • Real text in the PDF, not a picture of text

    Export from a word processor or a text-based tool. A PDF flattened to an image by a design tool, or a scan of a printout, contains no selectable text at all. Open your PDF and try to select a line — if you cannot, neither can the parser.

  • No skill rating bars

    Python at four filled squares out of five extracts as the word Python followed by nothing. It also claims a precision you cannot defend: eighty per cent of what? Name the skill and let the projects underneath it carry the evidence.

  • No photo, logo or icon

    Images carry no text. Icons used as contact labels leave the parser holding a phone number with no field name attached to it.

  • One date format, everywhere

    Pick Aug 2022 – May 2026 and never deviate. Mixing 08/2022, August 2022 and 2022-08 in one document breaks the date extraction that builds your experience timeline — which is one of the fields recruiters actually filter on.

Test it in ten seconds. Open your PDF, select all, copy, and paste into a plain text editor. What you see is approximately what the parser sees. If the order is scrambled or whole sections are missing, that is your problem — not the wording.

Gate two and three

Every bullet needs a consequence

The most common failure on a fresher resume is not a missing skill. It is ten lines that describe what you were near rather than what changed because you were there. The shape that fixes it: what you built, how, and the number that moved.

Worked on a web application using React and Node.js

Built a React and Node.js dashboard that replaced a manual weekly report, cutting it from 3 hours to under 20 minutes

The stack is identical in both. Only the second says what changed because you were there.

Responsible for database management and optimisation

Redesigned the order schema and added a composite index, taking the slowest checkout query from 4.2s to 180ms

“Responsible for” describes a job title. Name the specific thing you changed and what it did.

Participated in a national level hackathon

Placed 3rd of 84 teams at Smart India Hackathon, shipping an offline-first attendance app in 36 hours

Participation is not an achievement. The rank, the field size and what you built are.

Made a machine learning model for predicting house prices

Trained a gradient-boosting model on 21k Bengaluru listings, improving RMSE 18% over a linear baseline

Everyone has the house-price project. The dataset, the baseline you beat and the margin are what separate yours from the tutorial it came from.

If you genuinely have no number, use scale instead: rows processed, users, requests served, dataset size, time saved. And never invent one — every figure on the page is something an interviewer is entitled to ask you to explain.

Local conventions

What to cut from an Indian resume

Most templates circulating in Indian colleges descend from a school biodata format. They cost you a third of a page before you have said anything about your work.

  • Cut

    Passport photograph

    Standard on Indian templates, unhelpful everywhere. It carries no text for a parser, eats space you need, and adds a bias risk that many companies now screen resumes specifically to avoid.

  • Cut

    Date of birth, age, gender, marital status

    None of it is used to evaluate you for an engineering role. Space far better spent on a project bullet.

  • Cut

    Father’s or husband’s name

    A form-filling convention that migrated onto resumes. It tells a hiring manager nothing.

  • Cut

    Full postal address

    City and state is what matters — it answers the relocation question. Your house number is personal data on a document you are about to email to strangers.

  • Cut

    “Declaration: I hereby declare that the above information is true”

    It has no legal weight, and it signals that the resume came off a school template rather than being written for the job.

  • Cut

    “Objective: to work in a challenging environment where I can utilise my skills”

    The most common opening line on Indian fresher resumes, and it says nothing. If you want something at the top, write two lines naming what you build and in what.

  • Depends

    10th and 12th percentages

    Keep them as one compact line for campus placements and for companies that publish eligibility cutoffs — many still filter on them, and a missing number reads as a low one. Cut them when applying off-campus with a degree already in hand.

  • Keep

    CGPA

    Include it with the scale (8.4/10, not 8.4). If it is low, leave it off rather than converting it to a percentage that looks better — that gets checked at offer stage.

  • Keep

    GitHub and LinkedIn links

    For a fresher these are the only independent evidence on the page. Write them as full readable URLs, not as the word “GitHub” hyperlinked — a parser that strips formatting keeps the text and throws the link away.

Copy this

The template

One column, standard headings, no tables. Paste it into Google Docs or Word, replace everything in brackets, and export to PDF. Projects sit above experience deliberately — as a fresher, your projects are the strongest evidence you have.

Plain text · ATS safe
[FULL NAME]
[City, State] | [+91 XXXXX XXXXX] | [you@email.com]
github.com/[username] | linkedin.com/in/[username]

EDUCATION
[Degree, Branch] - [College, University]
[Aug 20XX] - [May 20XX] | CGPA: [X.X]/10
Relevant coursework: [Data Structures, Operating Systems, DBMS, Networks]

TECHNICAL SKILLS
Languages: [Python, Java, SQL, JavaScript]
Frameworks: [Django, Spring Boot, React]
Databases: [PostgreSQL, MongoDB, Redis]
Tools: [Git, Docker, Linux, AWS]

PROJECTS
[Project Name] - [Stack, comma separated]
github.com/[username]/[repo]
- [Built X that did Y, with the measurable result Z]
- [One hard technical decision, and why you made it]
- [Scale: load, dataset size, or users - whatever is true]

[Project Name] - [Stack, comma separated]
github.com/[username]/[repo]
- [Built X that did Y, with the measurable result Z]
- [One hard technical decision, and why you made it]

EXPERIENCE
[Role] - [Company]
[Jun 20XX] - [Aug 20XX]
- [Shipped X, which moved Y by Z]
- [Something specific you owned end to end]

ACHIEVEMENTS
- [Rank, out of how many, in what]
- [Certification or open-source contribution, with a link]

Keep the section order. If you have real internship experience, move that block above projects — the rule is that the strongest evidence goes first, and for most freshers that is a project with a repository behind it.

Before you send

The ten-point check

  • One page. No exceptions at zero years of experience.
  • Saved as PDF, and you can select the text inside it.
  • Filename is Firstname-Lastname-Resume.pdf, not resume_final_v3.pdf.
  • Every bullet carries a number, or a good reason it does not need one.
  • No bullet starts with “Worked on”, “Responsible for” or “Involved in”.
  • Every skill listed is one you would take a question on right now.
  • The exact words from the job description appear wherever they are true.
  • Every link is written out in full and actually resolves.
  • No photo, no declaration, no objective paragraph.
  • Read it aloud once. Anything you cannot explain in an interview comes off.