Articles

How Braze Leverages Ruby at Scale

  • Thu 18 Aug 2022
  • 0 Comments
If you’re an engineer who reads Hacker News, Developer Twitter, or any other similar information sources out there, you’ve almost certainly come across a thousand articles with titles like the “Speed of Rust vs C”, “What Makes Node.js Faster Than Java?”, or “Why You Should Use Golang and How to Get Started.” These articles generally make the case that there’s …

Connected Content And The Slashdot Effect (Or How I Learned To Scale APIs)

  • Thu 20 Jun 2019
  • 0 Comments
One of the coolest ways our customers integrate with our product is through a feature we call Connected Content. By utilizing custom HTTP endpoints—either owned by the customer or via one of their partners—our customers can inject customized, on-demand content into messages right before they’re sent. Customers use this for a huge variety of use cases, such as personalized recommendations, …

Achieving Resiliency With Queues: Building A System That Never Skips A Beat In A Billion

  • Thu 20 Dec 2018
  • 0 Comments
Braze processes billions and billions of events per day on behalf of its customers, resulting in billions of hyper-focused, personalized messages—but failing to send one of those messages has consequences. To make sure those key messages are always correct and always on time, Braze takes a strategic approach to how we leverage job queues. What’s a Job Queue? A typical …

Code Vision

  • Mon 18 Jun 2018
  • 0 Comments
While I'm currently on an early flight from Indianapolis to Newark, I'd love to expound on some thoughts I've had recently about what I call "code vision". I define this as a written, iterated-on plan for what a codebase should look like in the future. This is different from what features are in the pipeline - think more of a …

Leaving Nashville

  • Fri 02 Mar 2018
  • 0 Comments
I moved to Nashville 8 years, 6 months, and 1 day ago. I spent the first night with my parents at the Comfort Inn Downtown Nashville/Vanderbilt on Demonbreun Street. At that time I didn't know how to pronounce Demonbreun or barely where I was in relation to campus. We woke up early the next day on August 22, 2009 - …

DevOps and Horizontal Scaling: Part 3

  • Tue 25 Jul 2017
  • 0 Comments
Time to finish what we started: the last 4 points/suggestions on DevOps and Horizontal Scaling. Manual and Automated Code Review Manual code reviews are easy — GitHub, Gerrit, and a host of other tools support this workflow. The gist is that everyone’s pull requests need to be seen and reviewed by a senior developer/manager/etc. before being merged into the main …

DevOps and Horizontal Scaling: Part 2

  • Thu 29 Jun 2017
  • 0 Comments
Lets talk about the first 3 of the 7 tools I described in the last post! Product Management involving feature flags, switches, and samples Product management has a simple sort of flow to it — tickets and feature requests come in, things are prioritized between managers of different teams, and the end result gets put into a pipeline for engineers …

DevOps and Horizontal Scaling: Part 1

  • Wed 28 Jun 2017
  • 0 Comments
How do engineering departments scale beyond teams of 10–15 people and stay nimble? Let’s imagine scaling an engineering department that starts with 3 employees and an “efficiency factor” of 100%(bear with me). You hire a couple more experienced engineers, start having daily stand-ups and a weekly planning meeting and compared to your previous “efficiency rating”, you’re now outputting the work …

Benchmarking Django Model Saving

  • Tue 07 Jul 2015
  • 0 Comments
When using Django’s ORM as a basis for data harvesting (probably not the best idea in the first place, but sometimes it’s easier to go with what you know), I learned that Django isn’t exactly crazy fast when saving models to the database. Here are some stats on doing different things with Django to try to speed it up. First, …

WWOOFing in Romania

  • Mon 17 Jun 2013
  • 0 Comments
From June 1 to June 14, I went to the Transylvania region of Romania to volunteer on a farm that does almost everything the old way — no tractor, no fertilizer, no pesticides. I headed out via train from Budapest to Huedin, which is a town of about 9000 about an hour from Cluj. From there, I went to Rachitele, …

Quant Interview Questions (part 3)

  • Mon 01 Apr 2013
  • 0 Comments
I should be studying for a math test right now, but my brain needs a break from groups, subgroups, factor groups, rings, and fields (for my test on Wednesday) and from almost linear systems of differential equations and matrix exponentiation (for my test tomorrow morning), so here are the details of another one of my interviews! This one was definitely …

Quant Interview Questions (part 2)

  • Mon 18 Mar 2013
  • 0 Comments
Here is another interview question from a separate interview with the same firm: “Given the results of a round-robin tournament, can you always create a list of teams ordered such that, when looking at a single team, the team to its left won against them, and the team to its right was beaten by them?” Clarification A round-robin tournament, for …
Zach McCormick

Interested in chatting?

I'm always happy to chat about software engineering challenges of all sorts - architecture, organizational, or otherwise. Just drop me an email at zachary.tyler.mccormick@gmail.com.