Ten Years of Multiproduct: The history and evolution of LinkedIn’s Software Engineering System

Nikolai Avteniev
LinkedIn, Software Engineer, Senior Staff

Nikolai joined LinkedIn in November 2012, shortly after we created an engineering team in our New York City office. He has worked on several projects throughout his time at LinkedIn, including: working with the Growth team to expand members’ ability to import their address books, working with the API team to create APIs that allowed members to use LinkedIn in compliance with financial regulations and helping to build the content ingestion service. As a member of the Oregon Data Center working group, Nikolai helped deploy the hundreds of services that power LinkedIn in our next-generation data center. Currently, he’s working with the video-sharing team, where he wears many hats, including contributing to the video-sharing experience as a member of the LinkedIn NYC Android team, playing the role of an Agile coach for the NYC iOS team, and representing NYC in the Technology Leadership Group.

In this talk, I will share the story of how LinkedIn designed our software engineering system, Multiproduct, and what we’ve learned from implementing, operating and evolving over the last ten years. I will share examples of design and implementation decisions we’ve made and how those decisions impacted our ability to develop and deploy software. I will describe tools and automation we’ve built and the organizational structures that have emerged to support our software development system. You will learn about LinkedIn’s multi-repo code setup and how we leverage semantic versioning and dependency management to share code across our product ecosystem. The lessons we learned will help you with your decisions when designing a software engineering system for your company.