(Read Part 2.)

Say, we have a SaaS company with gross margins of 60%. For each dollar of revenue, 40¢ is spent producing the product unit, and we keep 60¢ to reinvest in the product. This 60¢ can be spent on activities that deepen the competitive moat: developing new products…

(Read Part 1.)

Growth is straightforward: are people buying what we are selling?

Following the convention set in Part 1, we will be using product units. Depending on your context, a “product unit” can be a subscription, a license, a ride, a loan, a card, a night’s stay, 1m page…

Or “Finance Wants You to Give a Forecast and What You Can Do About It.”

A guide for engineering directors, the occasional engineering manager, and the rare software engineer.


Congratulations! If you are reading this guide, you probably work for a company that has found product-market fit and is starting…

I have been building a security engineering team for the past 9 months. Here are a few things I learned.

Photo by Matthijs van Heerikhuize on Unsplash

It is going to be challenging.

First, let us acknowledge that security recruiting is hard. It is very very hard, and is possibly the hardest kind of engineering recruiting out there. When I realized that I…

Having worked in a few startups that hired rapidly, I have noticed that there is always this first moment when someone would exclaim that some department can no longer fit in the largest conference room. …

Photo by Megan Markham on Unsplash —Wear all the hats!

When I first dipped my toes into management, my company and I worked out an arrangement where I was effectively both a tech lead and a manager. (This is also known as a “TLM”). It was a great way to transition myself into a new management role. In hindsight, I…

Co-author: Anuj Desai

Traditional backlog management — Photo by Kelly Sikkema on Unsplash

Anuj and I have had the privilege of working with several teams on their roadmaps and sprint plans over the last few years, and we noticed that it is not always obvious what a healthy backlog should look like, or how it can be maintained.

If only career ladders were upright and obvious — Photo by Max Ostrozhinskiy on Unsplash

Promotions and compensation adjustments are some of the most important functions of management. By electing to recognize (or not recognize) individuals and their contributions, we construct a system of incentives that encourage and reward certain behaviors. …

Don’t block the loop. Photo by Chris Arock on Unsplash

This is a short explainer of event-driven servers, intended to help readers gain an intuitive understanding of event loops. It could be useful when:

  • deciding between different MPMs for Apache HTTP Server
  • comparing Apache HTTP Server and NGINX
  • choosing concurrency models for gunicorn
  • troubleshooting an event loop

Concurrent Servers

In the classic…

Not everyone lives near AWS us-east-1. Photo by Anastasia Dulgier on Unsplash

At the beginning of 2019, Engineering@Affirm set aggressive performance goals for our react apps and affirm.js¹ to improve user experience. To drive this effort, we started out by improving instrumentation, and measured, in granular detail, the performance of each of our apps and of affirm.js. …

James Lim

Engineering@Samsara (ex-Affirm) - jimjh.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store