Architecture and Organization
Drawing on real-life examples from Avvo, Spotify, Adobe, and Microsoft, Kevin Goldsmith explores why you should consider changing your organization to improve your architecture and discusses the successes and failures he’s seen around the interplay of organizational models and software architectures.
Kevin often visits companies, where he hears about how they struggle to break up monolithic applications or move to a continuous deployment pipeline. Oftentimes, the organizational structure is clearly making their problems harder but is seen as something that can’t be changed.
Kevin relates his own journey to a more experimental organizational style. As a developer at Microsoft, Kevin worked in a rigid hierarchy organized around functional areas. The communication flows within the organization dictated the way it structured its libraries and dependencies. This is the essence of Conway’s law. In this case, the company hierarchy and the architecture it produced was often suboptimal for the problem Kevin and his team were solving, but it was the architectural path of least resistance.
When Kevin moved to Adobe and became a senior manager, he started to build his organization in the traditional way. Adobe wanted to create a more fluid and agile architecture for its products, but the company struggled to realize these goals because it was too hard to work across teams and reporting lines. The company finally started to make some progress as the organization became more fluid and loosely coupled.
Kevin then went to Spotify, which had realized this problem early on and restructured its organization in a way that supported the architectural model that it wanted to build. As a vice president of engineering, Kevin was able to see firsthand how the organizational model simplified the architectural challenges that other companies struggled with while also introducing difficulties that other companies were easily able to overcome.
When Kevin joined Avvo as its CTO, the company had the same organization and architectural challenges as many other startups, but rather than attack them only from an architectural angle, Avvo experimented with architecture and organization together to improve its legacy systems and help build new ones faster and with higher quality.
- O'Reilly Software Architecture Conference - November 15, 2016 - San Francisco, CA, United States
- Seattle Code Camp - September 09, 2017 - Seattle, WA, United States
- Full Stack Toronto - November 29, 2018 - Toronto, ON, Canada
- Beyond Agile Meetup - March 27, 2019 - Seattle, WA, United States
- Abstractions II - August 22, 2019 - Pittsburgh, PA, United States
- JAX - September 08, 2020 - Mainz, Germany
- Rio de Janeiro Cloud Conference Day - October 17, 2020 - virtual
- Agile Meets Architecture - September 07, 2022 - Berlin, Germany
- Software Architecture Gathering - November 29, 2023 - virtual
- Attended great talks today at #fstoco including topics on: bootcamp developers with @hilarysk, male allies with @rabergman, 1:1 tools with @g_the_engineer and organizations and architecture with @KevinGoldsmith. - Chris Seifert
- Last talk by @kevingoldsmith was fantastic. All about organizations and their architectures. His talk last year was also great. You should search it out! - ரமணன் சிவரஞ்சன்
- @KevinGoldsmith with a full room talking about his experience through a number of different orgs. #abstractionscon - shidoshi
- Loving @KevinGoldsmith explaining the reverse Conway manoeuvre- design your org to get the architecture you want. #abstractionscon - Lisa van Gelder
- And it went on! @KevinGoldsmith connecting Neuroscience and Conway's law. Really insightful (and scientifically backed!) experiences regarding the impact of organizational structure on software architecture! @AmA_conf #amaberlin - Bernhard Mayr