Eric Firestone is a Senior Software Engineer based in Austin, Texas, with 15 years of experience building reliable, high-performance systems at Apple and Square. He blends mobile and backend expertise—contributing notable fixes and enhancements to the iOS functional testing framework KIF and optimizing Swift runtime performance in Square's widely used Wire protobuf/gRPC library. Eric has hands-on experience troubleshooting tricky UI and accessibility tap issues, improving keyboard and memory-warning handling, and speeding up encoding/decoding paths for maps and repeated fields. His work demonstrates a pragmatic focus on correctness, performance, and developer tooling that improves both product quality and engineer productivity. Comfortable moving between low-level performance fixes and cross-platform protocol work, he brings a quietly thorough approach to solving hard engineering problems.
Keep It Functional - An iOS Functional Testing Framework
Role in this project:
Mobile Developer (iOS)
Contributions:60 commits in 2 years 2 months
Contributions summary:Eric primarily contributed to bug fixes and feature enhancements within the KIF framework, an iOS functional testing framework. Their work involved correcting issues related to UI element tapping, specifically addressing incorrect tap locations and improving the accuracy of taps on various UI elements, including those using gesture recognizers like UISwitch. They also implemented improvements for keyboard handling, and added the ability to find and tap on elements that use accessibility labels, including improvements for navigating navigation bar buttons. Moreover, they integrated a step to simulate memory warnings.
gRPC and protocol buffers for Android, Kotlin, Swift and Java.
Role in this project:
Back-end Developer
Contributions:96 reviews, 129 commits, 27 PRs in 2 years 7 months
Contributions summary:Eric focused on optimizing the Swift runtime for the `square/wire` repository, which involves gRPC and protocol buffers. Their contributions centered on enhancing integer decoding and encoding, adding features to handle repeated data, and incorporating support for encoding and decoding different data types. These changes improved performance, particularly in the handling of maps and various data representations.
protocol-buffersprotobufgrpcandroidbuffers
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
Eric Firestone - Senior Software Engineer at Square