Engineering Principles and other hard-won lessons
Leadership
Some of these come from conversations with Ales Holecek
-
Rule #1 - Prioritze
- 3 strikes principle
First month do what you need to do Second month mentoring and coaching Third month: it's dysfunctional, so needs to be fixed (e.g. leadership change)
- Everything is matrixed. So you need leaders who can do product and technology
- Which metrics do we want to move? - customer or business focused
- Ruthlessly eliminate dysfunction
- Go plant your flag!
- Write down you principles
- Work is to achieve my mission
- provide an all-in moment
Making decisions
Expected value decisions: P(success) x reward - cost of failure
Running organizations
- Get the culture and people right
- 80% of investment needs to be in the direct service of the customer
- If I don’t believe your plan you don’t have a plan
- “What is the speed of light” of a problem
What are the *actual physics*. Work back from there.
Culture
- You can’t have a cultural translation layer in the org (align culture at the top with culture in the middle with culture at the bottom)
E.g. Concept of family vs. professional sports team
Organizational design
- Fix only dysfunctional orgs (because landing a new org take 6-9 months). Be steady-handed
- Experts across the full stack needed to create a product have to be part of the team
- Horizontal teams have the highest dysfunction (because they are disconnected from the customer)
-
L-shaped orgs (platform + customer facing scenario) keep everyone humble
- Learning has to be part of the design because probability of getting things right the first time is so low
- Measure NPS consistently
Project setup
Dependencies
- A new product has to be dependency free, or only have dependencies that can be satisfied by providing a credit card (i.e. no people involved in getting a dependency commit)
- Cross-geo dependencies within team ~= cross-team dependencies (i.e. hard)
Engineering methodologies
- Premortem - things that can wrong
- Integrating two experiences - tight coupling between components drives down overall reliability
- Catastrophic failure of scenario #1 does not lead to catastrophic failure of scenario #2
Random life lessons
- It generally doesn’t hurt to ask
- Life is about making the most of your circumstances
- Don’t assume the future will be like the past. Play scenarios.
- When ideating, choose 3 ideas to start with YouTube video
- Don’t put comfort ahead of success
- Managing my career is 100% my own responsibility
- It’s time to take a single self-confident leap rather than a series of incremental steps that don’t lead very far.
- The Four Agreements
- Be impeccable with your word
- Don’t take anything personally
- Don’t make assumptions
- Always do your best
An information diet: Kevin Scott’s 70/25/5 rule - Read 70% peer-reviewed long-form high quality - 25% to learn something new (from new sources) - 5% the rest