Alignment

Lawful Good

 
After 20 years in fintech working for State Street and then Fidelity, I took a turn towards mobile development in 2016. Most recently working as a Senior Android Engineer at iRhythm where I had the opportunity to join a team of top shelf engineers developing medical monitoring technologies reverse engineered from Dr. McCoy’s sick bay. Sorry I can’t say more. NDA’s, don’tcha know.

Before you read any further, go watch my new tutorial titled Stupid Kotlin Multiplatform Tricks in which we dance like nobody is watching along the fine line between “can” and “should”.

I am also the author/maintainer of KMP/BLE (https://github.com/Sherlock-Blue/KMPBLE) a cross- *and* multi-platform BLE library supporting both the industry standard BLE API’s for mobile application developers and platform-specific functionality for IoT devs. And, of course, it does this with 100% unit test code coverage.

The KMP/BLE library accomplishes 100% code coverage using MockingBlue (https://github.com/Sherlock-Blue/MockingBlue), a Kotlin Miltiplatform library providing comprehensive software mocks for both the Android and iOS BLE stacks, soup to nuts. And it does so on both platforms without requiring changes to the production code. If, like ChatGPT and apparently everybody else on the internet, you believe this to be impossible on iOS, let’s talk. 😉

Soon to release version 2.0 of “Sherlock Blue”, a Bluetooth Low Energy toolkit for professional developers, makers, and mad scientists of all kinds.

Before Cantina, I worked for 2 1/2 years at a micro-startup developing an innovative audio app for Android. My role was to solve Android’s long-standing problem with audio latency and you can see a blog post documenting my solution here.

After solving that issue, I stayed on until the app was launched. I coded the custom instrument UI’s and wrote a MIDI encoder to record user performances (ask me about MIDI’s variable-length integer datatype). After the app failed to gain traction in the Play Store, I worked on an SDK to monetize the audio solutions we had developed for the initial app development.

I’ve also done some front end work for my previous employer. Here is a page from our website for which I was the sole developer. In addition to highlighting Cantina’s work in the Financial Services industry, the code under the hood will serve as the template for future industry-specific landing pages.

Here are a few of the posts I’ve either authored or contributed to on my employer’s blog.

MLKit for Android

Takeaways from DroidCon 2019

My Github Portfolio

Android_Robot_200
My GitHub Portfolio
 

Other Topics

Android_Robot_200
Agile’s Dark Side
Android_Robot_200
Android Polymorpheous Buttons
Android_Robot_200
Thoughts on WWDC 2020
Android_Robot_200
From Java To Kotlin
Android_Robot_200
Kotlin/Native
Android_Robot_200
The Dreaded NPE
Android_Robot_200
Android Performance Profiling Tools
Android_Robot_200
Android RecyclerView Gotchas
Android_Robot_200
The Mysterious Red R Error
Android_Robot_200
Android Studio WYSIWYG Render Fail
Android_Robot_200
Why Is Android Studio Asking For My Master Password?
Android_Robot_200
Digital Audio Primer