We recently changed the ownership of a (internal) service to get better alignment with our goals. In hindsight, this was a classic case of Conway’s law. The design we went with was fundamentally informed by the ownership model. It was a good design for what it wanted to achieve, but along the way, we changed what we wanted to achieve. To meet our more ambitious and experimental roadmap, the ownership model needed to change.

This was not an easy decision, and any decision had (still has I suppose) significant long term ramifications. With any decision like this one, the key is to make it intentional. Not everyone has to agree, but you if you start with set of Tenets, lay down all the options, and identify the risk and benefits of each option, you can make a call. In this case a big driver was to balance immediate needs, long term architectural requirements, and a desire to make experimentation easy in a world, where customer and business requirements are constantly changing. It’s a mechanism we use often and for the most part it works. Could we have done this sooner? Probably, but this time we had really good data to get more comfortable with our choices.

Long story short, you have to constantly question your assumptions, both engineering and organizational, because you do need to align the two. You also need mechanisms that help with decisions that have impact on not only the technical direction but also on the people involved.

Written by

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