Engineering Excellence
Amazon has a famous concept called OE
which is short for Operational Excellence. The other term not so famous, is EE
that short for Engineering Excellence. EE focus on the engineer development strengths and OE focus on the maintenance strengths.
Onboarding Process
- differentiate between
Runbook Execution
vsRunbook Understand
- for example, the runbook says run command xyz on host abc. Do it is simple, but understand it is not simple. Few questions to clarify to fully understand it:
- what does the xyz do? why need this step?
- why host abc not else? is it always hardcoded? what if that host is gone?
- for example, the runbook says run command xyz on host abc. Do it is simple, but understand it is not simple. Few questions to clarify to fully understand it:
Toolkits
pUML
Mentalality
Ownership
Motivation
- Be proactive
- Curious and Learn
Customer Obssession
Do the Right things
- working backwards
- focus on how it contributes to end customer/business/value
Measure Productivity
Few tenets:
- Optimize as close as dev phase
- Pay attention to on-board phase
- Speak Same Language (same code style via checkstyle, same standard via SpotBug, same coverage via dryrun)
Metrics to watch:
- commit messages like a story
- commit pattern
- RedFlag: revert commits (revert revert is a hard stop)
- CR comments
- Pipeline stats
- PreProd success rates
- Prod rollbacks
- Priority Deployments
- why do you need patch?
- why can’t do patch as deployment?
- least required testing coverage ASAP