About Me
Hello, I’m Sam, a backend software engineer at Sky specialising in scalable Scala microservices for content discovery recommenders. I work across multiple streaming platforms, notably Peacock. My current tech stack includes Kubernetes, Kafka, Cassandra, and Cats Effect.
I thrive on applying technology to crack complex problems that spark positive change. I’m always keen to push the boundaries of my technical expertise, hunting for elegant solutions to real-world puzzles.
When I’m not wrangling code, I’m usually tinkering away on some personal project. Right now, I’m developing SugarSentry, an ESP32-based ambient blood glucose visualisation device for my fiancée. It’s my way of hacking her (extremely demanding) diabetes management, if even just a little.
Experience
Building and maintaining high-performance Scala microservices for major streaming platforms including Peacock, Sky TV, Showmax, and Showtime:
- Migrating Akka microservices to the Cats Typelevel stack, because who doesn’t like a bit of Type Tetris?
- Implementing OpenTelemetry (Otel4s) for distributed tracing, enhancing observability
- Upgrading services from Scala 2 to Scala 3
- Rewriting Akka HTTP/Streams services to Tapir/FS2 Streams
- Scaling services to handle record-breaking high-traffic events
- Implementing hexagonal architecture for improved modularity and testability
- Wrangling multi-tenant/region Kubernetes clusters across Europe/USA/Africa on EKS/GKE
- Utilising Istio service mesh for advanced traffic management and security
Developed and maintained Scala microservices for content discovery recommenders across multiple streaming platforms:
- Deployed services in Kubernetes on GCP and AWS
- Set up and maintained Jenkins and ArgoCD CI/CD pipelines
- Worked with Kafka and Cassandra for data processing and storage
- Optimised services for global high-traffic scenarios under strict performance constraints
- Practiced test-driven development to ensure code quality and reliability
Full-stack application development across various technologies:
- Built backends using Java (Spring Boot) and Node.js / Express
- Developed frontends with JavaScript / React, making UIs that spark joy
- Implemented comprehensive testing strategies using JUnit5, Mockito, Jest, and Cypress
- Worked with MariaDB/MySQL databases
- Managed Jenkins/Concourse deployment pipelines
Took time for personal development and deep-dive into technical learning:
- Honed skills in Python programming, data structures and algorithms, object-oriented design patterns, and Django web development
- Explored unit/integration testing methodologies
- Delved into cybersecurity, including OWASP Top Ten, HackTheBox, and Kali Linux
- Sharpened Linux administration skills and mastered GNU Core Utilities
- Contributed to open-source projects and tackled programming challenges on LeetCode and Codewars
Orchestrated the development and maintenance of over 100 websites:
- Coordinated a cross-functional team using Jira and agile methodologies
- Optimised server load balancing and managed DNS for all digital properties
- Conducted web application security testing to ensure robust defences
- Automated project management processes, enhancing efficiency and meeting tight deadlines
- Ensured adherence to web accessibility standards and brand guidelines
- Crafted and executed email marketing campaigns using Infusionsoft CRM
Projects
ESP32-based ambient blood glucose visualisation device with e-ink display, utilising Dexcom API and environmental sensors.
SugarSentry is an ongoing project that combines software and hardware to create a stylish and practical health monitoring device:
- Developed in C++ for the ESP32 platform, highly optimised for power efficiency
- Leverages low-power design principles for extended battery life
- Integrates with Dexcom API to display real-time blood glucose levels and historical data on an e-ink screen
- Designed as a bedside/desktop ambient display for convenient glucose level monitoring
- Incorporates BME280 and VCNL4040 sensors for environmental monitoring
- Features battery-powered operation with recharging circuits for enhanced portability
- Demonstrates skills in embedded systems, API integration, and hardware interfacing
An automated and extensible anti-stylometry tool written in Python, exploring the intersection of privacy and natural language processing.
This project addresses the need for tools that protect an individual’s writing style from identification in an era of increasing digital privacy concerns:
- Implements various anti-stylometry techniques
- Provides an extensible framework for future enhancements
- Raises awareness about the importance of linguistic privacy
- Balances ethical considerations with technical implementation
A Python tool to monitor your public Amazon wishlist for price reductions.
This project showcases proficiency in web data extraction using Python and BeautifulSoup, while also highlighting experience with the Python packaging ecosystem:
- Comprehensive test coverage using pytest
- Static type checking with mypy
- Concise documentation using Google-style docstrings
- User-friendly README and streamlined installation process
Education
Portsmouth University
BSc Psychology
2009 - 2012
My psychology studies at Portsmouth honed my skills in analysing human behaviour and quantifying interactions, providing valuable insights into how people engage with systems. This understanding is crucial in today’s software-integrated world, where usability is paramount.
My dissertation explored the efficiency of information sharing in face-to-face versus virtual (webcam-to-webcam) communication, a topic that has become increasingly relevant in our digital age.
A Little More About Me
Outside of cyberspace, you might find me:
- Exploring the great outdoors
- Enjoying a good PC game
- Tinkering with audio hardware
- Getting lost in a good Sci-fi or Fantasy novel
Some books I’d recommend:
- Malazan Book of the Fallen (an epic journey!)
- Neuromancer
- World War Z
- Dune
- The AI Does Not Hate You: Superintelligence, Rationality and the Race to Save the World