Experience

My work experience and resume

Syniti

Software Engineer III

Mar 2025 - Present

As a Software Engineer III on the core platform team, I was a key contributor to our infrastructure-as-code, multi-cloud, and compliance work on the Syniti Data Governance Platform (SKP), alongside feature and performance work across our Go microservices and NextJS frontend.

Most of my time this year has gone to the platform's foundations. I built the majority of Terraform deployments that moved a large share of our services onto a new Kubernetes cluster, designed the standardized per-service module that lets each team deploy independently, and wrote the shared modules for database access, messaging, and secrets. I also standardized service-to-service network access through Istio authorization policies, replacing permissive defaults with explicit rules. That work is what let us stand the platform up on new infrastructure for customers with heightened security and compliance requirements.

To take the platform multi-cloud, I designed a unified object-storage abstraction in Go that replaced our services' direct cloud SDK calls with a single platform-agnostic interface, then drove it and a matching search abstraction into production. The same service binaries now run unmodified across every cloud we support (AWS, SAP BTP, Azure).

On the product side, a key service was suffering from performance issues rooted in the graph database's lack of compound indexes. I developed a custom compound indexing scheme around the service's actual access patterns, reducing query latency by over 95% and resolving the DevOps team's vertical scaling challenges. I also migrated over 100k lines of Typescript with AST transformations to modernize how our frontend generates GraphQL queries, and authored the design for regional data residency controls after prototyping approaches at the service mesh, edge, and application layers.

Day to day, I work with AI coding agents to widen what I can deliver while holding the codebase to our existing review and quality standards. I also mentored three new software engineers through our internal processes, SDLC, and coding best practices.

Software Engineer II

Jan 2024 - Mar 2025•1 yr 3 mos

As a Software Engineer II on the core platform team, I led the development of our uptime monitoring service, built the tooling that manages our Kubernetes deployments across every cloud region, and took code ownership of the graph metadata platform.

SLA visibility was inconsistent across our microservices, which surfaced as user-reported reliability issues. I built a standardized uptime monitoring service around a custom Prometheus Exporter and rolled it out across the platform. I ran the project end to end, from requirements gathering with CloudOps through rollout, and the CloudOps team built customer-facing uptime dashboards and SLA reporting on top of the metrics it collects. Other engineering teams adopted the service-level module to consistently report availability to CloudOps.

Kubernetes deployments across regions were managed inconsistently, and merging a deployment out of order had already caused a production outage. I built a GitOps CLI in Rust and libgit2 that drives self-healing deployments from git state across every region. It flags deployment PRs as outdated by analyzing the git merge tree, and rolls the latest deployment out to each region while closing stale ones, which eliminated that class of release mistake.

I assumed code ownership of the Go and graph database system that indexes database schema metadata, covering bug resolution, dependency maintenance, architecture, and code review. In that role I led the design and rollout of a database migration for a new security model, expanded the metadata we collect to include results from the data quality team, and delivered a bulk asset upload feature that replaced a one-at-a-time onboarding process for consultants and customers.

Additionally, I authored RFCs for a virtual file system service and for replacing our aging UI component library, ran knowledge transfer sessions to build engineering redundancy on services that had a single point of failure, and mentored a junior engineer through the delivery of a major backend feature.

Cloud Software Engineer

Jun 2022 - Jan 2024•1 yr 8 mos

As a Cloud Software Engineer on the core platform team, I led the development of a Visual SQL Query Builder, a feature for non-technical users to write SQL queries, and the migration to a Rich Text data format, involving an organization-wide plan for backwards and forwards compatibility contingencies.

The Visual SQL Query Builder was designed as a feature that would enable non-technical data stewards and consultants to design data quality rules on the Syniti Data Governance Platform (SKP). I built the query builder in React on NextJS along with a recursive descent SQL parser that hydrates the form's UI state from existing queries and generates new SQL after editing. This feature was successful in enabling non-technical users to build complex WHERE and JOIN clauses on their data.

The Rich Text migration replaced our Markdown editor for customers whose typesetting needs had outgrown it. I built the editor and rendering components in the UI, a sanitizer in our Go backend services, and a backwards compatibility layer that transforms existing markdown to the new format when fetched from the server. Lastly, I created a migration process that allowed all clients, internal and external, to handle backwards and forwards compatibility issues. Overall, the execution of the migration was seamless with a <0.01% error rate.

Additionally, I worked closely with the team to provide code reviews, feedback on system designs, and mentoring for new software engineers.

Golang Typescript Javascript Rust Python SQL HTML CSS React NextJS GraphQL Terraform Kubernetes Istio Docker AWS Microsoft Azure Prometheus Grafana GitHub Actions Git

Knowtworthy

Software Developer and Co-Founder

Nov 2017 - Jun 2022•4 yr 8 mos

Knowtworthy is a meetings productivity tool for business professionals to aid in organizing, formatting, and sharing meeting minutes. I co-founded it at the University of Toronto's startup incubator and was the engineer responsible for the product end to end: the AWS infrastructure, the Go and Node.js backend services, and the React frontend.

On the backend, I designed and maintained a Koa and Node.js REST API on MongoDB. Meeting minutes and agendas were collaboratively editable in real time through ShareDB over a WebSocket server. Transcription was the heart of the product: I built the real-time audio ingest pipeline in Go as a set of goroutines connected by buffered channels, along with an asynchronous service that transcodes uploaded recordings with ffmpeg and writes their transcripts back to the meeting. I also wrote a TLS-terminating reverse proxy in Go that let customers point their own domains at the product, provisioning certificates on demand through Let's Encrypt.

On the frontend, I built and maintained the React and Typescript web app on Vite, with MUI for components and a theme generated per organization so customers get their own branding. I wrote the browser-side live transcription client on the Web Audio API and a reconnecting WebSocket, a custom drag-and-drop system for reordering meeting items, third-party sign-in for Google, Microsoft, and LinkedIn, and the Stripe checkout and billing flow.

I owned the company's AWS infrastructure, covering compute, networking, CI/CD, secrets, CDN, DNS and email, and alerting. I stood up our original Kubernetes clusters on EKS, then migrated everything onto a cost-optimized ECS cluster running entirely on spot capacity. To keep it all releasable, I built a versioned database migration runner, an automated end-to-end and visual regression suite, and a backend integration suite that runs against real local infrastructure through Docker Compose rather than mocks.

Javascript Typescript HTML CSS React Vite MUI Websockets ShareDB Node.js Koa.js Golang MongoDB Elasticsearch Docker Kubernetes AWS EC2 AWS EKS AWS ECS AWS Cloudfront AWS S3 AWS SQS AWS Lambda AWS X-Ray AWS Cloudwatch Stripe ffmpeg Google Speech-to-Text Git Gitlab CI/CD

Bank of Montreal (BMO)

Software Developer Intern

May 2019 - Aug 2019•5 mos

During my summer internship at BMO , I was tasked with designing and building the web frontend for a new Business Intelligence(BI) tool at the Bank. The tool was targeted at non-technical employees to help them draw up reports and better understand their data. Using the Carbon Design System , I built the UI prototypes and pitched the design to management. Additionally, I built the web frontend with HTML, CSS, and jQuery on Microsoft's C# MVC.

When I wasn't working on the BI tool, I helped the Business Associates automate tedious tasks with Python scripts. My most impactful effort was a regression analysis tool to verify that new code changes to a legacy system were backwards compatible.

Javascript jQuery HTML CSS Python C# MVC ElasticSearch Kibana

BDM Trucks

Web Developer

Sep 2017 - Nov 2017•3 mos

BDM Trucks is a commercial truck repair service in Manassas, VA that needed a new website. I built them a new website using HTML, CSS, and Bootstrap 4 . Additionally, I optimized the on-page SEO of their new website to draw more traffic from their local area.

HTML CSS Boostrap 4 Github Pages

SBIRT

Software Developer

Oct 2015 - Dec 2016•1 yr 3 mos

Shenandoah University's School of Pharmacy needed a tool to collect data on drug abuse from local clinics in the Northern Virginia area. I built an iOS and Android app to assist their team in collecting reports from doctors and students in training. Later, the data collected went into research on drug abuse and intervention in the local area, potentially saving lives.

Java Android Swift iOS GCP App Engine SQL MySQL