|
PROFILE
I am an experienced Software Engineer that
specializes in AOSP and Bluetooth. I have been coding since I was 11.
I have ~9 years of Bluetooth experience, ~16 years
of Android experience, and ~18 years of professional software development experience.
My goal is to contribute to a better connectivity experience across all devices.
|
SKILLS
SOFT
Effective communication
Leadership
Problem solving
Software design
Technical expertise
Testing methodologies
TECHNICAL
-
ANDROID
- Applications
- Bluetooth
- Framework APIs
- Framework Internals
- JNI
- Native development
- NDK
- System services
- System internals
-
AOSP
- Build system
- CDD
- Code review
- CTS
- Device Bringup
-
BLUETOOTH
- A2DP
- Classic ACL
- Classic L2CAP
-
Classic Security
- Numeric Comparison
- Out of Band
- Passkey
- Pin code
- GATT
- HFP
- HID
- LE Advertising
- LE Scanning
-
LE Security
- Numeric comparison
- Out of Band
- Passkey
- Pin code
- RNR
- SDP
- Vendor Specific Commands
BASH
-
C/C++
- OOP
- IMPL/PIMPL
- Unit tests
GIT
JAVA
-
NFC
PROTOCOL BUFFERS
-
PYTHON
-
RUST
- Async
- CXXBRIDGE
- JNI
- MPSC
- Tokio
|
EXPERIENCE
SENIOR SOFTWARE ENGINEER |
Stripe, Inc. |
May 2023 - Apr. 2024 |
Terminal OS Platform
-
Work on Stripe's Terminal Applications
○ Updater
○ Reader
○ Observability
○ SDK
-
Technologies
○ Kotlin
○ Dagger
○ C#
○ .NET Framework
○ ProtocolBuffers
○ RPC
|
SOFTWARE ENGINEER |
Google, Inc. |
Dec. 2016 - Apr. 2023 |
Android Bluetooth [ 2019-2023 ]
Wear OS Connectivity [ 2017-2019 ]
- Fix internal Wear OS Bonding, HFP/A2DP and other
random bugs across all Wear OS devices.
- Found
CVE-2019-9265 and made a patch to resolve the vector.
Wear OS Partner Engineering [ 2016-2017 ]
-
-
Device bringup
○ Manage kernel drops from ODM
○ Keep device tree builds green
○ Work through display, touch, wifi, and bluetooth issues
○ Work through power and jank issues
- Partner interfacing with OEM/ODM (Compal, Borqs, QC, MTK)
- Partner interfacing with Brands (Fossil, Misfit, LG)
- Partner interfacing with Carriers (VZW, TMO)
- Factory ROM process
- Build sheriff; keep builds green
- Shipped Misfit Vapor
|
SENIOR SOFTWARE ENGINEER |
Cronologics, Inc. |
Jul. 2016 - Dec. 2016 |
-
Improve the Bluetooth experience
○ Redesign the companion application bluetooth module
○ Redesign the system service that communicated with the companion application
- Acquired by Google, Inc. in 2016
|
SENIOR SOFTWARE ENGINEER |
Cyanogen, Inc. |
Sep. 2014 - Jul. 2016 |
-
Core OS Applications
○ CM FileManager
○ Launcher
○ Phone app
○ Messages app
- Ensure devices pass CTS/CDD
-
Frameworks
○ ConnectivityService
○ InCallUI
○ Messages
○ PhoneWindowListener
○ Settings
○ SystemUI
- Interface with QCOM for their reference device
|
SENIOR SOFTWARE ENGINEER |
Pebble, Inc. |
Mar. 2014 - Sep. 2014 |
-
Android application architect
○ Designed the application module architecture
○ Designed the bluetooth application module
○ Interfaced with the watch, sending/receiving encoded data (homebrew protobuf)
○ Implemented notification listener service
○ Implemented capability to have multiple pebbles connected and mirror notifications
|
SENIOR SOFTWARE ENGINEER |
Tout, Inc. |
Dec. 2012 - Mar. 2014 |
- Biggest app in WWE from 2012-2014
- Battle memory constraints
- Improve the existing application
- Manipulate audio and video on multiple different devices using Android Frameworks APIs and NDK+ffmpeg
- Solve complex networking, streaming, and uploading problems
|
SENIOR SOFTWARE ENGINEER |
Red Robot Labs, Inc. |
May 2012 - Dec. 2012 |
- Lead software development (Android) on Life is Crime game (~$375k/mnth revenue)
- Completely eliminate Out of Memory errors
- Implement new items
- Work on different mechanics: shop, battle, location
- Work with game designer and artists
- Work in sync with the iOS team and application
|
SENIOR SOFTWARE ENGINEER |
Yoink Games, Inc. |
Nov. 2011 - May 2012 |
- Implement a social platform in Java on Android for Action Script games running in a WebView wrapper
- Work on complex UI designs, widgets, and components
|
SENIOR SOFTWARE ENGINEER |
Various, Inc. |
Nov. 2011 - May 2012 |
- Design and develop whitelabel social networking Android applications
|
SENIOR SOFTWARE ENGINEER |
NetEnforcers, Inc. |
Jun. 2008 - Jan. 2011 |
- Client portal development for data management and review
- Design framework for crawling the web (channels) searching for keywords
- Manage the MySQL database in dev, staging, and production environments
- Virtualize the development, staging, and production environments with ESXi (~20vms each)
- Set up Cisco equipment and establish site to site VPN networks
- Physically build, rack, and install hardware in Equinix data center
- Company was bought by Intersections, inc. I chose to move on to another opportunity.
- On call rotation for servers
- Secondary on call for network
- BASH Scripting
|
SOFTWARE ENGINEER |
Legendary Marketing, Inc. |
Nov. 2007 - Jun. 2008 |
- Developed modules for a website/CRM written in PHP4 + MySQL and another version in PHP5/PostgreSQL
- DRI for PGA Travel Magazine's account
- Linux system administration
- Network administration
- BASH Scripting
|
SOFTWARE ENGINEER |
TLC Hosting, Inc. |
Jan. 2006 - Nov. 2007 |
- Work on billing system in PHP4/MySQL
- Java tooling
- Linux Administration
- BASH Scripting
|
|