Skip to content

Software Engineer Resume Example

Software engineer resumes at Indian product and service companies are screened for three things before anything else: tech stack match, scale of systems owned, and demonstrated growth in scope. Recruiters at Flipkart, Swiggy, or FAANG India read dozens of resumes daily: yours must surface your language, frameworks, and the concrete scale (TPS, users, uptime) within the first ten seconds. ATS filters typically keyword-match on language names (Java, Go, Python), cloud platforms, and architectural patterns (microservices, REST, gRPC). Engineers who show ownership ('I led,' 'I reduced latency by X%') stand out over those who merely list tools.

Preview it in any of our ATS-safe templates: single-column and built to pass the scan. Switch below.

Software Engineer resume example

How to write a software engineer resume

  1. Put the primary language first and mean it

    Parsers weight the leading entries of a skills list most heavily, and so do humans. Lead with the language you would be comfortable being interviewed in, not the longest list you can assemble. A skills block with fourteen languages reads as familiarity with none of them.

  2. End every bullet in a number

    Request throughput, p95 and p99 latency, error rate, uptime, data volume, build time and infrastructure cost are all countable. "Improved performance" carries no screening value because every candidate writes it. "Cut p99 latency from 840ms to 210ms on a 12k rps endpoint" cannot be written by someone who did not do it.

  3. State the scale of what you owned, not just what you built

    A feature serving 200 internal users and one serving 8 million requests a day are different engineering problems. Give the request rate, user count, data size or transaction volume for the systems you worked on. Scale is the fastest proxy a reader has for the constraints you have operated under.

  4. Show architectural decisions, not only implementation

    Seniority reads through decisions and trade-offs. A migration from a monolith to event-driven services, a choice between a queue and a stream, or a decision to denormalise for read performance signals judgement in a way that a framework list cannot. Name the decision and the reason, briefly.

  5. Link a GitHub profile with pinned repositories that have READMEs

    The link is only worth including if what it leads to holds up. Pin three repositories, ensure each has a README that explains what the thing does and why, and remove abandoned tutorial forks from view. An empty or messy profile behind a prominent link is worse than no link.

  6. Keep the stack in plain text, never in a graphic

    Skill-rating bars, radar charts and logo grids do not parse. The words "Java", "Kafka" and "PostgreSQL" have to exist as selectable text or a keyword match will not find them. This is the single most common reason a technically strong resume scores badly.

Software Engineer resume example: full text

The same example as plain text, so you can read it without the preview and copy any line straight into the editor.

Arjun Mehta

Software Engineer
Bengaluru, India · arjun.mehta@email.com · +91 98450 67312 · github.com/arjunmehta-dev · linkedin.com/in/arjunmehta-swe

Summary

Backend-focused Software Engineer with 4+ years building high-throughput distributed systems in Java and Go. Reduced API p99 latency by 42% at Flipkart, scaled a payment service to 15,000 TPS, and mentored 3 junior engineers. B.Tech CS from NIT Trichy.

Experience

Software Engineer II
Flipkart, Bengaluru, India · Aug 2022 – Present
  • Re-architected the order-management microservice from a monolith to event-driven design using Kafka, cutting p99 API latency from 480 ms to 280 ms (42% reduction) and supporting 15,000 TPS at sale peaks.
  • Introduced distributed tracing with Jaeger across 12 microservices; MTTR dropped from 38 min to 11 min by pinpointing bottlenecks within seconds.
  • Built an internal rate-limiting library (Guava + Redis sliding-window) adopted by 6 teams, preventing 99.97% of burst traffic incidents during Big Billion Days.
  • Led migration of 3 services from Java 11 to Java 17, reducing GC pause time 35% and cutting AWS EC2 compute costs ₹18 L/year.
Software Engineer
Tata Consultancy Services, Chennai, India · Jul 2020 – Jul 2022
  • Developed REST APIs for a retail banking portal serving 2.4 million customers; achieved 99.95% uptime across 18 months of production deployment.
  • Optimised slow PostgreSQL queries (N+1 patterns) using JPA batch fetching and composite indexes, reducing average dashboard load from 4.2 s to 0.9 s.
  • Wrote unit and integration tests raising module coverage from 34% to 78%; zero critical regressions shipped to production in the final 10 months.

Education

B.Tech, Computer Science & Engineering
National Institute of Technology, Tiruchirappalli · 2016 – 2020
Specialisation: Distributed Systems; final-year project on consistent hashing · CGPA 8.4 / 10

Skills

Java · Go · Spring Boot · Kafka · Redis · PostgreSQL · Docker / Kubernetes · AWS (EC2, S3, RDS) · Microservices Architecture · System Design

Open Source

  • Contributed rate-limiter module to Netflix/Hystrix-go (120+ GitHub stars on PR)
  • Maintainer of arjunmehta-dev/k8s-health-probe, 340+ downloads/month on pkg.go.dev

Key software engineer skills recruiters screen for

  • Primary programming language (Java / Go / Python)
  • Backend frameworks (Spring Boot, FastAPI, Gin)
  • Distributed systems & messaging (Kafka, RabbitMQ)
  • Databases (PostgreSQL, MySQL, MongoDB, Redis)
  • Cloud platforms (AWS, GCP, Azure)
  • Containerisation & orchestration (Docker, Kubernetes)
  • System design & microservices
  • CI/CD pipelines (Jenkins, GitHub Actions)

Software Engineer resume tips

  • Quantify system scale in every bullet: TPS, latency percentiles (p99, p95), user count, or uptime SLA. Vague phrases like 'improved performance' don't pass a recruiter's 10-second scan.
  • List your primary language first in the skills section; ATS parsers weight the first skill heavily when matching job descriptions.
  • Call out architecture decisions you drove (e.g. migrated monolith to event-driven), not just features you coded. Hiring managers want engineers who think at the system level.
  • Include a GitHub link and make sure the pinned repos have READMEs: interviewers routinely check before the call.
  • Tailor experience entries to the job level: for SSE/SDE-2 roles, emphasise cross-team impact; for SDE-1 roles, emphasise individual feature delivery and test coverage.

Software Engineer resume keywords an ATS looks for

Keyword matching is literal: a parser looks for these strings, not for synonyms. Use the ones that are genuinely true of your experience, spelled the way the job posting spells them.

  • Java
  • Python
  • Go
  • Spring Boot
  • Microservices
  • REST API
  • Kafka
  • Redis
  • PostgreSQL
  • Docker
  • Kubernetes
  • AWS
  • CI/CD
  • System Design
  • Distributed Systems
  • Unit Testing
  • Git
  • Agile

Common mistakes on a software engineer resume

  • Rating skills out of five with progress bars. They do not parse, they are unverifiable, and self-assessed proficiency is not information a reader can use.
  • Listing every technology ever touched. A twenty-item stack invites an interviewer to pick the one you know least.
  • Describing team achievements as personal ones. "We migrated" and "I migrated" are different claims and the interview will find the seam.
  • Leaving academic projects on the resume five years into a career. They displace the recent work a reader actually cares about.

How a software engineer resume changes with experience

Fresher
One page. Projects carry the document: stack, scale, and what was genuinely difficult. Internships listed as experience. Coursework only if directly relevant.
2–5 years
Professional work displaces projects entirely. Scale numbers and ownership become the spine. Still one page.
Senior / staff
Two pages. Architectural decisions, cross-team influence, mentoring and incident ownership lead. Early roles compress to a line each.

Software Engineer resume FAQ

What should a software engineer resume include?

A software engineer resume is screened on three signals before anything else: tech-stack match, the scale of the systems owned, and demonstrated growth in scope. List the primary programming language first in the skills section, because parsers weight the leading entries most heavily when matching a job description. Every experience bullet should end in a number (request throughput, latency percentiles such as p99, user count, uptime, or cost reduction) since "improved performance" carries no screening value. State the architectural decisions driven, not only the features coded: a migration from a monolith to an event-driven design signals seniority in a way that a framework list does not. Include a GitHub link with READMEs on the pinned repositories. Keep every technology name as plain text rather than inside images or skill-rating graphics, since those do not parse.

How long should a software engineer resume be?

One page up to roughly five years of experience, two pages beyond that. The constraint is not a rule so much as a consequence of how the document is read: a hiring manager scanning a stack of applications gives the first page most of their attention, so anything that must be seen belongs there. Engineers with long careers should compress early roles to a single line each (title, company, dates) and spend the space on the last two positions. Academic projects and coursework should disappear entirely once there is professional experience to replace them.

Should a software engineer resume include projects?

Yes for freshers and career changers, selectively for everyone else. With little or no professional experience, projects are the only evidence available, and they should be written like work: what the system does, the stack, the scale it handles, and what was hard about it. Two substantial projects beat six tutorial clones. Once there are three or more years of professional experience, projects earn their place only if they show something the day job does not: an open-source contribution that was merged, a tool other people actually use, or work in a language you want to move into. A published package with real download numbers is worth more than a personal site.