Challenges

Focused, hands-on DevOps and server-side problems with hints, feedback, and automated solution checks.

Challenge

Make One Echo Server Work with Both TCP and Unix Sockets

Make a single echo server listen on either a TCP socket or a Unix domain socket, selected by its command-line argument. The challenge illustrates that the same stream-socket workflow works with two address families (AF_INET and AF_UNIX).

Challenge

Write a TCP Client for a Chat Server

Write a TCP client to hold a back-and-forth conversation with a "chat" server: send a line, read the reply, send another line - repeat until the session is over. A hands-on lesson in designing an application protocol on top of a byte-oriented TCP stream.

Challenge

Optimize Container Images with Multi-Stage Builds

Practice optimizing applications' container images using multi-stage builds. Rewrite single-stage Dockerfiles for a Go backend and a TypeScript frontend to produce smaller, production-ready images without unnecessary build tools and dev dependencies.