About
I’m Aaron, a software engineer and perpetual tinkerer.
I started programming at 10 when my dad taught me GW-Basic on an old IBM PC. I took the thermostat apart as a kid just to see how it worked. That curiosity never went away. It just found bigger problems to solve.
What I Do
I’ve been writing software professionally for over 15 years, working across the full stack. Building web applications and APIs, designing distributed systems, rewriting services in new languages, and running them in production. I go where the problem is. Frontend, backend, infrastructure, architecture. I don’t draw hard lines.
I spent a decade at Rocket.Chat, where I started as an open source contributor fixing bugs and grew into roles spanning engineering, architecture, and technical leadership. I’ve built billing platforms, real-time communication services, deployment tooling, push notification systems, status pages, marketplace APIs, and more. I’ve rewritten systems from JavaScript to Go when performance demanded it and jumped between languages and frameworks whenever the problem called for it.
I care as much about how teams make decisions as what they build. I introduced RFDs, post-mortems, and architectural decision records at Rocket.Chat because good documentation and decision-making culture outlast any code.
Some Things I’ve Built
- Fleetcommand: workspace management and billing platform behind Rocket.Chat’s cloud offering
- Push Gateway: rewrote Rocket.Chat’s push notification service from JavaScript to Go, dropping memory from ~1GB to MBs at high throughput
- statuscentral: a status page built in Go in 2-3 days, maintained and evolved for 7+ years
- rfd-tool: powering 148+ architectural decision records
- prismplus: an RTMP multicast service for streaming to multiple destinations
- deepfreeze: encrypted MongoDB backup utility
- E-commerce platforms, internal production tools, CRM integrations, custom Linux distributions
What I Care About
Small teams doing big things. I take a lot of pride in what a handful of people can accomplish with autonomy, good tools, and clear direction.
Open source and open systems. I got my start in open source and still believe in it. Federation, interoperability, and not being locked into someone else’s platform matter to me.
Learning by doing. I got to where I am by fixing a bug, then another, then another. I still pick up new languages and tools because I enjoy it. Go, Rust, TypeScript, Python, whatever the problem calls for.
Life outside the terminal. After years of intense work I’ve learned that sustainability matters. These days I train martial arts, build things with my kids, and stay curious about the physical world too.