I'm based in London, England. My hobbies are writing software, reading, DIY, football, & FIFA.
Axiom Inc. 2016-Present
CEO & Co-Founder
Axiom is a startup founded by my friends and I that focuses on cloud appliances for devops teams. We are currently building our first product, Watchly.
More details soon!
Xamarin Inc. 2014-2016 (Acquired by Microsoft)
Technical Lead, Xamarin Insights
Xamarin Insights is the primary way for Xamarin developers to monitor their apps in the wild. The product was built from scratch at Xamarin by myself and my team, and was made available to all Xamarin customers in preview within 6 months of development.
My role is split into three responsibilities:
- Producing and maintaining the entire system architecture, from the clients installed on phones to the cloud service and reporting infrastructure. Designing database schemas across multiple stores
- Devops: designing and configuring the service infrastructure, multi-cloud (AWS, Azure, MacStadium), PaaS and self-host, provisioning, security, networking, etc
- Leading engineering on the cloud service, bootstrapping the services and their features, producing documentation for the team
- Code reviews, issue management, releases
- Work with product and design teams on new and existing features; take these features and plan
them with team members, taking into account architecture, testing, release cycles, etc
- Brought in a team of four (including myself) to Xamarin to start Insights • Grown the team to 10 engineers from various parts of the world
- Manage the daily workload of each team member
- Manage weekly catch-ups, obstacles, issues, etc
- Manage external contractors, setting expectations, pricing
- Produce definition, competitive analysis, reporting to exec team
- key metrics/NPS monitoring
- Working with internal teams to understand requirements and provide data they require
(this was pre-product manager, I now work with a PM day to day)
Ayatii Ltd 2013-2014
Ayatii was a startup focused on monitoring media piracy across multiple channels to produce statistics and actionable information for media owners. The information was acquired through a complex system of backend services for each kind of media transport (torrents, IRC, online streams, social media), and this data was funneled into storage, transformed, and presented to clients via an online Dashboard.
- Frontend -> backend architecture, taking into account the various backend services that were required to constantly monitor piracy
- Lead development on the web dashboard, core backend services, database, and analytics generation
- Hiring, team and work management, communication
- Technical Sales, both pitching the product and working with customers to integrate our product into their workflow
Canonical Ltd 2008-2013
System Architect, Technical Lead
- Responsible for designing a scalable and coherent system architecture across multiple desktop and mobile form-factors
- Establish a leadership in software architecture inside the division, work with teams to design robust, scalable, and testable software systems
- Conduct research and prototyping into future technologies, work across key divisions to help steer the future of Ubuntu as a platform and experience
- Work across many engineering teams ensuring that those teams, while meeting their own goals for their form-factor, continue to contribute to the wider platform that we are building
- Helping to define and create Ubuntu’s first Software Development Kit, with the view to provide a professional-grade development environment to existing and would-be Ubuntu developers
- Use established relationships between OEM division, engineering managers, design teams, and product managers to ensure system architecture meets requirements and can be delivered in time. Identify gaps in existing engineering teams for recruitment
- Responsible for delivering the Unity Desktop Shell to millions of users across the world.
- Develop technical architecture and specifications from visual designs and use-cases provided by the Design Team
- Act as a release manager for the projects that comprise Unity
A flexible command-line client for any gRPC server for quick and easy testing of APIs. grpcc is writtern in nodejs but can talk to a gRPC service written in any language.
A HomeKit bridge for the British Gas Hive Active Heating System. Allowed manipulation of the thermostat & hot water control via Siri (iPhone & Apple Watch), and other HomeKit applications.
Skizze is a sketch data store to deal with all problems around counting and sketching using probabilistic data-structures. Worked on API definition, tooling, project management, release management.
Golang bindings for Skizze. Developer & maintainer.
Node.js bindings for Skizze. Developer & maintainer.