PostgreSQL & Database Engineering
I design and optimize PostgreSQL databases for multi-tenant SaaS platforms — from schema design and migration management to shard routing and query performance tuning.
Production Experience
- PostgreSQL as primary database across all production systems
- Multi-tenant shard routing with per-tenant database isolation
- 340+ EF Core migrations managed across platform lifecycle
- Lot-number tracking and FIFO inventory management schemas
- Reporting query optimization with 50% performance improvement
- Connection string resolution at runtime via middleware
Architecture Patterns
- Per-tenant database isolation for complete data separation
- Shard allocation with capacity tracking for horizontal scaling
- EF Core code-first migrations with careful rollback strategies
- Indexed queries for high-traffic reporting endpoints
- Relational modeling for complex domain workflows (sales, inventory, accounting)
- Background jobs for data reconciliation and integrity checks
Related Projects
Frequently Asked Questions
How do you handle multi-tenant databases?
I use per-tenant PostgreSQL databases with a proxy API that resolves the correct connection string based on subdomain. This provides complete data isolation without application-level filtering.
What's your approach to database migrations?
I use EF Core code-first migrations with careful versioning. I've managed 340+ migrations across a platform lifecycle, including schema changes that required data transformation scripts.
How do you optimize PostgreSQL query performance?
I focus on proper indexing, query analysis with EXPLAIN, avoiding N+1 patterns in EF Core, and denormalization where reporting performance demands it. I achieved 50% improvement on reporting queries at a previous role.