
Tech Stack
Description
Greenlight is a high-performance RESTful API server built in Go that handles movie data management, featuring full-text search, advanced pagination, and dynamic sorting backed by a PostgreSQL database. I built this project to move beyond basic CRUD applications and tackle the kind of real-world backend complexities found in production environments. To ensure maximum efficiency and low latency, I offloaded heavy operations, like sending transactional emails, into background goroutines so they never block client responses. Instead of relying on a heavy ORM to handle database interactions, I wrote custom raw SQL up and down migrations using the migrate CLI. This gave me complete control over the data model expansion, which I paired with custom Go validators to strictly enforce data integrity before a single byte reaches the database.
Beyond just writing the application logic, I engineered Greenlight to survive actual internet traffic by implementing a robust security and deployment pipeline. I built stateful token-based authentication and a strict global IP-based rate limiter set at two requests per second, which effectively mitigates automated traffic spikes and protects the endpoints. For the infrastructure, I provisioned a bare-metal Linux server behind a Caddy reverse proxy rather than settling for a simple platform-as-a-service provider. To manage updates, I authored an idempotent, CI/CD-style deployment pipeline using Makefiles. This setup allows me to push code and execute zero-downtime systemd daemon reloads over SSH and rsync. The result is a fully live, secure, and highly scalable API server that demonstrates exactly how I structure, protect, and deploy production-grade software.
- Engineered a high-performance RESTful API in Go (Golang) for movies, featuring full-text search, advanced pagination, and dynamic sorting backed by a Neon serverless PostgreSQL database.
- Architected alternative SMTP routing via the Resend REST API to overcome cloud provider port restrictions, ensuring reliable email delivery; offloaded all transactional email tasks to background goroutines to guarantee non-blocking, low-latency client responses.
- Built a robust security pipeline, implementing stateful token-based authentication and a global IP-based rate limiter (2 req/sec), successfully mitigating automated traffic spikes and securing the endpoints.
- Authored custom raw SQL up/down migrations using the migrate CLI to dynamically expand the data model without ORM overhead, writing custom Go validators (net/url) to strictly enforce data integrity before database insertion.
- Provisioned a bare-metal Linux server with a Caddy reverse proxy. Authored an idempotent CI/CD-style deployment pipeline using Makefiles, executing zero-downtime systemd daemon reloads via SSH and rsync.