- NestJS – File Upload
FileInterceptor and multer, and the fact that decides everything else about an upload endpoint: the Content-Type is whatever the client typed. Memory storage versus disk and why it is a security choice, stopping a 2 GB request at 5 MB, sniffing magic bytes, and generating the stored filename rather than sanitising one.
- TypeScript – tsconfig, the Flags That Matter
Most of tsconfig you set once. These are the ones that change what compiles: the strict family one flag at a time, target and lib and how they differ, moduleResolution, noEmit, erasableSyntaxOnly, and path aliases. Read off the two real configs in this app — which disagree with each other, correctly.
- NestJS – Authorization and Roles
Role-based access with @Roles and a RolesGuard, and the harder half nobody shows: ownership. Why the role never comes from a request body, why a foreign resource returns 404 rather than 403, and why the route whose rules depend on the row deliberately has no @Roles decorator at all.
- Terraform – Interview Questions
The questions Terraform interviews actually ask, answered the way you would say them out loud. What state is for, `count` versus `for_each`, how locking works, module versioning, what happens when someone changes something in the console, Terraform versus CloudFormation versus Ansible, and how you would recover a corrupted state file.
- TypeScript – Modules and Type-Only Imports
import type and why a bundler needs you to say it, verbatimModuleSyntax, and the reason the NestJS half of this app writes `.js` in an import that points at a `.ts` file. Module resolution in one page, declaration files, and what to do about a package that ships no types.