Projects
Interesting or impactful projects.
CAMino
Baxter Intl.
Auto-scaling microservice test app simulating 2,000+ concurrent devices, accelerating test case execution by 500%
Project Details
I designed the service and led the team that built out a microservice that emulated the device data being sent to our primary ECG-collection backend service (ECGBE). This service also performed all the setup and tear-down of all required assets across multiple systems, such as:
- Creating a Patient
- Parsing the desired upload settings from an uploaded Excel doc
- Registering the "device" (signaling to the ECGBE that this virtual device was legitimate)
- Creating patient-reported symptoms, based on the original recording.
The service included a user-friendly set of web pages, as well as a REST API where uploads could be started, monitored, or cancelled. It also included a backend simulation program that ran off a Service Bus Queue. This simulation program could scale up or down based on the number of active uploads in the queue. The simulation program could also operate in an "accelerated" state, uploading data far faster than real time, which allowed testing of the ECGBE in a fraction of the time it would normally take with a physical device.
Because both sides of this application were hosted on Azure Functions, the system was lightweight and was tested and verified to handle over 2,000 concurrent device simulations.
Fun fact: the project name CAMino comes from the Star Wars planet "Kamino" (the cloners). Since the original data we based the simulation on was called "CAM" data, the name suggests that we were cloners of the CAM data.
Why This Matters
The CAMino project transformed the engineering lifecycle from a hardware-constrained bottleneck into a high-velocity, software-driven process. The impact of this system can be summarized by three key pillars:
- Massive Throughput & Risk Mitigation: By emulating 2,000+ concurrent devices, the team could subject the backend to extreme stress-test scenarios that were previously impossible with physical hardware. This ensured system stability and identified edge-case failures long before they could impact real-world patients.
- Drastic Reduction in Test Cycles: The "accelerated" upload state bypassed the physical limitations of real-time data transmission. Testing that originally took hours or days was condensed into minutes, allowing the development team to iterate faster and move closer to a true Continuous Integration (CI) model.
- Operational Autonomy: By automating the complex orchestration of patient creation, device registration, and symptom reporting, we removed the need for manual database manipulation. This empowered QA and neighboring engineering teams to spin up fully-featured test environments on demand via a simple web interface, saving hundreds of collective engineering hours.
GitLab Notifications SlackBot
'nuffsaid
A Slack Bot that notified team members of GitLab actions that required their attention, along with a dashboard that displayed the statuses of merge requests currently pending.
Project Details
I created a Slack bot that received information from GitLab about merge requests, stored the relevant information to display on a custom dashboard in Slack, and notified team members accordingly if they had tasks that needed their attention.
Why This Matters
This integration bridged the gap between the development environment and the team’s primary communication hub, creating several critical business advantages:
- Accelerated Development Velocity: By reducing the average response time for Merge Requests by 15 minutes per action, the bot eliminated "idle time" in the development cycle. This compounded across the team to significantly increase the number of features and fixes shipped per sprint.
- Reduced Context Switching: Engineers no longer needed to manually poll GitLab or check emails for updates. Bringing actionable notifications directly into Slack allowed the team to stay focused on their IDEs, preserving "deep work" states and reducing cognitive fatigue.
- Enhanced Team Accountability: The custom dashboard provided a single source of truth for the team’s workload. By making pending tasks visible and transparent, it eliminated communication silos and ensured that critical blockers were addressed immediately rather than languishing in an inbox.
grapyql
Walker Labs
A package that queries GraphQL endpoints in a very Pythonic way.
Note: this project is still a work in progress. For more information see the Github Link Here.