In early December I joined a group of testers in Cleveland, OH for a two and a half day workshop on Skills for Testers. This Workshop, called WHOSE, was an AST event and was focused on experiential reports of skills the participants actually used in their work.
Several things came out of this. First was a list of skills themselves. More importantly, in the minds of many of the participants, was explaining what we meant by each skill – even where there were competing definitions. We also explained how and in what contexts we learned and first used the skills. Finally, we looked at information for people to use to learn or improve each skill themselves.
It was a daunting task.
For our purpose, we defined a Skill as:
The ability to perform some action for a purpose.
We agreed that to be included, a skill must be
- Demonstrable – You can show it to someone else
- Isolatable – To a single repeatable element
- Observable – After demonstration and explanation I know it when I see it
- Improvable – Can be done better or worse, and you can improve with practice
- Comparable – It is possible to observe people modeling skills and determine a relative qualitative ranking that most people agree on – at least between a novice, intermediate, and an expert.
But what makes a Skill a Skill? Are the things we discussed and debated and wrestled with listed in the “Required Skills” in job postings? If not, why did we waste time talking about them? Why did we not focus on tools, commercial or otherwise? Why did we not focus on things that our various employers and clients are trying to hire people to do? How could we have missed how important those skills are?
For the same reason that Colleges and Universities that teach tools and “in demand” “hot skills” are failing in their primary mission: Educating People.
What IS Education?
The Oxford American Dictionary gives this:
1. the process of receiving or giving systematic instruction, especially at a school or university;
a body of knowledge acquired while being educated;
Miriam-Websters gives us:
b : the knowledge and development resulting from an educational process
One of my history professors, alas, long departed from this world, explained very patiently to a student majoring in business administration who was whining that “the stuff” he was learning in her class (a 100-level survey course that was popular among students majoring in business and education) would do him “no good in the real world” that the purpose of taking courses outside of a student’s primary area of study was for them to learn how to think, how to identify and define patterns of behavior and how to draw conclusions from said thinking and pattern identification.
She went on to, very patiently, explain “Doctor Barkham and I have discussed this several times. He asks questions that could lead to very interesting research for someone interested in the development of management theory and practices from the early Georgian period to today.” I should mention that “Doctor Barkham” was not his real name. He was, however, the chairman of the department overseeing Business Administration studies.
When he protested that what was being taught in the class was pointless, she gently smiled and observed that perhaps he should have enrolled in a trade school. I’m not sure why he got mad, she rather had a point.
If one wants to “learn a trade” then by all means, go to a trade school where you can get the information on how to do a given job and finish very quickly, compared to a University or a liberal-arts College.
OK, folks outside the US may not know that in the US “university” and “college” tend to get used interchangeably. Here, a “college” is not a trade school, they tend to be a smaller liberal-arts “mini-university.” Where most universities are made up of many “Schools” of “Colleges” a stand alone “college” is typically a single school. Community and junior colleges offer two year degrees, Associate Degrees, that typically can be transferred to larger four year colleges or universities. Some also offer certifications in specific “in demand” areas such as culinary arts or criminal justice studies.
Trade Schools may call themselves Colleges or Universities, they tend to be private, for-profit establishments. They may offer anything from auto mechanics to heavy equipment operation to hair styling to computer networking or programming. They tend to be non-accredited. The drawback is, they do not offer a “Bachelors Degree” – because they are not allowed to in most states.
The Skills we focused on at WHOSE were skills that one needs in software in general, and software testing in particular. They were not tool specific. They were the core needs to be a good craftsman and professional.
The skills we looked at, debated and wrestled with, were, in our view, the skills that were the foundation to what a tester needs. We had skills that were very elementary. We also had skills that would be needed by a senior tester who was helping more junior testers. We had skills that would help a test manager or a tester would need to work with a test manager or higher.
These were building blocks.
We started with a massive list – over 200 – items then searched through them, identified those which were essentially duplicates, grouped them by nature and application of the skills. Things like,
Communication, Coaching & Mentoring, Logic and Rational Thought, Modeling, Planning, Risk Management, Speaking & Writing, Test Design, Test Approach and more. These were the subject of debate and discussion and wrestling.
One challenge was identifying what certain people meant by items they listed as skills. We found that sometimes people applied different labels to what others would define as the same skill. Identifying these instances was difficult. They ranged from the very academic to the very rudimentary.
Describing the context we learned a skill as well as apply and teach the skill was time consuming. The task seemed monumental. What we took on, was monumental. It also is an on-going process.
The work involved is not done. Editing is still underway as well as organizing and refining the classifications. One task which needs to be addressed, in my mind, is defining at what point in ones career are each of these skills required.
Should a novice, fledgling tester look at the entirety of the list, they would likely be disheartened. That task remains.
Given that the people involved are volunteering their time and effort, I am not, nor I think are the people who organized the workshop, disheartened. Every day, participants are looking at, reading and making refinements to areas they volunteered to work on. Reviews are on going as people finish writing and editing.
The interesting thing are the differences in context where participants learned and work with the skills. They give credence to the sometimes contentious notion (among some circles) of what “context driven” means and is for testers.
For this, I see great value in this work. It is not an exhaustive list. It is not the framework for a commercial training or certification program.
It is a collection of fundamental skills to master. Some will have greater or lesser value to you, based on your context. One thing I have learned though, is your context changes. Learning how to apply or reapply skills is something we must master.