Jon Tavernier

Technology

Current Interests

Analytical Data Engineering remains my profession, area of expertise, and main interest. I explore, design, install, and operate technology in that realm in my career.

I also dabble in other areas such as build pipelines, infrastructure-as-code, container orchestration, static website development, and learning cloud technologies and stacks. Building my own site lets me dive into many technologies. So, I think everyone in tech should consider building their own website.

My development setup is:

My Website

Most people in tech should consider developing a personal website. A website touches so many layers of technology!

You can explore areas such as those listed below when building even the simplest website. My static website is over-engineered for sure. But I enjoy learning about all these areas and my career has benefited from doing so.

  • Frontend: HTML, CSS, JavaScript, Images, etc.
  • Backend: REST API in whatever language, Processing, etc.
  • Storage: Object Stores, Data Stores, Caches, etc.
  • Networking: DNS, Load Balancers, etc.
  • Version Control: Git, Pull Requests, etc.
  • Development Cycle: Local to Development to Production, Linting, Unit Testing, etc.
  • CICD: Build, Test, Deploy, and automate it.
  • Analytics: Site Visits, Custom Analytical Events, etc.
  • Performance: Caching, Speed Test, etc.
  • Documentation: Repos, Processes, etc.
  • Content: CMS, Content Platform, etc.
  • Search: Build your own, Use a provider, etc.
  • Management: Breaking down a large effort into tasks.

Here is how I use each of those areas with my current website:

  • Frontend: CSS and minor Javascript. Leaflet with OpenStreetMap for my travel page.
  • Backend: None for now, but I love working with FastAPI. I’d also like to explore Cloudfare sometime (KV store, edge workers, etc.).
  • Static Site Generator: Custom one, which is fun to build for such a simple site as this one.
  • Storage: Google Cloud Storage for backups and whatnot.
  • Networking: AWS Route 53 for DNS.
  • Version Control: Git and GitLab.
  • Infrastructure: Terraform
  • Development Cycle: I develop locally and git commits in Gitlab to the main branch wil deploy to Cloudflare.
  • Analytics: TBD. I am unsure whether I want to add Google Analytics to my site. When introducing a REST API, I will add an analytical event stream.
  • Performance: Cloudflare Pages, Speed Test, etc.
  • Documentation: Repo ReadMes and other guides. Write Clear and Concisely
  • Content: Contentful for Trips, Fun Facts, etc. I still use Goodreads and Garmin for that external data.
  • Management: Trello or simple To Do lists in my repo's ReadMe.

All this stuff is free too. I am using free tiers on all the services.

Architecture Diagram

Website architecture diagram.
Website diagram made with Excalidraw

I also use UptimeRobot and Grafana for uptime checks.

Site Build Status

Gitlab Code Coverage Coverage
Gitlab Build Status Gitlab