Building great dev teams in the aggregate
There's a scene in Moneyball, the movie based on Billy Beane's tenure as coach of the Oakland Athletics baseball team, when the player recruitment committee are discussing how to replace a great player they've lost. Beane (Brad Pitt) interrupts them saying "Guys, you're still trying to replace Giambi. I told you we can't do it, and we can't do it. Now, what we might be able to do is re-create him. Re-create him in the aggregate."
When a tech company matures past being a plucky start-up with "10x" superstar developers pulling all-nighters the boring work begins of actually consistently iterating and delivering well thought out features to live customers. Assuming its an Agile/Scrum methodology then the central point of delivery is the scrum team. This is where the magic happens - but the magic must be conjured.
There's a reasonable tendency when recruiting and building a team to either recruit people very like yourself, because you 'click' and understand one another. Or conversely to recruit people who make up for something you yourself value but lack. But its not all about you! We must have a clear idea of what makes a great development team. Ask yourself what the ultimate developer might be, but instead of trying to recruit 5-6 of him/her, ensure that these traits exist in the team. Re-create them in the aggregate.
After years of building teams, some more successful than others, I have my own list of required developer archetypes, let me know if they chime with your experience. Or, maybe its just because I loved the A-Team when I was a kid.
The Ground Breaker
Loves solving problems and getting a project off the ground. Has great ideas about design patterns and matching the tech to the solution. Can often get distracted and leave things half finished.
The Finisher
Perhaps envies the Ground Breaker but is very happy to pick up the trail after the ground breaker has moved on. They are the real hero, that makes the dream a reality.
领英推荐
The JFDI er
Just 'Flipping' Do It! Especially in a Scrum environment, it's possible to talk and talk, then do a spike, then spend an afternoon in refinement, when what it really needs is for someone just to get it done - maybe build a prototype or pipeline. A barely minimum viable product. To be impatient for success.
The Safety Firster
Being aware of the pitfalls, minefields, and potential headaches is a vital commodity in delivering scalable, monitorable code. Creating automated tests, always concerned with the details, promoting defensive coding allowing others to be creative and ambitious within guard rails.
The Storm Calmer
Having a rounded personality and emotional intelligence to step in when others are feeling the heat. To be a bridge between competing factions. Pairing on difficult tasks and being a 'rubber duck' listener when required. A good all-round understanding and experience of whats required but does not need to be a specialist in any aspect.
Education Manager at CCEA
3 年Turns out I’m almost the perfect team member, everything but the finisher ??