I led the release of this Ruby-based CI/ CD plugin while consulting at Cargill. This project, was by-and-large the highlight of my time consulting for Cargill. The client was on their journey towards public-cloud adoption and were making great strides. An infrastructure team had been spun up to build Captain which enabled the enterprise's development teams to define all of their deployments to AWS as code using a syntax fairly similar to Kubernetes manifest files.
But there was one problem; due to networking constraints, not all workloads could actually go to AWS. For on-prem workloads, there was no deployment-as-code solution requiring engineers to learn a nuanced web interface for configuring VMs, and then navigate it everytime a new workload was needed. After a few weeks of development and with help from some of the amazing engineers at Cargill, I released Gilligan, a Ruby-based CI/ CD plugin that served as an on-prem counterpart to the existing Captain solution.
This project controls the lights on my keyboard and helped me refresh my x86 reverse engineering skills. This project includes an accompanying article documenting the reverse engineering techniques I used throughout the process. As a fun bonus, this article was commented on and republished in hackaday's blog.
This is the latest and most ambitious Rails app I've ever worked on and should absolutely be referenced in future projects where I might use technologies from the Rails ecosystem (Stimulus, rails-turbo, Devise, ActiveJob, ActionCable, MiniTest, RSpec) or any interesting GenAI libraries (SpaCy, pgvector, llama-cpp-python, TransformerLens, etc).
While between contracting clients and wanting to both brush up on my C# and also study websockets, I decided to spend a week writing a C# library based on RFC 6455 that uses nothing but TCP sockets as a basis. It was fun pouring over the RFC whitepaper and piecing the protocol together in C# and also gave me that implementation practice in C# I hadn't been getting enough of over the past few years. The library was eventually packaged for consumption via Unity. I used the Observer design pattern to implement a pub/ sub functionality.
Writing well tested code is important to me, it relieves me of the doubt and concern that otherwise comes hand-in-hand with code changes. The satisfactory test coverage in this project is owed to my use of the Adapter Pattern which allows me to use real NetworkStreams in my production code, and switch to a mocked out implementation when running my tests.
An up-coming kickstarter project for a device with a react/ capacitor-based frontend for web/ mobile interactions, two embedded python services, and an ARM Cortex-A based device running those two services on linux. I really enjoyed building out the infrastructure related to this project. I learned a lot about AWS and their IPV6 support that can allow for some very economical networking solutions. This project is currently closed source while I source financing for the marketing aspects of the campaign, but I'm hopeful it makes traction and forms a strong community in the automation space.
I worked with a lot of different technologies at Optum. I developed Rest APIs using Java Spring Boot, defined infrastructure as code using Ansible influenced idempotent provisioners, defined deployments to Openshift and Kubernetes via k8s manifest files, managed a Kafka services used by multiple teams, built CI/ CD pipelines to manage deployments, contributed to the design and implementation of the enterprise's centralized CI/ CD pipeline library, did cloud engineering "stuff" with AWS and terraform, and did miscellaneous data engineering "stuff" with Hadoop, HIVE, HBase, Flink, Kafka consumers/ produces (in Java), and Pyspark.
One of my clients required an application that could be used in an environment with inconsistent network availability. Among the options I presented was this PoC which allowed for users to download the web app when networking was operational, supported offline usage via the Service Worker API, secures the data at rest via AES and performs DB synchronization with a simple backend mockup I did in Node.
A collaborative effort where myself and three colleagues set out to recreate Pax Imperia in web technologies. We used Javascript, Go, and a tiny bit of React to build out the multiplayer experience. Due to cloud costs, the backend is no longer available, but don't let that stop you from checking out the demo. Also, the assets are kind of heavy so you might need to give it some time before the space view renders planets and ships.
I wrote this to help my nephew remember where the keys are on the keyboard without looking. It's been agest but the demo appears to be operational.
Initial Fantasy is a clone that I started of an old game from 1991. I was inspired to do this shortly after the HTML Canvas API began to see browser adoption.
This was a customer-facing Rails app that helped our customers navigate their healthcare needs. You know you're in healthcare when the application you inherit is too complicated to boot locally into a presentable state. Our deployments were split across the on-prem data center furnished by our sponsor in Healthcare and AWS. We had an amazing architect who set up all our AWS infrastructure as code using Terraform.
EFF Fab was paid work I did for the EFF who actually do open source projects! It showcases professional use of Rails, caching, and SQL optimizations. This app was a replacement for an older PHP app performing the same task in a less feature rich manner. Eager to present Rails in it's best light, I took every measure to keep it as performant as the application it was obsoleting.