#
David Albers
[PDF version](./resume.pdf) | [GitHub](https://www.github.com/davidalbers) | [LinkedIn](https://www.linkedin.com/in/davidgalbers) | [Other stuff](./notes/index.html)
---
#### Currently
**Android Developer** Acorns
Since February 2022 remote in Chicago, IL
* Helped modularize Android project
* Demonstrated the effect of large modules on build and test time with module-based metrics
* Customized Gradle and CI pipeline to decrease test time by 75% and total CI usage by 50%
* Converted Acorn's screenshot testing framework to use JVM-based testing with [Roborazzi](https://github.com/takahirom/roborazzi)
* Added [AffectedModuleDetector](https://github.com/dropbox/AffectedModuleDetector) to only test affected modules
* Lead effort to replace cache singleton with Apollo Kotlin's [normalized cache](https://www.apollographql.com/docs/kotlin/caching/normalized-cache)
* Refactored cache singleton usage in View to use MVVM with Apollo
* Created extensive docs on using caching and how to refactor View architecture
* Release manager for the weekly release rotation
* Automated release management so devs no longer ran custom release scripts
* Added metrics for flaky tests and used it fix common issues
* Went from 20% CI runs failing due to flaky tests to near-zero
#### Previously
**Android Developer** Expedia
From January 2018 to February 2022 in Chicago, IL
* Integrated a new GraphQL API using Apollo Android
* migrated lodging LOB from REST to GraphQL
* built new features across lodging, homescreen, and trip LOBs using GraphQL
* Helped bring Expedia's design system to Android
* Wrote design system tokens and code for system's Android library
* Built custom `Views` adhering to the system
* Core team member on a project that combined above design system & API to build a library of reusable server-driven UI (SDUI) components
* created proofs-of-concept and later implemented solutions for library architecture
* setup publishing of library on Jenkins then later migrated it to Github Actions (GHA)
* helped onboard teams of contributors to the project
* Wrote blog posts and gave presentations to other devs about design system, GraphQL, and SDUI library on Android
* Wrote integration tests using Robolectric, helped convert existing code to MVVM
**Android Developer** First Orion
From November 2016 to December 2017 in Little Rock, AR
* Handled push messages from both Google Cloud Messaging (GCM) and Firebase
* Utilized Realm for efficiently storing and reading large amounts of data
* Wrote UI and unit tests in Espresso, Mockito, & others
**Software Engineer** CymSTAR
from January to November 2016 in Tulsa, OK
* Modified A-10 Simulator for added functionality and bug fixes
* Debugged and solved issues caused by upgrading real-time OS (VxWorks) on simulator
* Implemented additional constraints for scheduling genetic algorithm in C
**Software Intern** InvoTek
from August 2011 to January 2016 in Alma, AR
* Created accessible user interfaces by providing alternative access methods such as eye-tracking
* Implemented Bluetooth communication in apps and developed custom Views in Android
---
#### Projects
##### White Noise Plus for Android & iOS
* White noise app focused on useful, simple features
* Available on [Play Store](https://play.google.com/store/apps/details?id=dalbers.com.noise "App Link") and [App Store](https://apps.apple.com/us/app/white-noise-plus/id1281372285)
##### Podmark for iOS
* "Bookmark" podcasts
* Available on [App Store](https://apps.apple.com/us/app/podmark/id1546743310)
---
#### Education
Bachelor of Science in Computer Science from the University of Tulsa
Graduated May 2016, GPA: 3.9