Categories
Shorts Software Engineering

The only reason we should trigger alerts

There’s only one reason we should ever trigger alerts: There is a failure or risk of failure we should act on. Everything else is just noise. It’s common to trigger alerts for non-failure situations or errors that require no action: In each of these situations, the alerts are just noise because there’s no action required. […]

Categories
Shorts Software Engineering

7 questions we should always ask when designing a service

Designing a service can be intimidating. We sit down with only an incomplete list of requirements, our wits, and previous experience. How can we have confidence that our design covers the given requirements, is flexible in the face of inevitable changes, and doesn’t miss large areas of risk? Start by asking good questions. Whenever I […]

Categories
Shorts Software Engineering

Use incidents to sell fixing technical debt.

Everyone says they want to fix tech debt, but, in my experience, almost no one really tries. Every developer at some point, probably If product owners and stakeholders can’t see the gain (or avoidance of loss) in fixing technical debt, we’ll be stuck with whatever random percentage of effort they set aside for it. Incidents […]

Categories
Shorts Software Engineering

Is every service a server in a microservice architecture?

“Service” and “server” are basically the same word, so it’s reasonable to question the difference between the two. Services are abstractions we use to discuss our architecture. Servers are the hardware we use to run our system. They overlap in different ways, depending on what we’re trying to accomplish. One-to-many; One service == Many servers […]

Categories
Shorts Software Engineering

5 reasons developers reject our “simple” suggestions during code review

Why do people bend over backwards to complicate simple logic and architecture? A developer complaining about code reviews Reviewing code can be painful. We set aside our work, switch into someone else’s context, and then put time into providing useful feedback. It’s frustrating when other developers reject our simple suggestions and fight to justify their […]

Categories
Shorts Software Engineering

What environments should your dev team have?

Depending on your team or the reference you’re reading, it can be easy to get confused on all the environments you need. There are no universally agreed upon names, and the same environment can be used in different contexts. To clear the confusion, here’s a pattern for how to think about dev environments. Your dev […]