Badges?

“Badges? We ain’t got no badges. We don’t need no badges! I don’t have to show you any stinkin’ badges!”
– Gold Hat, The Treasure of the Sierra Madre

Once again the talk of agile certification rears its ugly head, this time in the form of merit badges.

As someone who has interviewed and/or phone-screened hundreds of candidates, I understand the motivation. One lame recruiting firm had me talk to about a dozen candidates in live, speed-dating form (~20 minutes each) plus another ten or so phone screens. We were looking for a technical agile coach who could pair and help developers with TDDing C++ code. Out of the 20+ candidates, only a couple were worthy of more consideration, and ultimately they too proved to be not up to the task. The rest? “I haven’t used C++ in 10 years.” Or, “I ran some unit tests once.” Or, “Yeah, C++ is on my resume, but I have zero interest in working with it again.” Or, one of my favorites, “Did you want me to show you my TDDs?”

Turns out whoever wrote the requisition had asked for the wrong thing. Their laundry list was lengthy, several sentences worth, and didn’t get to the essence of what we really needed. I reworded it. “Seeking agile coach to pair and teach developers TDD in a C++ environment” was about all it said. World of difference. Out of the (much smaller) handful of applicants we subsequently received, we could have hired just about any one of them. Don’t ask for more than you really need.

I would never consider discarding developer applicants due to lack of certification–whether that certification be SCJP, ScrumMaster(tm), Badge o’ Agile Merit (BAM!), or Bachelor of Science (yes, university degrees are simply an advanced and entrenched form of certification). I’ve never found a certification to be The Great Differentiator. I’ve encountered enough certified individuals who were complete wastes of time, and enough brilliant individuals who others might have passed over due to their lack of certification.

The premise is that certification would save us money in hiring developers. It might save a small amount of money, but I contend that it’s really only worthwhile, as Tom DeMarco says, for the certifiers.

I can eliminate at least 90% of the chaff by asking for the right thing. And, from the rest, within five minutes or so, I have a very good notion as to whether someone is suitable as an agile developer. This isn’t an advanced skill. Sure, you need to have done enough agile to spot the phonies, but most people who’ve been on a good agile team for at least a year or so have this experience. If you don’t have any such individuals with solid agile experience, then you should seek out a reputable firm who can talk agile, such as Improving Enterprises in Dallas, and seed your initial team with a couple people who will truly make the difference.

There is a huge cost in a revenue-driven certification scheme for everyone who is not a certifier. For those of us who take to agile on our own, and are already passionate about it, it is little more than a very expensive tax to us, and insulting to boot. For those who want to learn, there are far better ways than taking classes. Yes, some of the proposed schemes suggest more creative elements, such as conference attendance, but none of these demonstrate that someone’s worthy of hiring. They only demonstrate that someone has spent a good amount of money and time on “something.”

About the only real way to know whether or not to hire someone is to have worked with them for a good amount of time. Some of the proposed schemes center around this notion of a trust circle, which might work, but it looks like there would be cost still involved.

(I did propose a scheme which would require already-certified developers to pair a certain amount of hours annually with the would-be certified, as a pro-bono service. This would allow the ability to become certified with an investment in time only, not money. No bites yet–my cynical nature reinforcing my notion that the certifiers are more about income potential than anything.)

In this down economy, I find it deeply concerning that we are asking already-salary-beleaguered developers to relinquish even more of their income.

In lieu of requiring those looking for employment to spend lots more money, we should just filter them better, then talk and pair with them for a little bit of time. It is agile, after all, where we value face-to-face communication and not so much written documentation.

Certification and the Agile Alliance

I attended a panel presentation, “To Certify or Not to Certify,” at Agile 2007 in Washington, D.C. The presenters included several esteemed members of the agile community, including (but not limited to!) Ron Jeffries, Michael Feathers, Mike Cohn, and Angela Martin. I thought the panelists offered some interesting but far from comprehensive thoughts on certification. The panel deliberately avoided “hot” or contentious questions, in favor of a subdued give-and-take on the topic.

What I heard was essentially this message: “certification is inevitable, so we should try to beat those other guys (whoever they are) to the punch.” Presumably, the interest would be to build good certification, so good that those greedy other guys don’t come up with poor certification. (The Agile Alliance issued a position paper on what they thought the value proposition was for certification; it can be found here.)

Shortly after the conference, I was invited to and joined an online action/discussion forum consisting of some of the aforementioned panel members. I asked for some goals for certification, thinking that there are many paths to many different kinds of certification. The first step toward any solution is knowing what the problems are, and how much of each problem you’re trying to solve.

If there is a discussion forum metaphor for blank stares, that’s what I got with my posts. A different action group formed, one where a decision was already made to build some sort of trust network (based on a notion similar to Google page ranks). I wasn’t so warmly invited to this second group. Perhaps my pointed posts helped kill the first certification forum.

Never one to be subdued by rejection, my response is to move forward on my own and establish a basis for a certification program for test-driven development (TDD). My intent is to produce a skill-based TDD curriculum, one about as rigorous as a typical university course. Is there a test? Is there a certificate? That’s probably not something I can build as a sole proprietor, but I’m open and ready to work on creating a standards body for TDD certification.

What are my motivations? They of course include profit, but they also include my strong interest in improving the level of professionalism in software development. While some decry profit motivations based on their belief system, certification schemes are primarily about profit, and I believe competition usually drives improvement. Let’s get competing!

Comments:

Actually my nightmares will become a reality when certification in the Agile world comes. It’s close when you end up working for a moron with agile certificate, who knows shit about Agile software development – sorry, I couldn’t resist. It seams, it’s a time to create 4000 pages long agile process guide.

===
Right now, agile is “whatever Joe schmuck wants it to be,” for better or worse. To paraphrase the agile alliance folks, agile certification is coming, and their version of it is really going to suck.

I won’t bother if I think my version of certification is going to suck. If I certify someone, it will mean that I’m pretty confident that I would hire them, at least with respect to their TDD skills. If I can’t find a way to make that

===
I’m relatively new to the Agile world, but already I’m sick and tired of hearing to people who’ve read a book (any book) on Agile methods be a self-described expert.

I’m all for seeing a certification for Agile development. I’m curious to see if it would be biased towards any of the practices, or to general practices.

===
I think agile is interesting in that it doesn’t say all that much. That’s why it’s possible for the Scrum machine to offer a two-day class on Scrum. After talking about iterations, meetings, pigs, and chickens, what’s left? The challenge in agile is not in its mechanics but rather in learning how to solve problems (which are usually people problems) and improve upon such solutions regularly.

So I’ve decided for myself that at least TDD certification is valuable, because it is a demonstrable skill, whereas something like “general problem solving in an iterative context” is not so quantifiable.

===
To the anonymous who is new to the Agile world. Certification won’t make these people to shut up, actually I think they be first who get certified, so they could prove you they are actually an expert. Any discussion will end up with a statement “Don’t tell me I’m certified, so I do know how it should be done”.
Let me tell you an anecdote.
“The juggler was looking for a job and went for an interview to one of th circus. The CEO took a look at his resume and said:
– I see you have a juggler certificate. Can you juggle with 3 balls ?
– Yes, I can – replayed juggler.
– Can you juggle with 5 and more ? – asked CEO.
– Yes, I can – he replayed with a little smile.
– Great, that way I hire you – said CEO.
– But wouldn’t you like to see me juggling ? – asked the juggler.

Yes, I’m amazed at how we hire today. I’ve even had a number of people suggest that making people pair during interviews “just isn’t fair.” What, actually expect that they can demonstrate they know how to do what they’re about to be paid lots of money to do?

Still, we perceive some value in diplomas and university courses. I think there is value in the information that comes from close-knit interaction over several months, enough to say that “this person has potential.” Is a 15-week mentor/protege relationship be a sufficient basis for recommendation?

-j-

Certifiable!

Today, I received the following post on a few of my Yahoo group lists (refactoring, scrumdevelopment, etc.):

Greetings, everyone.

I apologize for the spam, but I wanted to share with you a new initiative on the web to help large organizations make the transition to agile. I have been working with several customers over the past few years, and their biggest complaint to me has been about scaling up their agile transition when it’s so expensive to find genuine agile experts. So many people have jumped on the bandwagon last year!

So we have joined forces with some large organizations, many of which you’d recognize, to take that first important step towards solving this problem. In the spirit of being agile, our first presence is small, but we’re growing it incrementaly, so I hope you will show us your support.

Please visit http://www.agilecertificationnow.com to become certified and spread the word. It’s easy!

John Smith
http://www.agilecertificationnow.com

I highly recommend clicking through the certification links. You’ll also find a good letter from Tom DeMarco (which looks to be written in 1998) that talks about the value of certification.

Atom