The below quote is taken from Lessons Learned From Scaling Uber To 2000 Engineers, 1000 Services, And 8000 Git Repositories
- Pure carrots, no sticks. This is a deep point about the role of command and control is such a large diverse group. You’ll be tempted to mandate policy. Thou shalt log this way, for example. If you don’t there will be consequences. That’s the stick. Matt says don’t do that. Use carrots instead. Any time the sticks come out it’s bad. So no mandates. The way you want to handle it is provide tools that are so obvious and easy to use that people wouldn’t do it any other way.
Other things to take away:
- Minimal performance metrics and tracing in base application layer
- Common dash-board etc so that people can understand metrics from other services (maintained by some other people)