← LearnGo to the exam
Backend and databases
Node, Express, REST, authentication, MongoDB, complete SQL and ORMs.
This phase has a version for each choice below. You see the one you pick. You can switch later and your progress is kept. See every module in the library.
Node.jsPractice
0/16 lessons- What Node.js is55 min
- Modules55 min
- npm and packages55 min
- Files, events and streams55 min
- Environment variables55 min
- Module assignment: Log statistics tool90 min
- Event loop and timers50 min
- Promises and async/await55 min
- Errors, unhandled rejections and exit codes45 min
- Paths and __dirname35 min
- Buffers and text encoding40 min
- Child processes45 min
- Signals and graceful shutdown40 min
- Reading JSON and config files safely35 min
- Dates, timestamps and time zones40 min
- ES modules vs CommonJS in practice45 min
ExpressPractice
0/13 lessons- Your first server and routing50 min
- Request and response55 min
- Middleware and error handling55 min
- Structuring an Express project55 min
- Module assignment: Tasks API90 min
- Route parameters and router.param40 min
- File uploads with multer45 min
- Async handlers in Express 535 min
- Request logging and request IDs40 min
- Serving static files and frontend builds40 min
- Streaming responses and server-sent events45 min
- Health and readiness endpoints40 min
- Dependency injection in Express40 min
REST APIsPractice
0/13 lessons- REST principles and status codes50 min
- Building a CRUD API55 min
- Validation and pagination55 min
- Versioning and testing an API55 min
- Module assignment: Library loans API55 min
- Idempotency keys for POST45 min
- Partial updates with PATCH40 min
- ETags and If-Match40 min
- Cursor-based pagination45 min
- Bulk endpoints40 min
- Problem details for errors35 min
- Hypermedia links45 min
- Long-running jobs with 202 Accepted50 min
Authentication and SecurityPractice
0/16 lessons- Hashing passwords50 min
- Sessions, JWT and cookies55 min
- Building login with JWT in Express55 min
- Authorization and OAuth55 min
- Security basics for web apps55 min
- Module assignment: Secure notes API55 min
- Rate limiting algorithms40 min
- Refresh token rotation and reuse detection45 min
- Password reset tokens45 min
- Two-factor login with TOTP55 min
- API keys with hashing and scopes40 min
- Secrets management and key rotation40 min
- Content Security Policy45 min
- Dependency audits and supply chain risk45 min
- HTTPS, TLS and HSTS35 min
- Audit logs without secrets35 min
MongoDBPractice
0/16 lessons- Documents and CRUD55 min
- Queries and indexes55 min
- The aggregation pipeline55 min
- Mongoose models and validation55 min
- Schema design: embed or reference55 min
- Module assignment: Reading club API55 min
- BSON types and ObjectId40 min
- Update operators50 min
- Querying arrays with $elemMatch35 min
- Compound indexes and the ESR rule40 min
- Text search indexes40 min
- $facet and $bucket reports40 min
- Change streams40 min
- Multi-document transactions with sessions40 min
- Mongoose populate and virtuals45 min
- TTL indexes and expiring data40 min
SQL FundamentalsPractice
0/14 lessons- Tables and SELECT55 min
- Filtering, sorting and NULL55 min
- Aggregates, GROUP BY and HAVING55 min
- Changing data and constraints55 min
- Module assignment: Bookshop ledger55 min
- Data types for real columns40 min
- Text matching with LIKE and string functions40 min
- Dates and times in SQL40 min
- CASE expressions35 min
- Conditional aggregation40 min
- DISTINCT and set operations40 min
- COALESCE and NULLIF40 min
- Multi-row INSERT, UPDATE FROM and RETURNING45 min
- Upserts with ON CONFLICT35 min
SQL Joins and Database DesignPractice
0/16 lessons- Joins55 min
- Subqueries and CTEs55 min
- Window functions55 min
- Keys, normalization and indexes55 min
- Transactions and ACID55 min
- Module assignment: Stationery shop database55 min
- Many-to-many junction tables45 min
- Foreign keys and ON DELETE rules50 min
- Views and materialized views40 min
- Reading EXPLAIN plans45 min
- Composite and covering indexes40 min
- Deadlocks and lock ordering45 min
- Denormalization on purpose40 min
- Window frames and named windows40 min
- ROLLUP, CUBE and GROUPING SETS45 min
- Soft deletes and optimistic locking45 min
ORMs and MigrationsPractice
0/14 lessons- What an ORM is and defining a schema50 min
- Migrations55 min
- Queries and relations55 min
- The N+1 query problem55 min
- Transactions, seeding and using Drizzle in Express55 min
- Module assignment: Library lending data layer90 min
- Prepared statements and parameter binding40 min
- Raw SQL with the sql tag40 min
- The repository pattern40 min
- Connection pooling with pg45 min
- Keyset pagination with an ORM45 min
- Inferring types from the schema40 min
- Enums and check constraints in the ORM45 min
- Comparing Prisma and Drizzle45 min
Kafka and Event StreamingPractice
0/14 lessons- What Event Streaming Is and Where Kafka Fits35 min
- Topics, Partitions and Retention40 min
- Brokers, Replicas and Leaders40 min
- Running Kafka Locally with Docker35 min
- Producers, Keys and Ordering35 min
- Producer Acks, Retries and Idempotence40 min
- Consumers and Consumer Groups45 min
- Offsets and Committing45 min
- Delivery Guarantees45 min
- Rebalancing and Consumer Lag45 min
- Retries and Dead-Letter Topics45 min
- Message Schemas and Evolution50 min
- Kafka Versus a Queue40 min
- Build an Event Pipeline in Node50 min
MicroservicesPractice
0/14 lessons- Monolith versus services35 min
- Service boundaries35 min
- Splitting a monolith step by step45 min
- REST calls between services50 min
- Messaging between services40 min
- Event contracts and versioning40 min
- API gateway45 min
- Service discovery45 min
- Timeouts and retries50 min
- Circuit breaker45 min
- Data per service45 min
- Saga pattern50 min
- Tracing across services40 min
- Project: Order, stock and payment services60 min
GraphQL APIsPractice
0/12 lessons- What GraphQL Is and Where It Fits35 min
- Schema and Types40 min
- Queries and Field Selection40 min
- Mutations and Input Types40 min
- Resolvers and the Execution Model40 min
- Building a Node GraphQL Server45 min
- The N+1 Problem in GraphQL40 min
- DataLoader Batching and Caching45 min
- Authentication and Authorization in Resolvers40 min
- Pagination with Connections40 min
- Errors and Partial Responses40 min
- GraphQL versus REST in Practice40 min
Cloud DatabasesPractice
0/12 lessons- Managed vs Self-Hosted Databases40 min
- Choosing a Data Store40 min
- Managed Postgres: Networking and TLS40 min
- Connection Limits and Pooling in the Cloud40 min
- DynamoDB Partition and Sort Keys45 min
- DynamoDB Query, Scan, and Indexes50 min
- DynamoDB Conditional Writes and Transactions50 min
- Firebase Firestore Documents and Security Rules50 min
- Supabase Postgres with Row Level Security50 min
- Backups, Point-in-Time Restore, and Restore Drills55 min
- Migrating a Database with Minimal Downtime45 min
- Cloud Database Cost and Capacity Planning40 min
Phase exam
A timed mixed test across every module in this phase.
Pick your options above to see the matching modules.