CODEVIBE

Digital

008

Databases

Databases designed so the application does not have to lie.

Schema, indexes, migrations and access for Postgres-first products.

UI cannot rescue a confused schema. We design tables, keys and constraints so the application code stays thin and the reports stay true.

Postgres is our default. We will not introduce a new database because a blog post was exciting this week.

Benefits

What this changes in the business.

    01

    Fewer nulls that mean three things

    States are explicit. ‘Empty’ is not a personality.

    02

    Queries that stay cheap

    Indexes follow the questions you actually ask.

    03

    A history you can migrate

    Files in git, not a production database edited by hand on a Friday.

Process

How the work moves.

  1. 01

    Listen to the sentences

    ‘A booking belongs to a boat on a night’ is a schema. We write those sentences down.

  2. 02

    Normalise, then bend on purpose

    Denormalisation is a measured sin, documented.

  3. 03

    Load a realistic slice

    We test with ugly, duplicated, real-ish data — not ten tidy rows.

  4. 04

    Put a fence around it

    The app role cannot drop tables. Reporting cannot see secrets it does not need.

Technology

Tools we actually ship with.

  • PostgreSQL
  • Supabase
  • SQL migrations
  • Explain/analyse
  • Logical backups

Questions

Straight answers.

Yes, with expand/contract migrations. Big-bang rewrites of live data are a last resort.

Places

Where this work sits.

Industries

Sectors that often need this.

Start a project

If every feature request starts with ‘the table cannot…’, the database is the project.

Tell us what you are building. We will reply with a clear next step — usually on WhatsApp.