PostgreSQL Performance Consultant
PostgreSQL performance consultant for slow queries, missing indexes, locking, bloat, and connection limits. EXPLAIN-driven audits with measured before/after. Remote, senior.
If your database is the bottleneck and you want a PostgreSQL performance consultant who works from query plans instead of guesses, that’s my favourite kind of engagement. I’m Kuldeep Pisda โ a senior backend engineer and former startup CTO in Bengaluru. I treat Postgres as a first-class part of the system and fix the actual cause, measured before and after.
What a performance engagement covers
- Slow-query diagnosis โ reading
EXPLAIN (ANALYZE, BUFFERS)to find the real problem: a sequential scan throwing away rows, a bad join order, a sort that should be an index, or an N+1 storm from the ORM. - Indexing strategy โ composite indexes in the right column order (equality before range), partial and covering indexes, index-only scans โ plus removing the unused indexes quietly slowing every write.
- Locking and concurrency โ diagnosing lock contention, long-held transactions,
and the
ACCESS EXCLUSIVEmigrations that stall production; moving correctness into constraints where it belongs. - Bloat and autovacuum โ table/index bloat, dead tuples, and tuning autovacuum so it keeps up instead of falling behind under write load.
- Connections and pooling โ right-sizing connections and putting PgBouncer in front so a traffic spike doesn’t exhaust the server.
- Scaling the schema โ partitioning large tables, archiving cold data, and safe
online migrations with
CREATE INDEX CONCURRENTLY.
What “measured” means
My best-documented engagement is public: taking a hot Django endpoint from
~30 seconds to roughly 200ms,
with every step justified by the plan. The diagnosis started with query logging โ
one request was firing just over 900 queries โ and the before/after
EXPLAIN (ANALYZE, BUFFERS) output is right there in the post: a sequential scan
discarding 38,588 rows became a composite-index scan reading eight cached buffers,
sort node gone entirely. Performance work is also judgment about what not to put
in the database: I’ve written up why we stopped putting enums in
Postgres on a high-churn multi-tenant schema,
where ALTER TYPE can’t run cleanly in a transaction and retiring a value means a
table-rewriting ACCESS EXCLUSIVE lock. Every change I ship comes with the plan โ
and the reasoning โ that justifies it.
How engagements work
Usually a focused audit: send me the slow query, its EXPLAIN output, table sizes,
and the schema, and I come back with the specific fix and the reasoning. From there
it’s a one-off, a short optimization sprint, or an ongoing retainer as your
database-of-record grows. Remote, IST, US/EU overlap.
FAQ
What do you need to start?
The problem query, its EXPLAIN (ANALYZE, BUFFERS) plan, table sizes, and the
relevant schema. That’s usually enough to pinpoint it.
Can you work on a production database safely? Yes โ I work read-only first, test changes off-peak, and flag any migration that would lock a large table before it runs.
Do you tune the server itself?
Within reason โ work_mem, autovacuum, and pooling settings that matter for your
workload. I won’t hand-wave postgresql.conf changes without a reason.
RDS, Aurora, Cloud SQL, or self-hosted? All of them. Managed Postgres hides some knobs; I work within what your platform exposes.
What does it cost? The performance audit is $4,000 โ written findings with ranked fixes in 7 calendar days, plus a 60-minute walkthrough call โ and the fee credits toward any retainer or build started within 60 days. If you just need a second opinion on one decision, that’s $500 for a 90-minute call with a written recommendation within 48 hours. Ongoing advisory runs $2,000/month: two 60-minute calls plus async review of up to 4 design docs or PRs. Prices are in USD plus GST where applicable, in writing before we start.
How is this different from general Postgres work? This is the performance-audit angle; for RLS, pgvector, and broader schema design see hire a PostgreSQL expert.
Let’s talk
Send me the query that’s keeping you up at night โ get in touch, or grab a time below:
Related: Hire a PostgreSQL Expert ยท Hire a Django Consultant ยท Hire a Backend Engineer in India ยท Hire a Django Developer in India