Available for devops and developer roles
Building dependable systems with operational discipline.
I design and ship resilient developer experiences, automation layers, and production-ready interfaces.
Selected work
Real roles and projects from my CV.
Backend developer across Laravel and legacy PHP
Morphsites
Built and maintained new Laravel projects and older PHP/Statamic sites, while handling support tickets autonomously through Jira.
PHP Developer with DevOps responsibility
Rawnet Ltd.
Supported in-house developers and AWS infrastructure, built local Docker setup commands, handled WAF blocking, monitored uptime, and managed Ubuntu patching with Canonical Landscape.
Full stack PHP and Vue work for business tooling
Project Better Energy
Worked in a small team maintaining Laravel applications, built Vue.js finance wizards, and delivered a stockist map feature for EV chargers.
Experience
Recent delivery history.
2024 - Present
Personal infrastructure · Homelab and service automation
Building portfolio tooling, reverse-proxy deployments, and containerized services that I can operate end-to-end.
2021 - 2024
Platform support · Managed hosting and application teams
Kept production systems stable, handled support workloads, and improved developer delivery paths across PHP and AWS stacks.
Live architecture example
Live architecture snapshot
Topology
Docker + Linux host overview
Separate Go service exposing live Docker daemon, container, image, and Linux host telemetry.
client
-> portfolio site
-> /api/architecture (https://archview.rossmoney.me/api/architecture)
-> host Go service
containers
- rossmoney_me-cms-1
- archview
- monitoring-dashboard-1
- trivy
- trivy-docker-api
- socket-proxy
- bookstack
- bookstack_db
- watchtower
- seerr
- ackee
- ackee-mongo
- portainer_agent
- npm
- docker-daemon
images
- ghcr.io/tekkifox/rossmoney_me-cms
- ghcr.io/tekkifox/monitoring-dashboard
- ghcr.io/tekkifox/monitoring-trivy
- ghcr.io/tekkifox/archview
- lscr.io/linuxserver/socket-proxy
- rclone/rclone
- adb-dump
- nickfedor/watchtower
- portainer/agent
- lscr.io/linuxserver/mariadb
- lscr.io/linuxserver/bookstack
- lscr.io/linuxserver/wireguard
- ghcr.io/tekkifox/rossmoney_me-host-report
- ghcr.io/tekkifox/image-mosaic
- ghcr.io/tekkifox/archview
- ghcr.io/tekkifox/monitoring-lynis-report-converter
- portainer/portainer-ee
- certbot/certbot
- mongo
- tailscale/tailscale
- electerious/ackee
- node
- portainer/portainer-ee
- portainer/portainer-ce
- portainer/agent
- docker
- ghcr.io/seerr-team/seerr
- jc21/nginx-proxy-manager
- alpine
- alpine
regions
- host
- Ubuntu 26.04.1 LTS
- aarch64View full diagramShow less
client
-> portfolio site
-> /api/architecture (https://archview.rossmoney.me/api/architecture)
-> host Go service
containers
- rossmoney_me-cms-1
- archview
- monitoring-dashboard-1
- trivy
- trivy-docker-api
- socket-proxy
- bookstack
- bookstack_db
- watchtower
- seerr
- ackee
- ackee-mongo
- portainer_agent
- npm
- docker-daemon
images
- ghcr.io/tekkifox/rossmoney_me-cms
- ghcr.io/tekkifox/monitoring-dashboard
- ghcr.io/tekkifox/monitoring-trivy
- ghcr.io/tekkifox/archview
- lscr.io/linuxserver/socket-proxy
- rclone/rclone
- adb-dump
- nickfedor/watchtower
- portainer/agent
- lscr.io/linuxserver/mariadb
- lscr.io/linuxserver/bookstack
- lscr.io/linuxserver/wireguard
- ghcr.io/tekkifox/rossmoney_me-host-report
- ghcr.io/tekkifox/image-mosaic
- ghcr.io/tekkifox/archview
- ghcr.io/tekkifox/monitoring-lynis-report-converter
- portainer/portainer-ee
- certbot/certbot
- mongo
- tailscale/tailscale
- electerious/ackee
- node
- portainer/portainer-ee
- portainer/portainer-ce
- portainer/agent
- docker
- ghcr.io/seerr-team/seerr
- jc21/nginx-proxy-manager
- alpine
- alpine
regions
- host
- Ubuntu 26.04.1 LTS
- aarch64Recent commits
Last few GitHub commits from my portfolio repo.
git log
tekkifox / rossmoney_me
$ git log --oneline -n 5 123f944 feat(cms): gate the dev preview behind the VPN (#416) b675e90 fix(ci): use a valid DNS label for the tailnet node name (#415) 04e96a1 fix(ci): pass hostname input to tailscale action v4 (#414) b9aa32f fix(deps): move @vercel/cli-config to clear zod advisory (#413) f389554 ci(smoke): find the media mirror or download referenced files (#412)
Contact
Open to platform, DevOps, and development work.
I am available for contract and full-time work, and I enjoy collaborating with teams to improve delivery and reliability.