Technology

Skills for Backend Developers

APIs, databases, and the operational depth that separates senior from mid

Backend development job descriptions range from "write some Node.js" to "design distributed systems at scale." The actual hiring bar in 2026 sits somewhere in between, with a clear cluster of skills that determine offer outcomes: database design judgment, API design quality, understanding of at least one message queue or caching layer, and the ability to reason about what breaks at 10x traffic. This guide covers exactly that — not all of computer science, just what gets you hired and what gets you rejected.

Must-have

8

Nice-to-have

5

Emerging

2

Must have8 skills

Language depth in one server-side language (Node.js, Python, Go, Java, or Rust)

technical

Surface-level familiarity with a language does not pass a senior backend screen. Hiring managers expect you to explain memory management, concurrency model, and the standard library — in Go, that means goroutines and channels; in Python, the GIL and async alternatives; in Java, the JVM and thread management. One language, deeply, beats three languages superficially.

How to prove it

A production-quality GitHub repository in your chosen language with meaningful error handling, logging, tests, and a clear explanation of one language-specific decision you made (e.g., why you chose an async pattern, how you handled goroutine lifecycles, how you structured the package for testability).

Time to acquire

6-18 months to reach interview-depth proficiency from a different language background; 3-6 months to reach that depth in a second backend language.

Relational database design (normalization, indexing, query performance)

technical

Every backend developer is expected to design a schema that performs, not just one that is correct. The hiring bar: understanding when to normalize versus denormalize, how to choose and place indexes (including knowing that too many indexes hurts write performance), and the ability to explain a query execution plan. EXPLAIN output is a common interview question at senior backend screens.

How to prove it

A database schema design document or migration file in a portfolio project — with comments explaining normalization decisions, index choices, and at least one place where you deliberately denormalized for performance. Bonus: a slow-query fix documented with EXPLAIN before and after.

Time to acquire

3-6 months with a real workload; "Use The Index, Luke" (free online) is the definitive resource for index optimization.

REST API design (resource modeling, status codes, versioning, error schemas)

technical

Designing a REST API that is consistent, navigable, and correct — not just functional — is a core backend skill. Common failure points: misusing HTTP status codes (returning 200 with error messages in the body), poor resource naming, no versioning strategy, and error responses that expose implementation details. These are screened for in API design interviews and code reviews.

How to prove it

A public API you designed with a written spec or OpenAPI document. Show the error response schema, the versioning strategy, and at least one case where you chose a non-obvious HTTP method or status code — and explain why.

Time to acquire

4-8 weeks studying existing well-designed APIs and reading resources like the "API Design Guide" from Google.

Authentication and authorization (JWT, OAuth 2.0, RBAC)

technical

Authentication is the area where most security vulnerabilities originate. Backend engineers who understand the difference between authentication (who are you) and authorization (what can you do), how JWT tokens work and fail, and how OAuth 2.0 flows differ are meaningfully differentiated from engineers who implement auth by copying tutorials.

How to prove it

Be prepared to whiteboard an OAuth 2.0 authorization code flow with PKCE — including what happens if the access token is stolen versus the refresh token is stolen. In a real project, show where you implemented RBAC and what decisions you made about role granularity.

Time to acquire

4-8 weeks of deliberate study; auth0.com/learn has unusually practical content on this.

SQL (advanced queries — window functions, CTEs, JOINs, transactions)

technical

Backend developers write more complex SQL than analysts in different ways — data integrity (transactions, isolation levels), locking behavior, and query patterns specific to application code (avoiding N+1 queries, batch inserts). The interviewer will often ask you to debug a query that produces incorrect results due to a JOIN type or NULL handling issue.

How to prove it

Walk through a SQL query you wrote that required a transaction — explain the isolation level you chose and why, and what would happen if you had chosen a weaker one. Show understanding of the difference between READ COMMITTED and REPEATABLE READ.

Time to acquire

4-8 weeks with a real database; the PostgreSQL documentation is excellent on isolation levels and transaction behavior.

Caching patterns (Redis, Memcached — TTL, cache invalidation, eviction)

tool

The hardest part of caching is cache invalidation — knowing when to invalidate, how to handle stale data gracefully, and what to do during a cache stampede. Backend engineers who understand cache-aside, write-through, and write-behind patterns and can explain the tradeoffs are hired at senior levels; those who only know "add Redis" are not.

How to prove it

A specific caching problem you solved — explain the pattern you used (cache-aside, write-through), what the TTL was and how you chose it, and one scenario where your caching strategy could produce incorrect results (and how you accepted or mitigated that risk).

Time to acquire

2-4 months using Redis in a real project; the Redis documentation covers all patterns in depth.

At least one NoSQL database (MongoDB, DynamoDB, or Cassandra)

tool

Backend developers at product companies frequently choose between relational and document/key-value databases for different access patterns. Understanding when to reach for NoSQL — and when not to — and the specific data modeling constraints of one NoSQL database (embedding vs. referencing in MongoDB, partition key design in DynamoDB) is a standard backend hiring criterion.

How to prove it

A project using a NoSQL database where you explain why you chose it over a relational database for this use case — and what you sacrificed (transactions, query flexibility, consistency guarantees). Document the schema design decisions, especially around embedding.

Time to acquire

2-4 months with hands-on use; DynamoDB data modeling specifically benefits from reading Alex DeBrie's "The DynamoDB Book."

Containerization (Docker — Dockerfile, docker-compose, multi-stage builds)

tool

Docker is table stakes for backend development in 2026. The expectation is not container orchestration expertise — that is DevOps territory — but the ability to write a production-quality Dockerfile (multi-stage builds, minimized image size, non-root user), compose a local development environment, and understand what happens when a container fails.

How to prove it

A portfolio project with a Dockerfile using multi-stage builds — explain what each stage does and why the final image size matters. Show a docker-compose.yml that runs your app with its dependencies (database, cache) locally.

Time to acquire

2-4 weeks with hands-on use.

Nice to have5 skills

Message queues and async patterns (Kafka, RabbitMQ, or SQS)

tool

Decoupling services through message queues is a standard backend architecture pattern for reliability and scalability. Understanding when to use a queue versus a synchronous API call, what happens when a consumer fails (dead letter queues, retry patterns), and the ordering guarantees of different queue systems separates backend engineers who have worked on distributed systems from those who have not.

How to prove it

A project or architecture description where you introduced an async pattern via a message queue — explain the producer/consumer design, how you handle consumer failures, and what the operational tradeoff is versus a synchronous call.

Time to acquire

4-8 weeks with a real project; Kafka's official documentation and "Designing Event-Driven Systems" (free online) are starting points.

GraphQL (schema design, resolvers, N+1 problem, subscriptions)

technical

GraphQL is required at companies with complex, multi-client APIs (mobile + web + partner) and increasingly common in product APIs. The specific technical issue that trips up GraphQL candidates: the N+1 query problem and how DataLoader solves it. Understanding this is the difference between someone who read about GraphQL and someone who has deployed it.

How to prove it

A GraphQL API project where you can demonstrate schema design decisions, explain the resolver chain, and show how you handled the N+1 problem (DataLoader, persisted queries, or connection-pooling). Walk through one subscription implementation.

Time to acquire

4-8 weeks for production-ready proficiency; Apollo Server documentation and the official GraphQL spec are sufficient.

Observability implementation (structured logs, distributed tracing, metrics with Prometheus)

tool

Senior backend engineers are expected to build systems that are diagnosable in production — structured JSON logs with trace IDs, distributed tracing (OpenTelemetry), and application metrics. Candidates who have never set up observability have limited operational credibility at companies that run on-call rotations.

How to prove it

A project where you implemented structured logging (JSON format with consistent field names) and at least one custom metric or trace. Show what you would look at first if a production alert fired on this service.

Time to acquire

4-8 weeks; OpenTelemetry documentation and Prometheus/Grafana stack tutorials.

Distributed systems concepts (CAP theorem, eventual consistency, distributed transactions)

technical

At senior backend levels at companies running multiple services, the ability to reason about consistency, partition tolerance, and failure modes is tested explicitly. The practical implication: understanding what "eventually consistent" means for a user experience, how to design around it, and when to trade consistency for availability.

How to prove it

Explain a consistency decision you made in a past project — or, in an interview setting, explain the CAP theorem with a concrete example and what it means for a user who submits a payment. This is a senior-level question and a strong differentiator.

Time to acquire

3-6 months; "Designing Data-Intensive Applications" (Kleppmann) is the canonical text.

API security (injection prevention, rate limiting, secrets management)

technical

Backend developers own the attack surface. The most common vulnerabilities in backend code are SQL injection (mitigated by parameterized queries), excessive data exposure in API responses, and unprotected endpoints. Understanding these — plus rate limiting patterns and secrets management (environment variables, not hardcoded credentials) — is a senior-level expectation.

How to prove it

A code review you did where you caught a security issue — describe what it was, how it would have been exploited, and what the fix was. If no real example, describe how you would detect SQL injection vs. NoSQL injection in a code review.

Time to acquire

4-8 weeks; OWASP API Security Top 10 is the most relevant reference for backend engineers.

Emerging2 skills

LLM API integration and structured output extraction

technical

Backend services increasingly include LLM-powered endpoints — for document processing, classification, summarization, or generation. The skills that matter: reliable structured output (JSON mode, function calling), error handling for rate limits and timeouts, cost controls (caching, model selection), and prompt versioning. A backend engineer who cannot ship a reliable LLM endpoint is a gap at AI-forward companies.

How to prove it

A backend service that calls an LLM API with structured output, handles rate limits gracefully (exponential backoff, fallback), and has a cost monitoring mechanism. Show the prompt management strategy — not hardcoded strings, but versioned templates.

Time to acquire

4-8 weeks building a real integration.

Database migration and schema evolution patterns

methodology

Running database migrations safely in production — zero-downtime schema changes, backward-compatible deployments, and rollback strategies — is increasingly evaluated in senior backend interviews. The naive approach (ALTER TABLE on a large table) causes production incidents; the correct approach (expand-contract pattern, background jobs) does not.

How to prove it

Describe a database migration you ran in production on a table with significant data. What was the migration strategy? Did you take downtime? How did you verify correctness before completing the migration? What would you do differently?

Time to acquire

2-4 months through hands-on production experience; the Stripe engineering blog has excellent public writing on this.

Certifications: what's worth it

AWS Certified Solutions Architect – Associate

Amazon Web Services$30060-100 hours prep

Situational

Useful signal at AWS-heavy shops and for career-changers who lack demonstrable cloud experience. Senior backend engineers with shipping histories on AWS do not need this — the interview is the proof. If you are transitioning into backend from a non-technical role, or if your target employers include enterprise companies that check certs in their screening process, it is worth the investment.

Certified Kubernetes Administrator (CKA)

Cloud Native Computing Foundation$39580-150 hours prep

Situational

More relevant for backend engineers at companies where they own their own Kubernetes clusters (startups, infrastructure-heavy teams). The exam is hands-on and tests real operational competence. If your backend role includes any infrastructure ownership, this is one of the more credible certs to hold. Pure backend developers who deploy to managed clusters (EKS, GKE) and never touch the control plane do not need this.

MongoDB Associate Developer

MongoDB$15020-40 hours prep

Situational

Signals MongoDB-specific competence. Recognized by companies heavily invested in MongoDB (many startup-era SaaS companies, gaming backends). Not recognized broadly enough to matter outside MongoDB-heavy environments. If your target roles list MongoDB explicitly and you have limited hands-on experience, this is worth the time.

Oracle Database certifications (OCA/OCP)

Oracle$245-$29560-120 hours prep

Situational

Relevant almost exclusively in enterprise environments (finance, healthcare, government) running Oracle databases. At any tech company or startup, Oracle cert familiarity is irrelevant — they are running PostgreSQL or MySQL. Do not pursue this unless you are explicitly targeting Oracle-centric enterprises.

Certified Scrum Master (CSM)

Scrum Alliance$500-$1000 including training2-day course

Overrated

Never asked for by backend engineering hiring managers. Backend engineers who work in Agile environments demonstrate Agile fluency through behavioral interview answers, not a cert. Save the money and the time — no senior backend hiring committee has ever selected a candidate because of a CSM certification.

CKAD (Certified Kubernetes Application Developer)

Cloud Native Computing Foundation$39560-100 hours prep

Situational

More relevant for backend developers than CKA because it focuses on deploying and managing applications in Kubernetes rather than administering the cluster. If your team uses Kubernetes and you want to demonstrate operational fluency beyond "my team has a Helm chart," CKAD is a credible signal. It is a hands-on exam, which increases its signal value.

ATS keywords that get backend developers through screening

Group these correctly on your resume. The wrong section placement costs you the match.

Programming languages and runtimes

Node.jsPythonGoJavaRustTypeScriptPHPRubyKotlinSpring Boot

Where on resume: Name your primary language in a Technical Skills section. Pair it with a framework ("Python / FastAPI" or "Node.js / Express") for better ATS matching on role-specific requirements.

Why it matters: Primary language is the top filter in backend engineering JDs. A resume with no language listed explicitly will fail automated screens.

Databases and data layer

PostgreSQLMySQLMongoDBRedisDynamoDBCassandraElasticsearchSQLdatabase designdata modeling

Where on resume: Name specific databases. "PostgreSQL" is ATS-parsed differently from "relational database." If you have used multiple, list the primary ones with bullet context ("Designed schema for 40M-row PostgreSQL database, reduced query time by 60% with targeted indexes").

Why it matters: Missing database keywords is a common auto-filter trigger for backend roles. Every JD includes at least one database requirement.

APIs and architecture patterns

REST APIGraphQLgRPCmicroservicesmessage queueKafkaRabbitMQevent-drivenAPI designdistributed systems

Where on resume: "Microservices" is a filter keyword at mid-to-large companies. Include it in context: "Designed and maintained 6 microservices handling 2M daily API calls." Context-free keywords score lower.

Why it matters: "REST API" is a baseline must-have. "Microservices" and "distributed systems" are filters for senior roles.

Cloud and infrastructure

AWSGCPAzureDockerKubernetesTerraformCI/CDserverlesscloud-nativeinfrastructure as code

Where on resume: List the specific cloud provider and the services you used ("AWS: EC2, RDS, S3, Lambda, SQS"). Generic "cloud" without specifics scores lower.

Why it matters: Cloud provider keywords are required at virtually all non-legacy backend roles in 2026. Missing them entirely positions you as a pre-cloud-era engineer.

Engineering practices

test-driven developmentcode reviewsystem designAgileperformance optimizationsecurityobservabilitymonitoringreliabilityon-call

Where on resume: "Observability" and "reliability" are senior-signal keywords. Use them in bullet context that shows ownership ("Implemented OpenTelemetry distributed tracing across 5 services, reducing MTTR from 45 minutes to 8 minutes").

Why it matters: "System design" as a keyword filters effectively for senior roles. "Performance optimization" in bullets with metrics is a strong differentiator.

How to weave these skills into resume bullets

Demonstrates: Database design and optimization

Optimized database performance for the application.

Identified N+1 query pattern in the order history endpoint (Postgres EXPLAIN showing 340 queries per request); refactored ORM calls into a single JOIN with eager loading and added a compound index — reducing p99 response time from 3.2s to 180ms under production load.

Demonstrates: API design and reliability

Built REST APIs for the mobile and web clients.

Designed a versioned REST API serving 3 client types (iOS, Android, web) with consistent error schemas, structured validation, and rate limiting at 5K req/min per tenant — used by 40K daily active users without a breaking change over 18 months.

Demonstrates: Message queue and async processing

Used Kafka for message processing.

Migrated email-notification delivery from synchronous API calls (causing 12% request latency increase at peak) to a Kafka-backed async consumer with a dead-letter queue for failed deliveries — reducing p95 API latency by 340ms and achieving 99.97% delivery rate over 90 days.

Demonstrates: Caching and performance

Added caching to improve API performance.

Implemented a Redis cache-aside layer for the 10 highest-traffic read endpoints (30K req/min combined) using LRU eviction and 60-second TTLs; reduced database query load by 78% and dropped median API latency from 140ms to 18ms.

Demonstrates: Security and auth

Implemented authentication for the platform.

Designed and implemented RBAC authorization for a multi-tenant SaaS API — 6 permission levels, JWT-based with 15-minute access token expiry and rotating refresh tokens; passed a third-party penetration test with zero critical findings and one low-severity finding resolved within a week.

Portfolio signals that work for backend developers

A deployed API with an OpenAPI specification, a documented error schema, and working auth — accessible at a real URL

Why: A live API that other developers can actually call is the backend equivalent of a live website. OpenAPI documentation signals that you think about API consumers, not just API code. Hiring managers at API-driven companies often import it into Postman during the interview debrief.

How to build it: Build a REST or GraphQL API for a domain you find interesting (personal finance, sports statistics, public transit data). Add OpenAPI documentation using tools like swagger-jsdoc or FastAPI's automatic generation. Deploy it on Railway, Render, or a VPS. Add a /health endpoint. Write a clear README.

A database schema migration documented with reasoning — including one schema change done zero-downtime

Why: Zero-downtime migrations require understanding the expand-contract pattern, which is a senior backend skill that most candidates have not practiced. A documented example — even on a side project — signals operational maturity that is hard to fake.

How to build it: Use any project with a PostgreSQL or MySQL database. Add a migration that renames a column or adds a non-nullable field. Document the migration strategy: how you added the new column first (expand), backfilled data, then removed the old column (contract). Post the migration files and explanation as a GitHub gist or README section.

A load-testing write-up showing how your service behaves under 10x normal traffic — with a specific bottleneck identified and fixed

Why: Load testing is something most developers say they do and few actually do. A documented test with k6 or Locust showing request rates, error rates, and p99 latency — with a specific bottleneck (slow query, connection pool exhaustion, single-threaded endpoint) identified and fixed — is direct evidence of senior operational thinking.

How to build it: Run k6 or Locust against your portfolio API at 10x your expected load. Capture the results. Identify the bottleneck (look at CPU, database connections, slow queries). Fix one thing. Run again. Document the before/after. Publish the k6 script in your repo.

A technical write-up of an architectural decision you made — with tradeoffs explicitly documented

Why: Architecture decisions are what senior engineers own. A written ADR (Architecture Decision Record) that explains what you chose, what you considered, and what you gave up signals the judgment that behavioral interviews try to approximate. Hiring managers read these and use them to calibrate the depth of interview questions.

How to build it: Write an ADR for any past architectural decision: "Why we chose PostgreSQL over MongoDB for user events," "Why we moved from monolith to services for the notification system," or "Why we chose Redis over Memcached." Use the ADR format (Context, Decision, Consequences). Publish on your blog or GitHub.

Where to actually learn this

Designing Data-Intensive Applications (Martin Kleppmann)

bookpaid

The canonical book on backend and distributed systems design. Covers databases, replication, partitioning, distributed transactions, and stream processing with enough depth to survive senior interview follow-up questions. Read it with a highlighter — you will return to chapters repeatedly.

Best for: Distributed systems and database depth; must-have and nice-to-have tiers.

Use The Index, Luke (free online at use-the-index-luke.com)

documentationfree

The best free resource specifically on database indexing. Explains B-tree indexes, composite index column order, and how query execution plans use (or ignore) indexes — in plain English with examples. Directly maps to database interview questions.

Best for: Database indexing and query optimization; must-have tier.

The Twelve-Factor App (12factor.net)

documentationfree

A canonical reference for building cloud-native, production-ready backend services. Short and direct. Covers configuration, dependencies, backing services, logs, and admin processes in a format you can internalize in an hour. Many senior interviewers reference it explicitly.

Best for: Cloud-native architecture practices; nice-to-have tier.

OWASP API Security Top 10

documentationfree

The authoritative reference for API security vulnerabilities. Each entry includes a concrete attack scenario and mitigation. If you read only one security resource as a backend developer, make it this one. Interviewers at security-conscious companies reference it explicitly.

Best for: API security; nice-to-have tier.

Redis University (official Redis free courses)

coursefree

Redis Labs offers structured courses on Redis data structures, caching patterns, and pub/sub — for free with a certificate. More thorough than blog posts and directly tied to the tool most backend engineers interact with daily.

Best for: Caching and Redis; must-have tier.

Designing Event-Driven Systems (Ben Stopford, free Confluent ebook)

bookfree

A practical guide to event-driven architecture with Kafka. Covers event sourcing, stream processing, and microservices integration through events. Free download from Confluent. Required reading if you are targeting roles where Kafka is in the stack.

Best for: Message queues and event-driven architecture; nice-to-have tier.

PostgreSQL official documentation (specifically: indexes, transactions, EXPLAIN)

documentationfree

The PostgreSQL documentation is unusually well-written and is the authoritative source on index types, transaction isolation levels, and EXPLAIN output. Chapters 14 (Performance Tips) and 13 (Concurrency Control) are most relevant for interview prep.

Best for: PostgreSQL internals; must-have tier.

Google SRE Book and SRE Workbook (free at sre.google)

documentationfree

Not just for SREs — Part II (Principles) covers SLOs, error budgets, and risk management in ways that directly inform how senior backend engineers should think about reliability. The incident management chapters are practical for anyone who has been on-call.

Best for: Observability and reliability; nice-to-have tier.

Auth0 Blog and Identity documentation

documentationfree

The Auth0 blog has the most practical writing on JWT, OAuth 2.0, and authentication patterns available for free. The "What is OAuth 2.0?" and "Refresh Token Rotation" articles are the most-cited resources in auth interview prep.

Best for: Authentication and authorization; must-have tier.

Skills FAQs for backend developers

More for Backend Developers

Skills for related roles