Dave Smith is a Principal Firmware Engineer with 14 years of hands-on experience designing hardware, firmware, and mobile software for embedded and IoT systems. He has built low-power remote communications platforms and optimized M2M data collection and wireless protocols, and now focuses on smart-home energy devices at Emporia. His background includes developer advocacy and platform work at Google (Android Things, IoT, and Fuchsia), plus open-source contributions to Android peripheral drivers and a custom RecyclerView LayoutManager demonstrating deep Android and hardware integration skills. Comfortable across PCB layout, I2C/ADC drivers, and edge-to-cloud connectivity (AWS IoT), he bridges electronics and software to ship production devices. Collected from Colorado School of Mines, he’s equally likely to debug a radio modem or tune UI scroll behavior—and enjoys finding novel ways to “send bits through the air.”
13 years of coding experience
16 years of employment as a software developer
BS Engineering Electronics Computer Science, BS Engineering Electronics Computer Science at Colorado School of Mines
Examples of RecyclerView use and custom LayoutManager implementations
Role in this project:
Mobile Developer (Android)
Contributions:82 commits, 9 PRs, 18 pushes in 1 year 9 months
Contributions summary:Dave's primary contribution involves the development of a custom `RecyclerView.LayoutManager` for a two-way (grid) layout within an Android application. They implemented features for padding, scroll behavior, and animation support, with a focus on handling dynamic changes to the adapter. The commits also include enhancements for handling overscrolling and fixing various edge cases in the layout's scroll calculations.
Contributions:30 commits, 4 PRs, 6 pushes in 4 years 8 months
Contributions summary:Dave primarily contributed to the development of drivers for various peripherals used in Android Things, demonstrating expertise in embedded systems. Their work includes implementing drivers for capacitive touch controllers, GPS modules, and button interfaces. The contributions involve direct interaction with hardware, I2C communication, and integration with the Android Things framework. The user also worked on ADC driver for MCP300x and ADS1xxx.
driversperipheralandroid-thingsdriver
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
Dave Smith - Principal Firmware Engineer at Emporia