Thoughts on Leadership
“A boss has the title, a leader has the people.” - Simon Sinek
The term “leadership” is a loaded term. We have a shared understanding of what it implies, but there is no one definition of what a successful leader is or what they do. This is why it is a term that needs to be defined for oneself within the context of the activity they are leading.
We are all leaders, as we must first master and be leaders of oneself. A leader does not require a title of ‘boss’, and is usually defined by the level of impact one has within their sphere of influence. A leader looks at the bigger picture, has a vision of the future, and has the ability and emotional intelligence to motivate and inspire others to help fulfill this vision. A leader brings their full attention on the team, so the team can focus on the mission.
A leader isn't only concerned about their own output but rather the output and quality of the whole. We can do more and be better together, and a leader aims to empower collaboration and raise the game of everyone.
I can't possibly get all my thoughts on leadership on this short page, but you'll be able to find more in the writings that I put on the blog.
Leadership philosophies that I subscribe to:
- Leadership is a position of service.
- Failure is an opportunity for growth.
- Discomfort breeds new ideas and positive change... don't get too comfortable!
- Autonomy empowers when coupled with accountability.
- Always be nurturing the next leaders.
- Check ‘in’, don't check ‘on’.
- Proactive, not reactive.
- Answer the ‘why’, not the ‘how’.
- Vision: Clarity is power.
- A joy shared is a joy doubled, a pain shared is a pain halved.
- A leader's success is reflected by the success of others.
- Be Authentic. Be transparent.
- Influence, don't enforce (exceptions exist).
- Mistakes happen. Fail forward, fail fast.
- Before you can improve, you must be able to measure.
- Ask the dumb questions so others don't have to.
- No one is smarter than all of us.
- Leaders speak last.
Engineering Philosophies:
- Write your code as if the next engineer is an axe-wielding psychopath who knows where you live. Comment abundantly.
- Code is an art, treat it as such and make it beautiful.
- Deliver with confidence - write effective tests and automation.
- Release as often as possible.
- Engineers do not work in silos. An engineer working alone can be a dangerous thing.
- Trust the numbers (AB Tests), not your gut.
- Code segregation is king. Separation of concerns per layer.
- Don't get personal, keep a low attachment to your code.
- Commit and push often. Don't get hit by a bus.
- The least amount of code is not always the best code.
- Allow for freedom of expression, within a framework of standards.
- Assume ugly or painful legacy code was written that way for a reason. Don't judge your predecessors.
- Knowledge is power. Knowledge sharing empowers. This also builds trust.
Process Philosophies:
- Too much inventory (work in progress) is bad. Get things to done.
- Small incremental efforts build towards big success (Kaizen).
- Change is constant and expected. Strategy first with room for tactical needs.
- Clarity of team vision is critical.
- Just enough process. The need for process will reveal itself in the form of discomfort and confusion.
- Don't wait for all the answers to start.
- Make work visible.
There is no one-size-fits-all style of leadership, and I believe in intentional leadership where trying out new approaches, combined with regular reflection, will inevitably breed a great leader and build great teams.
