Andrew's Site

Things I've Learned in 2020 and Other Ramblings

January 17, 2021

It’s 2021. And it’s been a while since I wrote anything here (bit busy with being a new parent these days). So it seems like a good time to write up what I learned (or what was reinforced in my brain) in 2020.

Human connections are the foundation of a good team.

I’ve been working from home since March of 2020, and have not seen anyone in my team face to face since then. Some of the engineers in one of the teams I lead are based in Cherkasy, a city in Ukraine about 4 to 5 hours drive from Kiev. One of the things that kept our team working so well together was the regular trips there that we did every quarter. It gave us time to get to know each other, develop inside jokes, and just get better at communicating with each other. With those trips missing, we’ve had to fill in the gaps with other ways of staying connected - coffee breaks on zoom, online quizzes on zoom, lunches on zoom. Certainly not as good.

I like to think I’ll never take travel for granted again, nor the opportunity to connect with my team mates. But certainly all the effort we put into staying connected prior to 2020 helped us thrive this last year despite the challenges.

Measuring impact when building a platform is difficult.

When building a platform for internal consumption, the first thing that comes to mind when tracking impact and progress is to measure the uptake of that platform.
The second thing that comes to mind is to measure how “complete” that platform is. But neither are a good measure of impact in an organisation when there aren’t necessarily alternatives. So you need to look at what that platform allows other teams to achieve. A mistake I’ve seen made is to take the KPIs of other teams that are using your platform, and measure their success, making the assumption that their success is at least somewhat based on your support. Which I believe is also a mistake - it doesn’t really isolate the impact that your team is having. I believe what platform teams need to do is really think about what they’re trying to achieve - are you trying to make engineers in the organisation more efficient? Are you reducing risk? Are you improving customer experience by encouraging a consistent experience across products or platforms? Are you improving availability? Or stability, observability, or security? Some of these things are hard to measure - but it’s worth it long term.

Think early about what you’re trying to achieve, and measure that. You should think about how you can link those measurements back to your business goals. I sadly don’t have any shortcuts on how to do this easily. If I find any, they’ll certainly be in my 2021 year in review.

You can’t invest too much time in observability.

But you can have too many metrics and too much logging. Collect metrics on what’s important, and make sure you log the right things. Ask yourself if a log line will be useful in an investigation, or prompt some action if you see it.
Putting time and effort into observability certainly paid off for us this last year. I want to spend more time in 2021 making sure we increase our observability of our key metrics and KPIs, something that is also worth doing. If it takes you an hour or two to check how your team is progressing, you won’t do it every week.

Team work makes the dream work - but you need to define that dream.

Team vision is clearly important. But one thing that has become more clear to me this year is how important long term vision is. We had a shorter term vision of migrating a large piece of logic out of our monolith. We wanted to improve availability, reduce incidents, and increase engineer efficiency. And that was a great start. But we spent time developing that into a vision of how we could improve that piece of our product for our customers. How we could make the ops and customer support who interface with the new domain we migrated more efficient. And that’s really set us up well for the second half of this year. Teams with shared long term vision really are more motivated, and more autonomous.

Looking forward to what 2021 will bring.