Team

Gallium Technologies is led by Uday Kapur, working with a small group of senior specialists who join projects based on scope, timeline, and the stack the work ends up on. The team shape is set per project rather than held as a fixed unit.

Lead Developer: Uday Kapur

I am Uday Kapur. I have worked in workflow automation for small businesses and sole traders since 2014, mostly helping them hand off the repetitive parts of their day to something that runs without supervision. The tools that do that work have changed several times over the years. The problem stays the same.

Open-source has been my default setting for over two decades. In 2005 a parcel turned up at my address: a stack of Ubuntu CDs that Canonical's ShipIt program had posted free from the other side of the world. I was an undergrad with no idea what I was about to install. Two decades later I have still not gone looking for another operating system. For most of the decade after that I ran a pragmatic dual-boot. Linux for the things I actually wanted to use. Windows and Microsoft Office for the things the world insisted on. Sometime around 2015 the dual-boot stopped earning its keep, and I dropped Windows completely.

The idea of Gallium Technologies came together in 2020. The pandemic had pushed a lot of small businesses into territory they were not ready for, and the gap between "I need this workflow automated by Friday" and what the available tools offered had become uncomfortable to watch from the inside. That was the year I started taking the automations I had built ad-hoc for clients over the years and structuring them properly: methodical scripts, reusable packages, and purpose-built apps written in Google Apps Script and a handful of other languages that compile to or integrate with it.

Most of my own day runs on Linux paired with LibreOffice for the documents I keep locally and Google Workspace for the ones I share. Docs, Sheets, Forms, and Apps Script do most of the heavy lifting. The work itself splits between the product side (the Gallium add-ons) and the consulting side (Python data pipelines, cloud data warehousing on Snowflake, Databricks, and Microsoft Fabric, and the orchestration that ties everything together).

The homelab is where I spend the leftover hours. It runs the things I would rather host myself than hand off to someone else's cloud. Most weekends some part of it is mid-rebuild while I try out a new piece of software, port an old workflow onto an open-source replacement, or chase down why a script that ran yesterday has decided to misbehave today. A surprising number of the tricks that turn up on the blog started as something I needed to make work for myself in there, long before any client paid for it.

Specialists who join projects

Larger or specialist projects are delivered alongside three senior collaborators described below. They are anonymised here by their preference. Each has more than a decade of senior delivery experience in their area, and they flex into the team based on the project's scope and stack rather than holding fixed roles.

Analytics engineer

dbt · SQL · semantic modelling · Snowflake · Databricks · 12+ years

Joins projects where the work centres on warehouse modelling, transformation layers, and handing clean data over to a BI layer the business actually trusts. Tends to come in once the pipelines feed reliable raw tables and the modelling is the next bottleneck.

Frontend and progressive web app specialist

TypeScript · React · Apps Script web apps · modern build tooling · 10+ years

Joins projects that need a real frontend on top of an Apps Script or Python backend. Custom Workspace add-on UIs, progressive web apps linked to Sheets and Forms, and the occasional standalone client tool that has to feel properly built rather than scripted together.

DevOps and site reliability engineer

Terraform · CI/CD · Kubernetes · AWS · GCP · Azure · observability · 12+ years

Joins projects where the operational side matters as much as the build. Infrastructure-as-code for pipeline deployment, CI/CD plumbing, monitoring and alerting setup, and the production-reliability work that keeps scheduled jobs from quietly drifting out of compliance.

How we engage

For small jobs that fit comfortably inside the Workspace stack, I usually run the work end to end. For projects that touch a cloud warehouse, a serious frontend, or production-grade deployment, one or more of the specialists joins based on scope, timeline, and the stack the client has already committed to. The team shape is set per project, not held as a fixed unit, so a client only pays for the senior expertise their work actually needs.

If any of this matches something you are trying to land at work, the Support page is the cleanest way to start a conversation. I would rather hear the actual problem you are trying to solve than guess at the brief.