For some time now, I have been practising these skills by initiative. In my next
role, I would like some or all of them to be my stated responsibilities.
- Engineering strategy to reconcile business goals with technical constraints
- Finding a "3rd option" when business and tech needs seem to contradict
- Option 1: ignore the market pressure (e.g. pause features for a while,
gambling against our business experts' judgment)
- Option 2: ignore the software developers' concerns (gambling against our
engineers' judgment)
- Option 3: this is the hard part (ask me about some "third options" I
have come up with in the past)
- Translating the strategy into actionable first steps for engineering
- Translating the strategy into measurable targets for executives
- Technical excellence, training, and bar raising
- Identifying gaps in our delivery, operational, and security engineering
practices
- Communicate with executives about the risk and opportunity
- collaborate to assess whether this needs addressing now, later, or never
- Design measurable targets and metrics to drive the improvement
- Teach, coach, guide, review, and support engineers towards the goal
- Engineering culture — coaching collaborative, high-safety software development
- Using established and novel techniques for working together better
- Proactively improving the communication and collaboration
- Providing as-needed facilitation to navigate challenging collaboration
situations
- Operational excellence - reducing the frequency, severity, and duration of
operational incidents by driving culture and process changes
- By leading root causes analysis from single incidents to the system-wide
forces that make it possible
- Distinguish between emerging trends and one-off incidents to triage
our improvements where they count
- By working with engineers to improve tools and processes
- By designing and providing training and instruction to help engineers
identify and mitigate these issues before production