About

Welcome to my digital space

About me

My name is Cristian Capsuna and I am on a learning journey. I started out as a mechanical engineer, but I was soon to discover the power of computers when I wrote some simple scripts to automate boring data manipulation tasks. I know from someone working for my former employer that, 6 years after I made one of the bigger tools, it is still in use and generating value for that business. That is powerful to me. After that it just started to snowball and it's ongoing.

Currently I am a data engineer but I aspire to build a broad skillset that will, hopefully, enable me, at some point in the future, to bring to life my own ideas. That's one of the reasons I started building this self-hosted website, which will continue to evolve.

Along the way I am looking to employ my skills in a job that is interesting, beneficial to society and, importantly, pays well.

Personal projects

This website

You might be surprised to hear that this trivial (I chuckled as I wrote that) single-page website is built using the following tools:

  • Dioxus for the front end and back end. I also made my very first open source contribution for this part of the project. It's small. Don't laugh. 😁
  • Traefik for the reverse proxy. With set-and-forget Let's Encrypt SSL certificates. I only found out about this by reading Traefik's docks. Thanks Traefik ! 🙏
  • Docker for it's virtualization, isolation and multi-platform images. That last one blew me away 🤯.
  • GitHub Actions with a self hosted worker for the deployment. 🚀
  • Docker Swarm for rolling updates. What amazing functionality ! 🔥
  • In the future I want to use SurrealDB for the database. 🌟

Domain ip updater

My website is currently being served via a residential internet connection with dynamic IP. I needed a way to keep that automatically updated and I wanted to write this in Rust, like the previous project. It can be found this. For security, it uses an API token with limited permissions and is stored in an encrypted GPG file. The user would have to set GPG up with a key pair. In the future I want to look at a more modern approach, maybe using the Linux Secret Service or HashiCorp Vault.

Work experience

Data engineer @ Ingersoll Rand | Mar 2023 - Present

Helping IR transform a fragmented 20+ ERP landscape into a modern, centralized business intelligence data flow. As part of my day to day I am also doing project management. I am currently working on a project to move one of the IR businesses into the new landscape and for this I run a weekly stakeholder update meeting and manage two external resources.

SQL • DBT • Snowflake • Datafold • Python • Qlik • SQLFluff • Snowflake Python connector • boto3(S3 connector)

Data engineer @ RealVNC | Apr 2022 - Mar 2023

Helping RealVNC implement modern tools like DBT for data model management, Airflow for task orchestration and Python API connectors to ingest new data from Google services for enabling marketing ROI analysis. A tool called Stitch was used to ingest data but it would have been costly to use it for the Google services due to the high number of number of rows generated.

SQL • DBT • Postgres • Python • PowerBI

Data engineer @ Jaguar Land Rover | Sep 2021 - Apr 2022

This was a formative period for me as I was transitioning from my old career as a mechanical engineer. I was on a JLR sponsored 2 month course and, after that, most of my time was spent learning the new data stack that JLR wanted to move to. Like replacing Luigi with Airflow, Google repos with GitLab, implementing a DBT like service called Dataform acquired by Google and implementing an Airflow like service called Composer also from Google.

Education

Birmingham City University 2013-2016

BEng Automotive engineering, 2.1 : Spent 3 years and £27,000 to learn very little about things that I will end up using even less throughout my life

Business Academy Aarhus 2011-2013

Advanced Professional degree in automotive technology : Spent 2 years learning cool stuff about cars. Thankfully the education was free.