“What? Great software isn’t made by 10x programmers, but by great teams?”
This is a website about working together. We’ve got a whole bunch of topics to cover, spanning pretty much all aspects of software development. Occasionally, we’ll be venturing out into related topics such as change management, mentoring, and good old-fashioned trust. But at the core we’ll be talking about working together.
You see, when we work together, we can accomplish the most amazing things. Just think about the moon landing, the internet, or any other of our greatest achievements. When we work together, we can get the best of everyone. When we work together, we can contribute to something larger than ourselves.
How does that all relate to you though? Well, throughout your life and especially your career you’ve been part of various teams. Some were formal, others informal. Some existed for a long time, others for less. Some were successful, others not so much. All that experience with different teams will have taught you one thing: there’s a huge difference between a great and a not-so-great team.
In a great team you and your peers bounce ideas off each other until you find the simplest solution that’ll work. You’re making rapid progress towards a shared goal and along the way you’re learning a ton of useful stuff. Work’s fun and you love every minute of it.
In a not-so-great team, contrarily, people work towards seperate, potentially opposing goals. You might find yourself in active competition with each other, so no wonder it’s become acceptable to impede the process of others. Most of your work is being discarded and eventually you dread coming into work.
It’s obvious what team you’d rather be on. A great team will not just make you happier, it will also enable you to do the best work of your life. Obviously, you should always strive to be part of a great team!
Luckily, the ads around you seem to be suggesting that it’s easy to form a great team: Just bring a few people together, impose a couple of processes and spice everything up with the latest software tools and you’re done, right? Wrong! Forming a great team is hard work. It requires dedication, a focus on individuals and a commitment to actually be working together. Only then can we create an environment in which everyone can excel.
This is exactly what we’ll be talking about here, so:
And most importantly, check out the other articles regularly. There’s not much there yet, but I’ll try to publish a new article about once per week. The first couple of articles will focus on pair programming, coaching engineers and mob programming.