Lessons learnt in 2016

For the last year I have worked as a team lead at Platform45. The team consisted of seven developers and one designer. We produced bespoke web applications using a Ruby on Rails stack. My job was to optimise the team (read scrum master) and to make sure they do billable work (read product owner).

Here are some things I learnt this year:

  • Focus where the pain is. The ability to cut through the fluff and prioritise is priceless.
  • Communication will solve 99% of your problems. We always want to engineer lofty structures and processes when we face a problem. It is likely that a simple conversation do the trick just as well.
  • Learn how to talk about your needs. Stress is the feeling we get when we perceive that we have an unmet need. The only way you’ll get that stress gone is by being able to talk about your needs.
  • Have lunch with people. Time spent with colleagues is more valuable than trying to clear your inbox.
  • Small habits make a solid foundation. Be disciplined about the small things, and the big things will happen on its own.
  • Technical debt is terrifying. Make sure it doesn’t catch you off guard.
  • Pace yourself. You’re no good to anybody when you’re stretched too thin.
  • Customers rarely understand you when you say “agile” or “lean” (even if they swear they do). Don’t use fancy jargon when talking about these things. Use simple language, stick to basics. Talk about needs, values and principles.
  • You will often have to remind customers that estimates are hypotheses, and need to be treated as such. People tend to forget this.
  • Having a definition of ready is just as important as having a definition of done. Often the work required to get things “ready to be coded up” is invisible. Make it visible.
  • Having a historical velocity is non-negotiable. This might be obvious to some, but for many it’s not. Velocity is what allows the team to do work that is sustainable and predictable.
  • Our purpose as a team is to create value for our customers. It’s not to make sure our test coverage is a 100%. It’s not even to write code. It’s simply to create value. Everything else comes secondary.
  • It’s rarely a people problem. It’s mostly a system problem. Your culture is your system. Culture should be leadership’s number one priority.
  • Champion causes you believe in passionately. Don’t compromise. There will be people who oppose you. Don’t be scared of them. Make it possible for others to champion what they believe in.

2016 was a good year. Thanks to all those who made it possible!