Dependency Management in a Complex World (Danny Thomas)
Netflix has evolved from a monolithic web application to a distributed SOA system. This enables a deep understanding of dependency management. This session provides insight from these efforts.
After years of evolving our build, we’ve developed a few conceptual models of dependency management. Dependency management is hard, and in all cases there are compromises, and you the build owner should be conscious of which choices you’re making and what else is available. By exploring a spectrum of trade-offs, you’ll leave the session understanding how dependencies can be managed and where dependency management fails.
As background, we’ll explain Netflix’s build evolution from a monolithic web application to a distributed SOA system in the cloud and how that affects the definition of continuous delivery. Then we’ll contrast the build methodologies from a few other well known companies, which take different approaches. We’ll explore what other build frameworks do to maintain complex changing dependencies.
In conclusion, we’ll introduce some tools we’ve developed at Netflix which attack dependency issues on a large scale.