Blog
Thoughts on engineering, design, and building great products.
API Gateway: HTTP API or REST API, and Building the First Routes
API Gateway has two API types with two feature sets and two price tiers. Compare HTTP API and REST API to pick the right one for the URL shortener, then build two real routes: POST /links to create a link and GET /{code} for a 301 redirect. Handle validation, path parameters, and CORS preflight so the dashboard article later doesn't break.
How Lambda Runs Your Code Internally
Dissect Lambda's execution environment lifecycle: the three phases Init, Invoke, Shutdown, why cold start exists, and how static code runs once. Measure cold start for real (Init Duration), then measure the memory–CPU relationship with the same CPU work at 128 MB and 1769 MB. Understand this so later performance and cost decisions have a basis.
Setting Up the Environment: AWS SAM and Your First Lambda Function
Install the AWS SAM CLI, build a project skeleton for the URL shortener (TypeScript + esbuild), then deploy a real Lambda function to AWS via a Function URL, call it with curl, run it locally in Docker, and clean up with one command. Plus a lesson on the SAM CLI needing to be new enough to support the nodejs22.x runtime.
What Serverless Is and When to Use It
Series opener: what serverless actually means (not 'no servers'), what it trades away and what it gains, when NOT to use it, and the product we build throughout — a URL shortening service with realtime analytics. Includes the overall architecture diagram and a per-part roadmap.