Roles · Backend Developer (Node.js) · Junior

What a Junior } should know

27 core skills, 69 in total. Expectations per skill, and what changes at the next level.

This page lists what a Junior } is expected to know and do, skill by skill. Core skills are the ones a manager and peers assess in a review cycle; the rest count only in self-assessment. Main areas: Programming Fundamentals, Backend Development, Database Management.

27core skills
42additional skills
5skill areas
0%at Advanced or Expert
Assess myself as Junior Full role matrix

Core skills for a Junior

Grouped by area. The label on the right is the expected depth: Awareness, Working, Advanced or Expert.

Programming Fundamentals · 8

Understands the fundamentals of Algorithms & Complexity at a basic level. Applies simple concepts in work tasks using Node.js 20+/TypeScript. Follows recommendations from senior developers when solving problems.

Async Programming Awareness

Understands the fundamentals of Async Programming at a basic level. Applies simple concepts in work tasks using Node.js 20+/TypeScript. Follows recommendations from senior developers when solving problems.

Understands the fundamentals of Code Quality & Refactoring at a basic level. Applies simple concepts in work tasks using Node.js 20+/TypeScript. Follows recommendations from senior developers when solving problems.

Data Structures Awareness

Understands the fundamentals of Data Structures at a basic level. Applies simple concepts in work tasks using Node.js 20+/TypeScript. Follows recommendations from senior developers when solving problems.

Design Patterns Awareness

Understands the fundamentals of Design Patterns at a basic level. Applies simple concepts in work tasks using Node.js 20+/TypeScript. Follows recommendations from senior developers when solving problems.

Understands the fundamentals of Functional Programming Principles at a basic level. Applies simple concepts in work tasks using Node.js 20+/TypeScript. Follows recommendations from senior developers when solving problems.

Understands the fundamentals of OOP & SOLID Principles at a basic level. Applies simple concepts in work tasks using Node.js 20+/TypeScript. Follows recommendations from senior developers when solving problems.

Understands the fundamentals of Type Safety & Type Systems at a basic level. Applies simple concepts in work tasks using Node.js 20+/TypeScript. Follows recommendations from senior developers when solving problems.

Backend Development · 6

Apache Kafka Awareness

Understands Kafka basics for Node.js services: KafkaJS client setup, basic producer/consumer patterns, and async message processing with Node.js event loop considerations. Follows team practices for topic management and error handling in event-driven Node.js applications.

Caching Strategies Awareness

Uses caching in Node.js at a basic level: in-memory caching with node-cache, Redis client integration. Follows team patterns for cache-aside in Express/Fastify middleware. Understands basic TTL configuration and cache key strategies.

Node.js Frameworks Awareness

Uses Node.js Frameworks at a basic level. Performs simple tasks following established templates. Understands basic concepts and follows team practices.

RabbitMQ Awareness

Uses RabbitMQ with amqplib/amqp-connection-manager in Node.js at a basic level. Publishes and consumes simple messages following team templates. Understands basic AMQP concepts: exchanges, queues, and bindings.

Redis Awareness

Uses Redis at a basic level. Performs simple tasks following established templates. Understands basic concepts and follows team practices.

Task Queues Awareness

Uses Task Queues at a basic level. Performs simple tasks following established templates. Understands basic concepts and follows team practices.

Database Management · 6

Designs models via Prisma schema: models, relations (1:1, 1:N, M:N), enums. Understands normalization. Uses Prisma relations for type-safe data access.

Database Indexing Awareness

Creates indexes via Prisma/Knex migrations: @@index for composite, @@unique for constraints. Understands B-tree indexes. Checks EXPLAIN for query optimization.

Writes migrations via Prisma Migrate / Knex migrations: creates tables, columns, indexes. Understands idempotency. Tests on dev environment.

MongoDB Awareness

Understands MongoDB document model and basic CRUD operations using Mongoose or native driver. Writes simple queries and follows team conventions for schema design. Applies basic indexing principles and understands the difference between embedding and referencing documents.

PostgreSQL Awareness

Works with PostgreSQL via Prisma/Knex: CRUD queries, relations, migrations. Understands PostgreSQL types (JSONB, arrays, UUID). Uses Prisma Studio for data inspection.

Query Optimization Awareness

Understands N+1 problem and solves via Prisma include/select, Knex eager loading. Uses findMany instead of findUnique loops. Analyzes generated SQL through logging.

API & Integration · 6

API Documentation Awareness

Documents API: describes endpoints via JSDoc/swagger-jsdoc, writes request/response examples. Maintains Swagger UI up to date. Describes authentication requirements.

API Testing Awareness

Tests API via Postman/Insomnia: sends requests, validates responses. Writes basic tests in Postman Collections. Understands environments and variables.

Learns API versioning approaches such as URL path versioning and header-based versioning in Node.js services. Follows team conventions for maintaining backward compatibility in Express or Fastify routes.

GraphQL Design Awareness

Creates GraphQL API via Apollo Server/Mercurius: type definitions, resolvers, queries and mutations. Understands schema-first vs code-first. Tests via GraphQL Playground.

REST API Design Awareness

Creates REST API on Express/Fastify: CRUD endpoints, middleware for auth, error handling. Understands HTTP methods, status codes, content negotiation. Validates input via Zod/Joi.

Implements WebSocket via Socket.IO/ws: client connections, rooms for grouping, events. Understands lifecycle: connect, disconnect, reconnection. Handles connection errors.

Cloud & Infrastructure · 1

Understands networking for Node.js: TCP/HTTP, DNS resolution, ports and binding. Configures CORS, proxy headers (X-Forwarded-For). Debugs connection issues.

Additional skills

Not assessed by the team, but part of the self-assessment and the development plan.

AWSChatGPT / ClaudeClean ArchitectureCode ReviewConnection PoolingCPU ProfilingCQRSCursor IDEDatabase ShardingDockerDocumentation as CodeE2E TestingELK StackEvent-Driven ArchitectureGit AdvancedGitHub Actions / GitLab CIGitHub CopilotgRPC & Protocol BuffersgRPC & Protocol BuffersIntegration TestingJWT / OAuth2 / OIDCKubernetes CoreLatency OptimizationMemory ManagementMessage Broker PatternsMicroservices DecompositionMultithreadingOpenTelemetryOWASP & Application SecurityPerformance BudgetsPrometheus & GrafanaPrompt Engineering for CodePython Web FrameworksRate Limiting & ThrottlingSecrets ManagementSecure Coding PracticesSLI / SLO / SLAStructured LoggingSystem Design FundamentalsTDD & BDDTerraformUnit Testing

What changes at Mid-level

69 skills get a higher expectation or become core when moving from Junior to Mid-level. The biggest jumps first.

See the Mid-level page →
Run this with your whole team
Self-assessment plus manager and peer reviews against the same matrix, gap analysis and next-level readiness for every engineer. Team Pro is free for 14 days; individual tools stay free forever.
Start a team trial (14 days free) Send to my manager

} in the open competency matrix: 69 skills across 5 levels. The matrix is free for individuals and stays free.