Overview
Explore the balance between leverage and autonomy in large-scale software development through this conference talk from Strange Loop. Delve into the challenges faced by companies like Twitter in managing hundreds of engineers building complex systems. Examine the tradeoffs between centralizing components for increased leverage and decentralizing for better autonomy. Learn about concrete examples from Twitter's experience and discover Strato, a new "serverless" platform designed to boost engineer leverage while maintaining acceptable autonomy. Gain insights into Strato's design, implementation, and performance at Twitter, featuring a Scala-like DSL for implicit concurrency and native Thrift data manipulation. Understand how this innovative approach addresses the leverage-autonomy dilemma in large software systems and its potential impact on organizational structure and efficiency.
Syllabus
Intro
Big company problems
Andy Grove on org structure
Global effects of autonomy / leverage
Sweet spot: cluster scheduling
Sweet spot: Finagle as Thrift service framework
Sour patch (?): monolithic service
Sweet spot (7): service oriented architecture
Sour patch: cross-service application logic library
Sour patch: unowned services
Strato: a platform for microservices
Why a new language/implementation?
Example: fetch tweets in a user's timeline
a sweet spot?
Emergent benefits of centralized platform
Conjecture
Taught by
Strange Loop Conference