Backend Development Practice

Build the server side of an app in the framework you use at work: routing, request validation, data access and dependency injection.

7 paths · 104 challenges

laravel
8 challenges · 2 modules
Laravel 13Laravel 13PHP 8PHP 8
Routing & Controllers
nodets
16 challenges · 4 modules
nodejs-24Node.js 24
Routing & Controllers
ruby-on-rails
4 challenges · 1 module
Ruby on Rails 8.1Ruby on Rails 8.1
Routing, Controllers & Strong Parameters
More soon
dotnet
24 challenges · 6 modules
.NET 10.NET 10
Dependency Injection
More soon
django
16 challenges · 4 modules
Django 5.2Django 5.2Python 3.13Python 3.13
Models & Relationships
More soon
fastapi
16 challenges · 4 modules
FastAPI 0.139FastAPI 0.139Python 3.13Python 3.13
Path Operations & Routing
More soon
springboot
20 challenges · 5 modules
Spring Boot 4.1Spring Boot 4.1Java 25Java 25
Beans & Dependency Injection

From the blog

6
Bun 1.4 Updates: Rust Runtime, Native APIs, and MoreBun updates in the latest release bring a Rust rewrite, native APIs, stronger Node.js compatibility, and new package tooling.REST vs GraphQL: picking an API styleAn honest, trade-off-first comparison of REST and GraphQL — over/under-fetching, caching, versioning, and the cost GraphQL adds — so you pick by project shape, not hype.How to paginate an API properlyBuild a pagination contract that scales — page/limit vs cursor, a field whitelist for sorting, consistent page metadata, and the edge cases that break offset paging.Why your Express async errors slip throughA rejected promise in an async route handler never reaches your Express error middleware. Here's why the default error handler misses it, and three ways to fix it.Securing an Express APIExpress security best practices as a pre-ship checklist — authentication, rate limiting, input validation, security headers, and secret handling.How to handle API errors consistentlyOne error envelope, one middleware, one shape — a practical pattern for API error handling that clients can rely on, with status-code mapping and safe messages.

Frequently asked questions

3

Which paths are in this category?

7 paths: Laravel (8 challenges), Node.JS (TypeScript) (16 challenges), Ruby on Rails (4 challenges), .NET (24 challenges), Django (16 challenges), FastAPI (16 challenges) and Spring Boot (20 challenges).

How many challenges are there?

104 challenges across 26 modules. More modules are on the way.

Do I need to install anything?

No. Every challenge runs in a browser-based IDE with everything already set up, and your code is graded automatically against a test suite.

We use cookies that are necessary to run Staffcoder, and optional analytics cookies to see which pages get used. Analytics stays off unless you accept. Read our Cookie Policy.