Principles of Effective Teams
Posted Almost 5 years ago. Visible to the public. Draft.
- Ownership
- A team might own multiple services
- 1:n ownership can lead to conflict about technical choices and make accountability unclear
- Autonomy
- Important to scale
- Self-forming teams
- End-to-end responsibility
- Devops
Related cards:
Microservices Team Models
- Grouping by function
- Unclear ownership
- Lack of autonomy
- No long-term responsibility
- Risk of silos
- Grouping across functions
- Aligning teams with business value will be reflected in the application developed; the te...
Characteristics of a successful on-cal rotation
- Inclusive — Everyone who can do it, should do it, including VPs and directors.
- Fair — On-call work should be remunerated in addition to normal working hours.
- Sustainable — Enough engineers should be in a rotation to avoid burnout...
What’s the purpose of a microservice chassis?
- Making it easier to onboard team members
- Getting a good understanding of the code structure and concerns regarding the tech stack that an engineering team uses
- Limiting the scope of experimentation for production systems as the team build...
6 fundamental capabilities of microservice production environment
- A deployment target, or runtime platform, where services are run, such as virtual machines (Ideally, engineers can use an API to configure, deploy, and update service configuration. You also could call this API the control pane, as shown in the...
Maximizing Service Reliability
- Load balancing and service health
- Readiness
- Liveness
- Rate limits
- Back-pressure via headers
- Validating reliability and fault tolerance
- Load testing ([The art of scalability](The
Art of Scalability))- Load test as part...
How to build reliable communication
- Retries
- Exponential backoff
- Use jitter
- Considerations
- Always limit the total number of retries.
- Use exponential back-off with jitter t...
Three common patterns for zero-downtime deployments
- Rolling deploy — You progressively take old instances (version N) out of service while you bring up new instances (version N+1), ensuring that you maintain a minimum percentage of capacity during deployment.
- Canaries — You add a sing...
Minimum layers for documenting services
Type | Summary |
---|---|
Overview | An overview of the service’s purpose, intended usage and overall architecture. Service overviews should be an entry point for team members and service users. |
Contract | A service contract should describe t... |
Posted by Sanjay to Microservices In Action (2019-07-13 16:19)