Saturday, November 17, 2012

Agile Programmer's Skill Set (Ultimate Agilist Tokyo)

Ultimate Agilist Tokyo

@papanda and @daipresents who are famous agile guys launched exciting conference, named Ultimate Agilist Tokyo in Japan. Nov.17.2012

Mr. Kiro Harada - No-Bull Know-How (Ultimate Agilist Tokyo  2012)

In this conference, I wanted to think about Agile Programmer's skill set.

Recently, there is a bunch of japanese programmers who says I'm a professional agile programmer. but a lot of people cannot handle TDD or other agile technical skills and their codes are lame. Only they can do is ... Daily Scrum Meeting. Ops.

One of the reason is no agile programmer's definition isn't there.  so I decide to think about it.

In this workshop, I want to clarify agile programmer's skill set, and introduce ICAgile in Japan.

This time, I tried 2 things.  I analyzed Agile Manifesto , ICAgile, XP, Scrum. and create useful agile programmer's skill map. and I made the workshop attendee to think about what will be needed for agile programmer (especially technical skill).

1. Agile Programmer's Skill Map of mine.

This is session slide.
How to be an agile programmer (Slide Share)

This contains some features.

   5 principles related by programmers  ( I pickup from Agile Manifesto 12 principles)
   ICAgile Learning Area and Books
   Workshop results

 and I created Agile Programmer's Skill Map.

Agile Programmer's Skill Map (Big Size PNG)

 this map is like a BSC (Balance Score Card). It has tree structure. we can realize the logical structure of Agile values,  Agile Manifesto principles and practices.

   right nodes are realization of a left node. and left node is objectives of a right node.

2. Workshop Artifacts

   In this workshop attendee group defined agile programmer's skill sets, too.
I'm very interesting about that. because sometimes it was different from mine or ICAgile's skill sets.
And I found some symptom of japanese culture's problem. And I made a report from it. See 3. Lesson Learned.

3.  Lesson Learned

 Result of Agile Programmer's Skill Set session (PDF)

See this session. Attendees thought 1.1. TDD, 5.1. Continuous Integration is needed for agile and 1.2. Object Oriented Programming, Design skill and 3.1. Communication Skill are need too. They don't care about 2. Testing. It will be a hot area in Japan.

Remarkable point is, 4.1. ability to understand (business) requirement.  and it means to understand business process, business rules, too. In Japan, a lot of people spend a lot of money for domain expert. Almost people believe that domain knowledge is more important than technical skills.  (Of course, I don't like that notion.) and 3.12. Identify customer's power structure is AMAZING.

 Yes. Japanese has a very hierarchical culture, and companies, too. A lot of practitioner has a bunch of  troubles with their stakeholders.  I want to concentrate to be a good craftsman, anyway. :-)

No comments:

Post a Comment