Aaron’s Blog

I’ve been leading engineering teams and writing software since the last Millenium, and there is still so much to learn. I built the engineering team that helped Gopuff become Philadelphia’s beloved unicorn, and what comes next will be even better!

Triage, Diversity and Farewell

Over a month ago, my journey with gopuff came to an end. It took me longer than expected to process all the emotions and think about what to do next. I poured myself into building our industry-defining, vertically integrated, quick commerce business. The first few years were the most productive of my professional career, and I enjoyed every minute. I didn’t feel the need to write a farewell post. It was, however, an excellent set of lessons for my children....

September 8, 2022 · 3 min · Aaron Held

Azure Static Web Apps with Terraform

Devops is many different things to many different people, but nearly all practitioners agree that infrastructure as code is a critical part. So rather then use the Azure portal UI to create our desired resources we are going to script it in code. We will have confidence that we can create, destroy and eventually scale resources as needed. In this post we will create a Azure static using terraform, step by step....

August 27, 2021 · 7 min · Aaron Held

CosmosDB: Stored Procedure (sproc) to update a document

The CosmosDB SQL is very flexible in returning objects and view projections, but it cannot Update documents via its SQL dialect.

May 12, 2020 · 4 min · Aaron Held

CosmosDB: A Stored Procedure to merge documents on read

The CosmosDB SQL API is very flexible in returning objects and view projections, but it cannot merge documents via its SQL dialect.

April 28, 2020 · 7 min · Aaron Held

CosmosDB: Hello Stored Procedures (sproc)

CosmosDB Stored Procedures Why stored procedures? Stored Procedures (sprocs) are functions that run on the server-side of a database. In particular, we will be talking about sprocs in CosmosDB. The main reasons for using CosmosDB Sprocs are atomic transactions and performance. All database operations completed in a single sproc call will be atomic. Since the Sproc runs on the server the network latency for loading and saving documents will be considerably less than running the same operations from a remote server or laptop....

April 26, 2020 · 5 min · Aaron Held