Feedback, Structure, and Direction: The Fundamentals of Team Leadership

Applying technical leadership best practices to people leadership

By Kalen Emsley
  • You had a great idea, started a company, and are now leading a team of engineers building a product. However, you are struggling with scaling your time.
  • You’ve wanted to be a software lead for years, and an opportunity has arisen. You are now stressing about how to prove yourself without screwing up.
  • You are the most competent or reliable member of your team. Your current lead quit, and boom, you are now the new team lead. This isn’t your jam, but how do you get started?
  • feedback (growing your team’s capabilities),
  • structure (the architecture of both the code and the team’s operations), and
  • direction (where your team is going and how they are going to get there).

Framework: Feedback, Structure, and Direction

  • As a new engineer, you primarily write code and receive feedback on the code through code reviews and project retrospectives.
  • As you grow, you begin learning about design patterns that help structure your code and architecture patterns that structure the team’s code. These patterns are like highways that enable people to move quickly and safely.
  • As you master your craft, you begin seeing further into the future and set the direction of the team with a technical vision or roadmap.

Feedback

Work product vs work execution feedback

Business-impact-driven feedback

  1. maximize the value generated and
  2. minimize the delta between total compensation and competitive salary.

Structure

APIs for teams

  • Simplicity: Interacting with your team shouldn’t be complicated.
  • Well-documented: Clearly defined inputs/outputs enable external teams to provide the correct inputs to receive their desired outputs.
  • Rate-limiting: Your team can’t do infinite work, so how do you communicate capacity limits?
  • Stable: Be selective when making updates to your external processes. Reliability trumps speed.
  • Gather consumer feedback: Have a way for people to request new or modified functionality.
  • responds to requests for new functionality,
  • supports existing functionality,
  • performs capacity planning, and
  • interacts with dependent teams (design, QA, etc.).

Architectures for teams

  • Cycle planning includes the brainstorming sessions that prep the team for the next X weeks of work.
  • Coordination is how the team communicates and shares knowledge.
  • Roles are especially important for cross-functional teams where people have different skill sets and resulting responsibilities.
  • Support describes how you respond to events (ranging from critical to trivial).
  • Reflection and feedback allow the team to self-critique and improve.

Follow existing design patterns

Direction

  1. Team vision: What should the team look like in one to three years?
  2. Team roadmap: What are the major milestones between today’s reality and the vision?
  3. Team principles: When given a choice between tradeoffs, how should people bias themselves?

Wrap-up

  • Feedback includes both work product and work execution feedback. Remember to tie everything back to impact.
  • Structure describes the architecture and API for your team.
  • Direction includes the vision, milestones, and operating lens that enable your team to make appropriate decisions.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Elliot Graebert

Former Head of Internal Cloud at Palantir, Infrastructure and Security Nerd, Gamer, Dad