e-Skills: A Craft?
I posted a piece last month entitled ‘e-Skills: Talent or Competency’. One comment I received stated that ‘IT is not an art it is a craft’ in response to my point that …’today IT is still partially an art’.
It got me thinking, possibly the commenter had a point. So I had a look at the various definitions of craft:
‘Skill in an occupation or trade’
- ‘The skilled practice of a practical occupation’
Certainly these definitions could be applied to the role of the IT practitioner. But I still didn’t feel comfortable, so I had a look at the definition of skill:
‘An ability that has been acquired by training’
‘Ability to produce solutions in some problem domain’
Again true. So where is my problem?
I think the issue for me is that IT should be a craft, but often isn’t. My first job was as a real-time software engineer. We essentially had a one-year apprenticeship that involved considerable formal training. The stakes were high as we had to be able to predictably produce software that worked on delivery and worked in real-time.
All team members had to work to this level so our apprenticeship took that into account. My first employer produced genuine engineers that were competent in the craft of software development. Some were better than others, but there was a minimum standard.
My next job was with a software house. The people I worked with were generally brighter than my previous colleagues (and me) and, by the way, had generally good customer facing skills. They were techno-fearless and could apply themselves to any technology tools put in their path.
However they did not have any training in software engineering fundamentals and so produced software that was overly complex and untestable. However the fact that they produced something that ‘worked’ using Oracle or C++ with little or no training attested to their intelligence.
What was happening here wasn’t engineering and wasn’t even craft. It was an exercise in continuous wheel reinvention as individuals developed the skill of software engineering through sheer trial and error. In effect their ‘apprenticeship’ ran parallel with their careers and the customer was paying.
This is what I see happening across the industry. A lack of base lining in respect of software engineering (from analysis through to maintenance) means that there is no common standard. So it is likely that the majority of the practitioners are at varying degrees of learning the trade rather than being ‘competent’ at it. Of course software engineering is only one community in the IT industry. But I am pretty sure the same can be said of IT management, data centre staff and the para-IT parties (HR, procurement, sales and marketing).
We still have some way to go. Hardware and real-time software engineers are there already. However these are minorities in the world of IT.
I think that is why I don’t feel comfortable calling IT a craft.
Click here to see the posting that triggered this post – ‘e-Skills: Talent or Competency’