I am a Software Developer with over 3 years of experience in full stack development. I design scalable REST APIs, low volume relational / time series databases, and websites on CMS platforms.
I’ve had a web server since I was 15 and now experiment with Linux based boards for my car.
I actively utilize my own embedded projects, and love to adapt and contribute to others’.
I am looking for a position where my broad skillset and eagerness to learn will be a strong asset to an agile team.
MDroid provides an extensible base for low power, always-on LTE control of non-critical systems. I started this project to bring my car's tech up to the current decade.Read Me
I wrote a serial interface for the proprietary BMW KBus. It decodes incoming frames and handles write timing. Along with a full REST API, it's an all-in-one solution to hacking the KBus.Read Me
AirPhoto is an Android app and Golang server for shared iCloud streams. It parses Apple's binary plist data, then organizes the Albums, Photos, and Comments into queryable chunks.Read Me
An ESP-32 programmed to dynamically fetch, cache and distribute a fish tank's temperature and lighting status. A PHP webpage provides control and alerts me on Slack if the temperature becomes unsafe.Read Me
A guerilla redesign of AeroGarden's WiFi app, written in React Native for simple portability to both Android and iOS. I built it with a clean but functional aesthetic that strongly represents the premium brand.Read Me
A relatively simple Go Module for interfacing with Drok branded PSUs over UART. Abstracts reading and writing voltages, currents, and states. It utilizes a fully featured serial IO writer found in many similar Go projects.Read Me
I collaborate with those involved, making a list of requirements for the project. Asking questions early sets expectations and saves work down the line.
I believe in finding the best tool for the job, not always what I'm most comfortable with. Finding libraries and modules ensures we don't do the same work twice.
I create an initial breakdown of deliverables that satisfy the requirements, which helps prioritize work and keeps maintenance low.
I write out structures for each component, adding features after each full test of the product. Catching mistakes or changes is easiest early in development.
I keep front end development in lockstep with any backend, making progress clearly visible. Clients often have direction adjustments I'm happy to accomodate.
I approach each new project with what I've learned from the last. I'm continiously learning and making things better than before.