Thomas Catterall is a Senior Software Engineer with 12 years of experience building resilient mobile and backend systems, currently focused on engineering at Toast after a multi-year tenure leading iOS architecture and test infrastructure at Wayfair. He combines hands-on Swift development and CI/CD automation with incident leadership and cost-optimization—having driven an 80% reduction in testing costs and led postmortems and on-call for production apps. An active open-source contributor, he has improved core Swift Foundation JSON handling and enhanced the popular Moya networking framework with deterministic stubbing and better ReactiveCocoa integrations. Trained in classics and linguistics at Oxford, he brings a rigorous, analytical approach to design and debugging and often bridges technical and non-technical stakeholders to deliver faster, more reliable mobile experiences.
12 years of coding experience
7 years of employment as a software developer
Literae Humaniores, Philosophy and Linguistics, Provisional 2:1, Literae Humaniores, Philosophy and Linguistics, Provisional 2:1 at University of Oxford
The Foundation Project, providing core utilities, internationalization, and OS independence
Role in this project:
Back-end Developer & QA Engineer
Contributions:15 commits, 11 PRs, 27 comments in 1 year
Contributions summary:Thomas primarily focused on enhancing the `NSJSONSerialization` component within the Foundation framework. Their contributions involved implementing boolean serialization, fixing encoding issues related to `NSNumber`-boxed booleans, and implementing the `objCType` for `NSNumber`. Furthermore, the user also tested and corrected aspects of boolean serialization, showing a focus on correctness and thoroughness. Additionally, they implemented the `CustomReflectable` protocol for the Notification struct, enhancing its debugging capabilities.
Contributions:31 commits, 11 PRs, 21 pushes in 1 month
Contributions summary:Thomas focused on enhancing the ReactiveCocoa integration within the Moya framework, introducing a date scheduler for deterministic stubbing and adding tests for this feature. They refactored existing code to increase test coverage and improve code reusability, particularly within the ReactiveCocoa extension. Furthermore, they addressed initializer compatibility and refactored the plugin system to use a protocol, increasing modularity. They also made updates to the project to ensure proper error handling.
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial
Thomas Catterall - Senior Software Engineer at Toast