Software Engineer Resume: Sample, Format and Tips for India (2026)
Whether you are a final-year student chasing a campus offer or a backend engineer with four years at a product company, a software engineer resume has one job: convince a reader in under a minute that you can ship. This guide covers format by experience level, projects and tech stack, the service-versus-product difference nobody explains, a complete sample, and ATS keywords by stack.
Fresher vs 3–5 years vs senior: what changes
What a reader checks first shifts from "can this person code at all" to "what has this person owned" to "can this person be trusted with a system and a team". Your section order should follow that shift.
| Element | Fresher (0–1 yr) | 3–5 years | Senior (7+ yrs) |
|---|---|---|---|
| Section order | Header → Summary → Skills → Projects → Internships → Education → Achievements | Header → Summary → Skills → Experience → Projects (optional) → Education → Certifications | Header → Summary → Experience → Selected systems / leadership → Skills → Education |
| Length | One page, no exceptions | One page | Up to two pages |
| Summary | 2 lines: stack, best project, role wanted | 3 lines: domain, scale, one headline result | 3–4 lines: systems owned, team size, business impact |
| What carries the resume | Projects with a live link and a GitHub repo | Quantified experience bullets with scale | Architecture decisions, hiring, cross-team outcomes |
| Education placement | Above projects if from a well-known college or CGPA above 8; otherwise below | Near the bottom, one line | Bottom, one line, no CGPA |
| Coding-platform links | Yes, if the profile is active | Optional | Usually skip |
If you are still in college, read this alongside our fresher resume format and the campus placement checklist. Mass recruiters screen with an ATS before a human opens the file, so for a fresher the skills block and project titles matter more than any summary sentence.
The projects section: how freshers prove they can code
A fresher's projects section does the work that experience does for everyone else. Placement cells at Tier-2 and Tier-3 colleges still push the same three tutorial projects (library management, hospital management, a to-do app), and recruiters have seen each thousands of times. You do not need an original idea; you need evidence that you built something end to end and can explain the decisions.
- Name and one-line purpose. "Splitwise-style expense tracker for hostel rooms" tells a reader more than "Expense Management System".
- Stack in brackets. (React, Node.js, PostgreSQL, deployed on Render). This is where your ATS keywords live for a fresher.
- Two or three bullets on what you did, not what the app does. "Implemented JWT auth with refresh tokens" beats "Users can log in securely".
- One measurable detail. Users if it is live, test coverage, response time, dataset size, or a hackathon result.
- A live link and a repo link. A deployed URL, even on a free tier, is the strongest signal a fresher can add.
Pick three projects at most: your final-year project (rewritten to sound like engineering, not a viva), one internship deliverable, and one thing you built because you wanted to. Career-switchers from testing, support or a non-CS degree should keep a projects section even with a few years of experience.
How to list your tech stack (and where to put GitHub and LeetCode)
The skills block is the most-scanned and most-botched part of a developer resume. Two rules: group by category, and list only what you can be interviewed on this week.
| Do this | Not this |
|---|---|
| Languages: Java, Go, SQL Backend: Spring Boot, gRPC, REST Data: PostgreSQL, Redis, Kafka Cloud/DevOps: AWS (EKS, RDS, SQS), Docker, Terraform, GitHub Actions | Java, C, C++, Python, JavaScript, HTML, CSS, PHP, MATLAB, R, Kotlin, Swift, MS Office, Communication, Teamwork, Leadership |
| Order inside each group by how strong you are and how often the job description mentions it | Alphabetical order, or the order you learnt them in college |
| Skip proficiency labels, or use only two levels (e.g. "working knowledge" in brackets for one or two items) | Star ratings, percentage bars, "Expert" next to a language you used once |
| Mention versions only where they matter (Java 17+, Python 3, React 18 hooks) | "Java 8" as your headline in 2026 |
Mirror the job description's spelling ("Node.js", not "NodeJS"); a recruiter doing a literal search on Naukri will not forgive the difference. Our guide to ATS-friendly resumes covers the formatting traps.
GitHub, LeetCode and portfolio links
Put links in the header as plain-text URLs (github.com/yourname), and open each one in an incognito window before you add it.
- GitHub: pin your best four to six repositories, each with a README and a screenshot. An account full of forked tutorials and no original work hurts more than no link.
- LeetCode / Codeforces / CodeChef: link it if you are under three years of experience and the profile is active; product companies with DSA rounds notice a strong rating, service companies rarely look. Drop it after five years unless the role tests algorithms.
- Portfolio site: useful for frontend and full-stack, unnecessary for backend, data or infra. It must load fast on a phone.
- LinkedIn: always, with a custom URL. Recruiters cross-check dates.
Service company vs product company: two different resumes
Two engineers with the same skills need different resumes here, because the readers are looking for different things.
| Service company (TCS, Infosys, Wipro, HCL, Accenture, Capgemini and similar) | Product company (startups, SaaS, MNC product teams) | |
|---|---|---|
| Who screens first | ATS keyword match, then a recruiter matching skills to an open requisition | Often the hiring manager or a senior engineer reading the PDF directly |
| What they reward | Breadth across technologies, domain exposure (banking, retail, telecom), certifications, process maturity (Agile, ITIL), client-facing experience | Depth in one stack, ownership of a system, scale numbers, design decisions, open-source or side projects |
| Bullet style that works | "Developed and maintained Java microservices for a US banking client; handled 30+ production tickets a month with 100% SLA adherence" | "Owned the order-ledger service handling 1.2M orders/day; cut p99 write latency from 480 ms to 140 ms by partitioning and batching" |
| Skills block | Can be wider; certifications section matters | Tight and specific; certifications matter less than a repo |
| Projects section after 3 years | Usually unnecessary | Still valuable if it shows depth your job did not |
The transition that trips people up is service to product. Service-company bullets describe the client engagement ("worked on the Wealth Management module for a leading bank") because that is how appraisals are written. A product-company reader wants what you personally built and what happened as a result. Rewrite each bullet by asking: what did I build, how big was it, and what changed? If the third answer is unknown, use a proxy: tickets closed, defects reduced, deployment time, test coverage, a client sign-off. The reverse move is easier: add a certifications line, name the domains you have touched, and make sure standard keywords (Agile, SDLC, REST, CI/CD) appear literally.
Sample software engineer resume (backend, Bengaluru, 4 years)
A backend engineer who started at a services firm and moved to a product company after two years. The earlier role is written in ownership language even though the work was for a client, and every bullet carries a scale figure or an outcome.
Karthik Raghavan
Summary
Backend engineer with 4 years building payment and order systems in Java (Spring Boot) and Go on AWS. Currently own the order-ledger service at an e-commerce platform processing over a million orders a day. Comfortable taking a service from design doc to production, including observability and on-call.
Experience
- Own the order-ledger service (Java 17, Spring Boot, PostgreSQL) processing 1.2 million orders a day; cut p99 write latency from 480 ms to 140 ms by partitioning hot tables and batching writes.
- Led the break-up of the checkout monolith into 6 services on Kubernetes (EKS); deployment frequency went from fortnightly to daily with zero-downtime rollouts.
- Designed an idempotent retry and transactional-outbox flow for payment-gateway callbacks, bringing duplicate-charge incidents to zero over three consecutive quarters.
- Mentor two interns and one new-grad engineer; wrote the team's API design guide, since adopted by four other squads.
- Built REST APIs in Java and Spring for a US retail client's inventory platform serving 300+ stores; delivered 14 sprints with zero P1 defects raised in UAT.
- Wrote a Python migration toolkit that moved 40 million SKU records from Oracle to PostgreSQL over a single weekend, with automated reconciliation reports.
- Raised unit-test coverage on the inventory module from 31% to 82% using JUnit and Mockito; became the module's default code reviewer within six months.
Projects
- Typed ledger primitives with idempotent posting; used in three internal services and adopted by two external contributors.
Skills
Languages: Java, Go, Python, SQL · Backend: Spring Boot, gRPC, REST, JPA/Hibernate · Data: PostgreSQL, Redis, Kafka · Cloud/DevOps: AWS (EKS, RDS, SQS, Lambda), Docker, Kubernetes, Terraform, GitHub Actions · Practices: system design, TDD, observability (Grafana, OpenTelemetry), on-call
Education
Certifications
AWS Certified Developer – Associate (2024) · Confluent Fundamentals for Apache Kafka (2023)
More profiles are in our resume samples; if your work sits closer to SQL and dashboards, see the data analyst resume.
ATS keywords by stack
Recruiters search Naukri and LinkedIn by keyword, and applicant tracking systems rank on matches against the job description. You do not need to stuff; the right terms should appear literally, once in the skills block and once inside a bullet.
| Stack | Keywords that should appear on your resume if they are true |
|---|---|
| Java backend | Java 17, Spring Boot, Spring Security, Hibernate/JPA, REST API, microservices, Kafka, PostgreSQL/MySQL, Redis, JUnit, Mockito, Maven/Gradle, Docker, Kubernetes, AWS/GCP/Azure, CI/CD, system design |
| JavaScript / TypeScript frontend | React, Next.js, TypeScript, Redux/Zustand, React Query, HTML5, CSS3, Tailwind, Webpack/Vite, Jest, React Testing Library, Cypress/Playwright, accessibility, Core Web Vitals, REST/GraphQL |
| Node.js / full stack | Node.js, Express/NestJS, TypeScript, MongoDB, PostgreSQL, Prisma/TypeORM, REST, GraphQL, WebSockets, JWT/OAuth, Docker, AWS Lambda, Redis |
| Python | Python 3, Django/FastAPI/Flask, SQLAlchemy, Celery, pytest, pandas, REST, PostgreSQL, Docker, asyncio, type hints |
| Mobile | Kotlin, Jetpack Compose, Android SDK, Swift, SwiftUI, Flutter/Dart, React Native, Firebase, Play Store/App Store release, MVVM |
| Data engineering | Spark, PySpark, Airflow, SQL, data warehousing, Snowflake/BigQuery/Redshift, dbt, Kafka, ETL/ELT, Databricks, data modelling |
| DevOps / SRE / Cloud | AWS, Azure, GCP, Terraform, Kubernetes, Helm, Docker, Jenkins/GitHub Actions, Prometheus, Grafana, Linux, bash, incident management, SLO/SLA |
Once you have a draft, check your resume's ATS score free; it shows which keywords from a pasted job description are missing.
Mistakes that get developer resumes rejected
- Duties instead of outcomes. "Responsible for developing and maintaining backend services" tells a reader nothing. Say what you built and what it did.
- Fifteen-language skills blocks. C, MATLAB and PHP next to your real stack dilute the signal and invite an interview question you cannot answer.
- Two-column templates with icons and skill bars. They look modern in Canva and parse as garbage. Use a single-column design from our ATS-friendly templates.
- The generic objective. "Seeking a challenging position in a reputed organisation" wastes your most valuable line. Make it specific (see the career objective guide); on Naukri the headline matters more.
- Biodata fields. Father's name, date of birth, marital status and a photo belong on a biodata, not a developer resume; tech employers do not want them.
- Vague scale and dead links. "High-traffic application" is not a number; give an order of magnitude. A portfolio that returns a 404 does active damage; check every link the day you apply.
- No cover note for referrals. When someone refers you internally, send a short cover letter they can forward. Most people send nothing.
For the sequence of writing each section, see how to write a resume.
Frequently asked questions
How long should a software engineer resume be?
One page for freshers and anyone under about five years of experience. Two pages is acceptable for senior engineers and architects who need space for multiple systems and leadership scope. Nobody needs three pages; if you are at three, you are listing duties instead of outcomes.
Should I put a photo on my software engineer resume in India?
No. Product companies, startups and most large IT services firms do not expect a photo, and some ATS parsers handle image-heavy files badly. Photos belong on a biodata for marriage, not a developer resume. Use the space for a project or a bullet instead.
Do I need a career objective as a fresher software engineer?
Only if it says something specific. A two-line summary that names your stack, your strongest project and the kind of role you want beats a generic objective about seeking a challenging position in a reputed organisation. If you cannot make it specific, skip it and let your projects lead.
How do I move from a service company to a product company with my resume?
Rewrite every bullet around ownership and outcome rather than task and client. Say what you built, at what scale, and what changed because of it. Add a projects section with one or two side projects that show depth in a single stack, keep a clean GitHub, and drop phrases like involved in, handled and worked on.
Is my Naukri profile enough, or do I need a separate resume file?
You need both. Recruiters search Naukri by keyword and then download the attached resume, so the profile gets you found and the PDF gets you shortlisted. Keep the headline, key skills and the attached file consistent, and update the file every time you update the profile.
Related guides & tools
- Free ATS score checker
- Resume format for freshers
- Campus placement resume checklist
- How to make an ATS-friendly resume
- Resume headline examples
- ATS-friendly resume templates
- Data analyst resume sample
- How to write a resume
- Cover letter examples