People love labels. As soon as you meet someone they instantly want to classify you. Web designer? Gen-Y? Level 50 Shaman? Shffft – you’re labeled.
Same thing happens on software projects. Whenever we form teams we naturally want to know the role each of us is going to play: Developer? Analyst? Tester? PM? Bam – you’re labeled.
Labels are fine, but they can stop you from thinking. ‘It’s not my job’ to worry about how the application works, or that there’s a bug with the print screen. QA or someone else on the team will pick that up.
When you think you are defined by a role or a title you are.
But we all know the most valuable members on our teams are usually those who can where multiple hats.
It’s the developer who has a passion for testing.
The tester who can code.
The analyst who thinks about design.
And the designer who has a passion for the business.
As agile gets more mainstream, I think we are going to see more and more of this style of work.
The rise of the generalist.
Where no single team member is limited by a role or title. Multiple people simultaneously where multiple hats. Much like a startup.
Dan Pink sums it up best in Drive: The Surprising Truth Behind what motivates us.
If we are truly going to empower our people, and let them do whatever it takes, then we better get out of their way and support them in playing whatever role(s) they need to play.
So don’t let a title or role stop you from serving your customer. Use whatever innate skill and ability you’ve got.
And if this subject of how agile teams work is of interest to you, come see me speak at Agile 2011 in Salt Lake city where I will be presenting a talk titled The Surprising Science Behind Agile Leadership and what really motivates us.
Jul 03, 2011 @ 17:27:37
Is your definition of a generalist fair? A generalist would be someone who can cook, sing, dance, program, run marathons, speak languages and program, wouldn’t they? I played rugby when I was younger, could play as a forward, back, half-back and even played on the wing. Not sure this made me a generalist but just a rugby player. A tester who can code, help with the backlog, manage a team, etc., is surly not a generalist but a software professional who can play in a number of positions.
That someone hides behind a role or label is a question of irresponsibility, a jobsworth we call them in England, as in the sentence, ‘that’s more than my job’s worth’.
Jul 04, 2011 @ 11:32:11
Good points Jamie. You are right. One could argue the generalists I am describing here are software professionals doing more than one thing and are not really generalists at all.
And yet so many projects are set with clearly defined roles, that generalism (or stepping outside your narrow role or title) is often discouraged and in some cases strongly resisted.
All I am saying is companies could benefit from running their software projects more like startups and less like corporate boiler plate software factories where every project requires a: BA, QA, developer, and PM.
If you’ve got one or two people how can play all these roles, why not empower them and drop the others? They are dead weight and only going to get in the way.
Thanks for your thoughts.
Jul 04, 2011 @ 13:37:54
@Jamie: I think it all depends on the scope and context. JR’s definition of “generalist” is based upon the narrow scope of a software development project. Your definition of “generalist” is based upon a wider scope, rather like the classic Renaissance Man. You’re both correct, but within different contexts.
Jul 03, 2011 @ 17:28:15
(I said program twice – that’s how good my generalist is ;-))
Jul 04, 2011 @ 11:44:44
Last year I made a note about roles in response to Cohn’s blog about pirates. It’s worth digging up and having a look.
http://www.financialagile.com/reflections/9-general/30-role-the-dice
There are business reasons to encourage generalists, too.
Thanks for the post and comments. Good stuff. J.
Jul 04, 2011 @ 18:36:43
As a generalist, I approve this message.
However, having enough diverse competencies and experiences enough to qualify for my own Dos Equis commercial*, The question I keep hitting is how to present myself? When meeting people, and when advertising myself onlinewhich hat should I be wearing? What is my elevator pitch?
This can be a problem: attention is fleeting, and the number of differing projects I’ve been involved in (and hats I’ve worn) is large. Having a bunch of personas gets difficult to maintain fast.
* http://www.youtube.com/watch?v=fYdwe3ArFWA
Jul 04, 2011 @ 19:36:37
@JohnBizri – I feel your pain.
I don’t have a great solution to this problem and it usually depends on who I am speaking to and in what context.
Recently I have been getting back more into dev, so I don’t have a problem with initially presenting myself as a developer, and then letting any others skill I might have shine through if appropriate.
On the other hand, if I am going in for a coaching or high-level consulting gig, I may start with consultant, PM, or analyst depending on what I am doing and how I am talking to.
My currently elevator pitch is samurai – but that’s more strategic. When I play that card I am wanting them to talk to me about their problems so that we can then explore some options without being judged or prejudiced by labels. Any other term would work here as well.
Excellent question though. Thx for asking.
Jul 05, 2011 @ 12:48:33
“A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.” -Robert Heinlein
Jul 05, 2011 @ 13:02:23
Lee, if specialisation interests you, have a look at this:
http://www.financialagile.com/reflections/9-general/98-such-and-such-were-the-joys
Jul 19, 2011 @ 23:01:03
Bridging the Client-Server Divide | Secure Software Development
May 06, 2013 @ 11:00:57