Conway's Law: When Best Practices Are Not Enough by Julien Topçu

Explore the challenges of software architecture and organizational structure, as Julien Topçu discusses the implications of Conway's Law and the importance of decentralization, simplicity, and consistency in system design.

Key takeaways
  • Conway’s Law states that any structure with multiple parts has a tendency to stagnate and finally disintegrate, in exact proportion to the size of the organization.
  • The speaker notes that companies should not mirror the structure of their organization in their software architecture, citing examples such as user and billing teams that are supposed to interact.
  • The solution lies in reorganizing the structure of communication to eliminate silos and allow for closer collaboration.
  • The speaker references Dr. Jekyll and Mr. Hyde, illustrating that organizations often contain contradictory forces.
  • The homomorphism principle states that the structure of the organization has a profound impact on the design of the system, and vice versa.
  • The speaker suggests that organizations should focus on creating decentralized solutions, citing examples such as Docker and Netflix.
  • Conway’s Law is a prediction, not a law, and organizations should design systems around the principles of simplicity and consistency.
  • The speaker references the book “Team Topologies” by Matthew Skelton and Manuel Pais.
  • The speaker notes that, unfortunately, this is not a panacea and that concentration will take place.
  • Ultimately, the speaker suggests that adopting the principles of domain-driven design can lead to more flexible and adaptable systems.