Designing and changing a schema
Keeping data consistent
- Entities and their relationships
- Constraints and referential integrity
- Transactions for related changes
- Traceable migrations
Experience
I do not see a database as an application’s storage alone. A well-designed schema, data integrity, and predictable queries are the foundation of a stable system.
When working with relational databases, I start with the relationships between data, explicit constraints, and transactions. Only then come the ORM, repository, or a particular query — tools should support a sound model, not replace it.
Today, I work with PostgreSQL most often. I previously used MySQL and MariaDB, which helps me recognise practical platform differences and choose an approach based on application needs, data volume, and operational requirements.
Not familiar with a term? Read a concise explanation in the glossary.
What I address when working with data
Data model
Safe change
Performance
Data volume
A practical approach
I use Doctrine for everyday work with entities and consistent model mapping. If a particular query needs more precise control, aggregation, or better performance, directly written SQL is the appropriate and readable choice.
I do not try to hide the database behind an abstraction at all costs. Data correctness, clarity, and appropriate performance matter more.
Designing and changing a schema
Reading and processing data
Databases and tools I use
I can help from schema design through migrations to investigating a specific issue in queries or imports.