Skills examples
Skills for a software engineer resume: lists and examples
The skills section of a software engineer resume is read twice: once by ATS software matching keywords from the job description, and once by a recruiter or hiring manager checking whether your stack fits the team. Both readers prefer skills grouped by category, with exact technology names and versions where they matter, rather than one long comma-separated list.
Below are ready-to-paste skill lines grouped by category: programming languages, backend, frontend and mobile, databases, cloud and DevOps, testing, computer science fundamentals, AI tools and ways of working. The last group shows how to prove a skill inside your experience section, because a skill that appears only in the list carries less weight than one backed by a result.
How to write it
Category label + four to seven specific technologies you have actually used, for example “Backend: Spring Boot, Hibernate/JPA, REST APIs, Kafka, Redis”.
- Group skills into four to seven labelled lines instead of one long list. It is easier to scan and still ATS-friendly.
- Copy the exact spelling used in the job description, such as “Node.js”, “PostgreSQL” or “CI/CD”.
- Put the skills that match the job first in each line; reorder for each application if needed.
- Leave out skills you cannot discuss in an interview. A single wrong answer about a listed skill can undo the rest.
- Back your top three skills with at least one experience or project bullet each.
- Drop very basic items like “MS Word” or “Windows” from an engineering resume.
Programming languages
Languages: Java (17), Python, JavaScript (ES2022), TypeScript, SQL
Languages: C++, Go, Python, Bash
Languages: Kotlin, Java, Swift (basic)
Languages: C#, .NET 8, PowerShell, SQL
Backend and APIs
Backend: Spring Boot, Spring Security, Hibernate/JPA, REST APIs, Microservices
Backend: Node.js, Express, NestJS, GraphQL, WebSockets
Backend: Django, Django REST Framework, FastAPI, Celery
Messaging and caching: Apache Kafka, RabbitMQ, Redis
API design: OpenAPI/Swagger, versioning, pagination, idempotent endpoints, rate limiting
Frontend and mobile
Frontend: React 18, Next.js, Redux Toolkit, React Query, Tailwind CSS
Frontend: Angular, RxJS, TypeScript, Angular Material
Web fundamentals: HTML5, CSS3, responsive design, accessibility (WCAG basics), Core Web Vitals
Mobile: React Native, Flutter (Dart), Android (Jetpack Compose)
Databases and data
Databases: MySQL, PostgreSQL, MongoDB, Redis
Database skills: query optimisation, indexing, schema design, transactions and isolation levels
Search and analytics: Elasticsearch, OpenSearch, ClickHouse (basic)
Cloud and DevOps
Cloud: AWS (EC2, S3, RDS, Lambda, SQS, CloudWatch)
Cloud: Microsoft Azure (App Service, Functions, AKS, Cosmos DB)
DevOps: Docker, Kubernetes, Helm, Terraform
CI/CD: GitHub Actions, Jenkins, GitLab CI, Argo CD
Observability: Prometheus, Grafana, ELK stack, OpenTelemetry
Testing and code quality
Testing: JUnit 5, Mockito, Testcontainers, integration testing
Testing: Jest, React Testing Library, Cypress, Playwright
Code quality: code reviews, SonarQube, static analysis, test-driven development
Computer science fundamentals
Core CS: data structures and algorithms, OOP, design patterns, SOLID principles
System design: caching, load balancing, sharding, event-driven architecture, consistency trade-offs
Concurrency: multithreading, Java concurrency utilities, asynchronous programming
Security: OAuth 2.0, JWT, OWASP Top 10, secrets management
AI and developer tools
AI integration: LLM APIs, prompt design, retrieval-augmented generation (RAG), vector search (pgvector)
Developer productivity: GitHub Copilot, AI-assisted code review, evaluation tests for LLM features
Ways of working
Ways of working: Agile/Scrum, Jira, Git (branching, rebasing, pull request reviews), technical documentation
Collaboration: requirement clarification with product managers, client communication, mentoring juniors
Ownership: on-call support, incident post-mortems, production debugging
Bullets that prove a skill
Built six Spring Boot microservices for a payments platform, using Kafka for event-driven order updates and Redis for caching.
Reduced API p95 latency from 800 ms to 220 ms by adding composite indexes and query-level caching.
Containerised a monolithic Node.js app with Docker and set up GitHub Actions pipelines for automated tests and deployments to AWS ECS.
Wrote JUnit and Testcontainers integration tests that raised coverage of the billing module from 45% to 80%.
Migrated a legacy jQuery dashboard to React and TypeScript, cutting the JavaScript bundle size and improving page load on mobile.
Mistakes to avoid
- One giant comma-separated list of 40 technologies with no grouping.
- Skill ratings like progress bars or “Java: 4/5”. ATS software cannot read them and recruiters do not trust them.
- Listing a technology you used once in a tutorial alongside your daily stack, with no way to tell them apart.
- Inconsistent names, such as “ReactJS”, “React.js” and “React” in different sections.
- Leaving outdated skills at the top while current tools sit at the end of the list.
Frequently asked questions
How many skills should a software engineer list on a resume?
Most software engineer resumes work well with roughly 15 to 30 specific skills, grouped into four to seven categories. Freshers usually have fewer and should keep only what they have actually used in projects or internships. More is not better: a focused list that matches the job description reads stronger than every tool you have ever installed.
Should I list soft skills on a software engineer resume?
Not as a standalone list of words like “team player” or “good communicator”. Instead, show them through bullets, such as mentoring juniors, leading code reviews or working directly with clients. A short “Ways of working” line covering Agile, Git workflow and documentation is a practical way to include collaboration skills that hiring managers actually check.
Where should the skills section go on a software engineer resume?
For freshers, place it near the top, after the objective or summary and before projects, because skills are a main selling point. For experienced engineers, it usually goes after the experience section or in a sidebar column, since your work history carries more weight. In both cases, keep it in plain text so ATS software can read it.
Should I mention versions, like Java 17 or React 18?
Mention versions when they matter to the employer, such as a modern Java version for a team migrating off Java 8, or Angular versus AngularJS. For most tools, the name alone is enough. Avoid listing versions you cannot discuss, because interviewers sometimes ask what changed between versions to test real experience.
Is it okay to include AI tools like GitHub Copilot as a skill?
Yes, if you use them meaningfully. Many teams now value engineers who can integrate LLM APIs, build retrieval-augmented features or use AI coding assistants responsibly. List specific capabilities, such as RAG or LLM API integration, rather than just “ChatGPT”. Support it with a project or work bullet so it reads as a real skill, not a buzzword.