engineering

Software Engineering Etiquette

Building things that people can depend on requires a degree of planning and a willingness to stick to best practices, despite minor upfront timeline inconveniences. When things change, those changes should be documented and communicated to those people that rely on it, quickly and reliably. I had a conversation at work today about a piece of software my team was integrating with, suddenly failing to return results to a request our server was making. Read more

How to Alert

Define SLI’s and SLO’s We have to define what is successful operation of the service. Burger World example: Burger World has 3 main objectives: Serve customer orders at drive through in 3min or less. Serve customer orders at walk up counter in 5min or less. Less than 1% of orders result in corrective action. First assume that all other operations are working as designed, we only monitor and alert on deviations from the primary objectives. Read more