CI/CD Delivery Platform for 75+ Microservices
Replaced a manual SVN release process with a Jenkins and GitLab pipeline suite covering build, merge evaluation, deployment, backup and sub-minute revert.
- Jenkins
- GitLab CE
- Groovy
- Docker
- +3
Projects
Internal platform work is written up as case studies since the code isn't public. The open-source iOS and ML projects link straight to their repositories.
Replaced a manual SVN release process with a Jenkins and GitLab pipeline suite covering build, merge evaluation, deployment, backup and sub-minute revert.
Evaluated free Git platforms for an SVN-bound business unit, migrated the codebase to GitLab CE, and published the DevSecOps guidelines, tooling and training that went with it.
An OpenTelemetry, otelcol and OpenSearch pipeline correlating metrics, logs and traces into automated root-cause analysis. Later implemented in the APM module of the product.
Ran a POC comparing Artifactory OSS, Nexus OSS and the GitLab package registry, then standardised internal library and container distribution on GitLab CE.
Replaced direct developer database access with a governed Apache Superset layer across DEV, UAT and PROD — GitLab SSO, row-level security, query limits, and dashboards for management reporting.
Replaced manually-created, permanently-shared database users with a Bytebase approval workflow issuing time-bound credentials behind pgbouncer, authenticated through GitLab.
Prometheus and Grafana across infrastructure and applications, wired to webhook-triggered Jenkins jobs that resolve routine incidents automatically.
Procured a source-composition-analysis tool, ran the scans across the product, and removed GPL and commercially-licensed dependencies from a shipping enterprise codebase.
This site and my other static properties run on private S3 origins behind CloudFront, with TLS from ACM, DNS in Cloudflare, and the whole stack described in Terraform.
My personal services run at home and reach the internet through Cloudflare Tunnels — no port forwarding, no public IP exposure, and no inbound firewall rules.
Three Professional and three Associate certifications across architecture, DevOps and operations.
A self-hosted stack covering identity, search, reverse proxying, monitoring and backups, kept in version control.
A note-taking app for anglers. Scrapes species data from Fishbase, stores it offline with SwiftData, and pages results in as you scroll.
A Reminders-app clone built to learn persistence: SwiftUI throughout, SwiftData underneath, light and dark theming.
A SwiftUI weather client built on the OpenWeather API.
An on-device CoreML model trained on Google's QuickDraw dataset that recognises sketches in real time as you draw them.
A lightweight native reader for Y Combinator's Hacker News API.
A todo app with Firebase authentication and Firestore-backed real-time sync across devices.
A Swift messaging experiment — my most recent iOS side project before the platform work took over.
Real-time action-detection translating sign language into text, using an LSTM over pose keypoint sequences.
Contributions to a Swift text-to-speech reader that speaks text back word by word, sentence by sentence, or paragraph by paragraph.
Nothing here yet.