Senior Database Reliability Engineer (PostgreSQL, IaC)

Capital.comWarsaw, MazoviaRemoteFull-timeSenior, 5–8 yearsListed 17 hours ago

Apply now

About this role

Responsibilities:

- Design and run highly available PostgreSQL across zones and regions, with automated, tested failover and fencing against split-brain.

- Define all database infrastructure as code (clusters, parameters, networking, access, monitoring and backups), reviewed by peers and applied through CI/CD pipelines, with drift detection.

- Build self-service database provisioning so product teams get a production-ready database without waiting on a ticket.Plan and execute migrations, upgrades and table moves with zero or near zero downtime, including cross-version, cross-cluster and cross-cloud work.

- Partner with developers on schema changes, queries, connection pooling, transaction scope, retries and expand-and-contract migrations, so database issues are fixed at their source.

- Define SLOs and build SLO-based alerts and dashboards (Prometheus, Grafana or similar) that catch latency and capacity problems before clients do.

- Design backup and recovery, and prove it with scheduled restore and failover tests that measure RTO and RPO and produce evidence for auditors.

- Keep cost in view: right-size instances and storage, and choose the cheapest option that meets the requirement.

- Secure the data: least-privilege access, secrets from a secrets manager, encryption at rest and in transit, audited access and PII masking.

- Lead and take part in incident response and on-call, write blameless post-mortems and make sure their actions get done.

- Replace manual runbooks with automation, and document what remains.

Requirements:

- Deep PostgreSQL production experience. You have run PostgreSQL at scale and understand MVCC, vacuum and bloat, locking, replication (physical and logical) and query planning from real incidents, not only from documentation.

- Infrastructure as code as your normal way of working. Everything you build lives in version control and is reviewed before it is applied.

- CI/CD in your day-to-day work. Your infrastructure and database changes, including schema migrations, reach production through pipelines. If console clicks, SSH changes or wiki steps are how changes normally happen in your current role, this position is not the right fit.

- 5+ years running production databases as a DBRE, SRE, platform or database engineer, ideally with a large part on AWS (RDS or Aurora).

- Experience designing high availability and disaster recovery: replication, automated failover, multi-region or multi-cloud redundancy, and the trade-offs between RTO, RPO and cost.

- A track record of zero-downtime changes: online migrations, major version upgrades or moving data between clusters.

- Understanding of how applications use databases: connection pools, ORMs (for example Hibernate), transaction scope, retries and idempotency, and safe deployment order.

- Observability skills: you define what to measure, alert on SLOs and verify changes with data.Scripting in Python, Bash or Go to automate operational work.

- Comfort in a regulated financial services environment, where access control, encryption and audit trails are non-negotiable.

- Clear communication: you reason out loud, own outcomes and partner with developers instead of gatekeeping.

Nice to have:

- Terraform and Ansible specifically, since they are our current tools.

- MySQL in production.

- Redshift, ClickHouse or DynamoDB.

- Logical replication or CDC tooling (pglogical, AWS DMS, Debezium).

- Kubernetes and running Java services in production.

- Linux performance tuning and troubleshooting on self-managed database hosts.

- Vault or another secrets manager.