Every iOS pull request at Thumbtack used to wait 30 to 40 minutes for Continuous Integration (CI) — sometimes over an hour on Fridays. We built Smart Test Selection (STS) to cut that in half. Here’s how. I’m a Senior Software Engineer on the iOS Infrastructure team. We own the CI/CD pipelines, build tooling, and shared frameworks that keep Thumbtack’s…
#mobile
11 posts
21 Apr
31 Mar
How we chose Roborazzi for fast, easy, and high-fidelity screenshot tests of our Android apps, without needing to run them on an emulator. As mentioned in our earlier blog post , screenshot tests are a fundamental part of our testing pyramid at Thumbtack. They validate that our UI code renders correctly. They catch UI regressions as our code evolves. They…
4 Dec 2025
Picture this: you find a charming old board game at a garage sale, bring it home, gather some friends—and snap. The 50-year-old plastic components break instantly. You search the web for help to replace this fun and unique game mechanic but there’s nothing to be found. So naturally, you roll up your sleeves and build your own mobile version. No…
13 Nov 2025
How Nativewind can speed up your React Native Development If you're anything like me, after working on a few web projects with Tailwind, it can feel like a drag to return to stacks that use other styling libraries. Tailwind has become, for myself, and many other developers, a standard styling paradigm. When starting my most recent React Native project, I…
28 Oct 2025
NVIDIA is delivering the telecom industry a major boost in open-source software for building AI-native 5G and 6G networks. NVIDIA Aerial software will soon be released as open source, making it available on a variety of NVIDIA platforms, including on NVIDIA DGX Spark. With open-source software and a powerful and accessible supercomputer to run it […]
20 Sept 2022
You grinded LeetCode, nailed the interview process, and got an internship at an amazing company. Congrats! But now it’s week three of your internship, you have no idea how anything works, and you’ve written one line of code in the past two days. How do you ask for help? Whom do you ask for help?…
28 Mar 2022
In the first post about the Duplo initiative, we discussed the reasons for launching a project to revamp Slack’s mobile codebases, and what we accomplished in Duplo’s initial Stabilization phase. This post will explore modularization, and then there will be a third post to describe how we modernized our codebase and the overall results of…
10 Nov 2021
We use plenty of open source tools at Slack and we’ve benefited immensely from the wider Android, Kotlin, and Gradle communities. We also try to be good citizens by giving back. This includes things like sponsoring the Kotlin Lang Slack, contributions to projects we use like Anvil and Insetter, sharing projects of our own like…
27 Jun 2019
Introducing the initial release of Firefox Preview (GitHub), an entire browser built from the ground up with GeckoView and Mozilla Android Components. Firefox Preview is our platform for building, testing, and delivering unique features. Though still an early preview, this is our first end-user product built completely with these new technologies. Plus, we share an update on where GeckoView is…
27 Jul 2017
Clever Instant Login makes it easy for students to log in to their learning applications, saving valuable instructional time. By using the widely-deployed OAuth 2 protocol, our team tries to save valuable development time and make it easy for our app customers to create integrations. OAuth 2 has been a fairly smooth road, but we […] The post Clever Instant…
3 Jan 2017
This Bazaarvoice blog entry is co-authored by Tanvir Pathan as part of a Bazaarvoice internship project on the Bazaarvoice Mobile Team. Automated testing of native mobile applications has long been a pain point in the world of mobile app development. If you are creating and distributing apps or open source SDKs across two or more major platforms […]