Engineering blog
Notes on the backend problems I keep meeting.
These are short notes on the problems I meet more than once: slow request paths, unreliable real-time delivery, leaky DTOs, surprising ORM queries, and small utilities with uncomfortable edge cases.
Read this first
How I Think About Backend Performance
A practical field guide for improving API latency without breaking business behavior or hiding cost in another layer.
All notes
Performance, data, and delivery.
Engineering note
3 min read
How I Think About Backend Performance
A practical field guide for improving API latency without breaking business behavior or hiding cost in another layer.
Engineering note
2 min read
Building Real-Time Systems That Stay Maintainable
Real-time features stay healthy when transport, domain events, persistence, and delivery guarantees are treated as separate concerns.
Engineering note
2 min read
NestJS and Kafka: Boundaries and Retries
How I approach NestJS microservices: service boundaries first, transport second, and operational behavior always visible.
Engineering note
2 min read
Designing Safe Object Utilities in TypeScript
Small TypeScript utilities become reliable when null behavior, path parsing, mutation rules, and tests are designed up front.
Engineering note
2 min read
NestJS Validation and DTO Boundaries
Validation in NestJS works best when DTOs describe transport input, services own business rules, and transformation is deliberate.
Engineering note
2 min read
TypeORM Relationships and Database Reality
ORM relationship decorators are only trustworthy when they match the actual database constraints, indexes, and query behavior.