Database Indexing Is Not Free: Understanding Performance and Trade-offs
A practical look at B-Tree indexes, write overhead, page splits, fill factor, and why ID strategy matters for production databases.
Jakarta, Indonesia · Software Engineer
I am a backend-focused Software Engineer with 4+ years of experience building production systems in Go, mostly around financial products, transaction flows, async workers, and service integrations.
Go, event-driven architecture, database performance, and resilient service design.
Selected work
Writing
A practical look at B-Tree indexes, write overhead, page splits, fill factor, and why ID strategy matters for production databases.
A short note on fixed-size arrays, contiguous memory, direct addressing, and why array access is O(1).
Experience
Bank Raya · Jakarta
Sept 2024 - Present
Stack
Go, PHP, Ruby
MySQL, PostgreSQL, MongoDB, Redis, OpenSearch
RabbitMQ, Google Pub/Sub
GitHub Actions, Kubernetes, Linux, Datadog, Rollbar
Event-driven architecture, Concurrency, RBAC, Caching, Retries, API integration
Unit testing, Code review, CI/CD, Agile/Scrum