/Management

Best Practices For Making API Calls At Scale

- David Donnelly tl;dr: 3’s a crowd and 429’s a rate limit exceeded error. We explore best practices for making API calls at scale, the 4 most common ways rate limits are implemented, and a methodology for avoiding rate limits dynamically.

featured in #331


The 7 Roles Of A CTO

- Oded Blayer tl;dr: The CTO is: (1) Not to “execute” but rather to define, describe, direct the company towards achieving its vision. (2) The technology face of the company, it is a symbolic role. (3) Sometimes a people manager. And more.

featured in #331


16 Bell-Curve Opinions On Engineering

- Matt Rickard tl;dr: (1) You should always use Kubernetes and other "correct" infrastructure. (2) Technical debt is bad and should be avoided at all costs. (3) We need to build an internal developer platform that abstracts cloud APIs away from our developers. And more. 

featured in #331


The Problem With Fighting Fires

- Ed Batista tl;dr: "The problem isn't that you're too busy. If you view being busy as the problem, there's no solution. You will always be too busy, and that'll never change." The problem is that "you're acting like a firefighter instead of a fire marshal. You're rushing from one fire to the next, never slowing down to install smoke detectors" and, likely, "you're really good at fighting fires."

featured in #330


The Platform And Program Split At Uber: A Milestone Special

- Gergely Orosz tl;dr: "More than 100 people would need to be hired across engineering, product and design, to staff these teams. The new teams were stack ranked by importance e.g. teams responsible for growing the supply of drivers were ranked much higher than those generating rider demand." Gergely discusses Uber's biggest engineering organizational change: creating cross-functional program teams and introducing platform teams.

featured in #330


Eigenquestions: The Art of Framing Problems

- Matt Hudson Shishir Mehrotra tl;dr: 3 techniques for expert framing, including Eigenquestion, when one critical decision has ten related questions. The Eigenquestion is the question that, if answered, answers all the subsequent questions as well, discussed in more detail here.

featured in #330


How Do Individual Contributors Get Stuck? A Primer

- Camille Fournier tl;dr: ICs often get sidetracked or stuck by: (1) Brainstorming: “I must have thought through all edge cases of all parts of everything before I begin this project.” (2) Researching possible solutions forever. (3) Refactoring: “this code could be cleaner and everything would be just so much easier if we cleaned this up.” (4) Helping other people instead of doing their assigned tasks. (5) Finishing the last 10–20% of a project. And more. 

featured in #329


Learning A Technical Subject

- Murat Demirbas tl;dr: Murat believes cultivating the following attitudes helps navigate learning more easily: (1) curiosity, (2) relentlessness, (3) being a hands-on maker, (4) being social & learning to communicate well, (5) analyzing and drawing lessons, (6) leveraging previous experience. 

featured in #329


Pair Programming Is Difficult

- James Cross tl;dr: "I have tried to articulate some advice below for both the driver and navigator roles": (1) Agree a destination before you start. (2) Agree an estimated time of arrival. (3) There must be exactly 2 people and 2 roles. (4) Both people must be able to access a keyboard at all times during the session. And more.

featured in #329


Software Engineering RFC And Design Doc Examples And Templates

- Gergely Orosz tl;dr: "This article collects some openly available RFC templates and examples, and a list of companies that use such a process. I’d encourage to use these examples for inspiration. Take parts that resonate with you, experiment with them and modify them to your needs."

featured in #328