Categories: Leadership

4 Things To Know About Teamwork

Here are the four things to know about teamwork:

  1. When the situation is tense, call a timeout, it’s the only thing that will work
  2. Information needs to be as close as possible to the team members that can make use of it
  3. Be aware of the message you’re sending as a team leader, senior developer, CTO because it affects how the team works together
  4. Some team members want to learn new things and develop their skills, you absolutely must help them do that whenever possible
Continue reading “4 Things To Know About Teamwork”
Categories: Portfolio

Did a talk at Software Freedom Day in Toronto on “Open Source, Open Allocation”

Click here to see more information about software freedom day in Toronto.

The talk was on 19 September 2015.

Open allocation: people get to decide what to work on and how. Gives people an opportunity to contribute to strategy, business objectives, etc. It’s bottom-up in terms of organization hierarchy.

Closed allocation: people get to decide how to work on something, they’re given the what by their boss, other department, client, etc. This is the typical way things work at a job and in most jobs this will continue to be the case.

Open source projects are open allocation; the maintainer or developer decides what they want to create and then creates it. There’s no external incentive making them give up control over what they want to create.

I’ll be writing more on this subject and hope to do a few more presentations to clarify the ideas, but basically open allocation is the future of (most) work. Our productivity levels are high enough that we can let people have 20% time to think of new projects and to work on them. At a typical company you’re losing value if you don’t let the employees on the front-lines make contributions to the strategy or business objectives of the company.

Categories: Leadership

Effective Technical Leadership

Some notes from the Effective Technical Leadership talk given by David Byttow.

Attributes of an effective technical lead

  • Knowledge: “A strong tech lead’s knowledge is broad and deep…A tech lead should be a master of several technologies.”
  • Speed: “be ultra-responsive and capable of making instant decisions, always kicking the ball forward”
  • Awareness: “You should be able to keep the current state of the entire project in your head at all times.”

Activities

Some key actions

  • Help create and stack rank project priorities
  • Define best practices for issue tracking
  • Coach other engineers
  • Review code in detail and provide useful feedback
  • Shield engineers from management when needed
  • Explain why decisions are made
  • Fight for the right design decisions
  • Load-balance work among the team