Resume
Last updated: 7th December 2024
Key Skills & Achievements#
Over 13 years experience of writing Android applications and libraries, with a passion for great interface design.
- Written over 50 blog posts (and more here) about Android development practices, many of which were/are the defacto guidance on the related topic
- Given over 25 talks about Android development practices, many of which were/are the defacto guidance on the related topic.
- Wide experience of Android technologies including all things UI, Jetpack Compose, Kotlin Coroutines and app architecture.
- Over 3 years experience building Kotlin Multiplatform projects and apps, working on Android, iOS an more.
Projects & Libraries#
- Previously, lead engineer on AppCompat for ~5 years, enabling apps to use a consistent design covering 99% of devices.
- Previously, lead engineer on the ‘ Design library’, providing developers with implementations of Material components. This was the base for the Material Design Components for Android.
- Created the Tivi sample app, demonstrating modern development practices for Android.
- Created the Haze library for Compose, enabling easy background blurring for apps.
- Created the Insetter library, providing an easy to use layer over WindowInsets.
- Created the Accompanist library, providing functionality which is not yet provided by the core Jetpack Compose libraries: image loading, and insets support.
- Created the Palette library, enabling easy-to-use color extraction.
- Original creator of the PhotoView library, enabling easy pinch-zoom support for Android.
Career#
Senior Staff Software Engineer – The Trade Desk#
May 2023 – now
Technical Lead for the Clients engineering team working on Ventura OS. More to come later.
Staff Software Engineer – Twitter#
September 2021 – November 2022
Technical Lead for the Client UI Android team, leading a team of 5. The team’s primary goal is to help Twitter’s feature developers iterate and ship fast, ensuring that developers are able to work in a pleasant, modern, UI-first environment, and building and maintaining a consistent, thoughtful, accessible user experience throughout the app.
Staff Developer Relations Engineer – Google#
January 2013 – August 2021
Working as part of the Android Developer Relations team. As well as the engineering projects listed above:
- Zeroth customer work, making sure our products are fit for developers to use.
- Participated in developer outreach, such as writing technical blog posts, new technical documentation, giving talks at large conferences and online.
- Gave direction and feedback on feature proposals for Android Jetpack and Platform.
- Part of leads group, setting direction for and nurturing the team.
- Managed multiple teams, in different locations, across different timezones, including performance management.
- Led numerous engineering and outreach projects.
- Conducted interviews.
- Mentored junior engineers.
Education#
Aston University Sept 2006 – June 2010
Computing Science BSc (Hons) 1st Class
Previously#
- Omnifone - Android Developer (June–August 2012)
- Mobile Interactive Group - Android Developer (Jan–May 2012)
- BSkyB - Android Developer (Sept 2011–Nov 2011)
- OneLouder Apps - Senior Android Developer (July 2011–Jan 2012)
- IBM Hursley - Software Engineer (June 2008–Sept 2009)
- Developed Friendcaster for Facebook, the most popular third-party Facebook client for Android. Previously ranked in the top 100 on Google Play, having had over 6.5 million user installs to date.