/About
Data Engineer and Full-Stack Developer
I work at both ends of a data platform. On one end, warehouses: ingestion, cleaning, transformation, and a gold layer modelled as a star schema that analysts can actually query. On the other, the production backends that generate the source data in the first place.
That combination is the useful part. Having designed the PostgreSQL schema an application writes into, I know why a column is nullable, why a timestamp is stored the way it is, and where the dirty rows come from. Data modelling is easier when you have been on the side that produced the mess.
I like being responsible for the whole thing: the API and the schema, the interface on top of it, and keeping it online after launch. On the newspaper project that meant taking it from an empty database to a live product editors and readers use every day, then handing it to the team who run it on their own now.
/Experience
Where the work happened
/Skills
What I reach for
Backend
- Python
- FastAPI
- SQLAlchemy, Alembic
- REST API design
- JWT auth and role-based access
- Celery
- Django
- pytest
Data engineering
- Microsoft Fabric (Pipelines, Dataflows, Notebooks)
- Medallion architecture (bronze, silver, gold)
- Star-schema design
- PySpark
- Pandas
- Great Expectations
Databases
- PostgreSQL schema design
- Indexing and query tuning
- Full-text search (tsvector, GIN, ts_rank)
- Redis
- InfluxDB
- Delta Lake
Frontend
- Next.js
- React
- TypeScript
- Responsive UI built from design files
Platform
- Docker and Docker Compose
- Nginx
- GitHub Actions (CI/CD)
- Linux servers
- Git
- AWS Certified Cloud Practitioner
Reporting
- Power BI
- SQL
- Power Automate
/Credentials
- Commercial Software Development: Data Engineering
- Certified Cloud Practitioner Essentials
- Backend Developer Course