I’ve been asked, several times, what skills a person should work on if they wanted to enter the IT field. The specific question changes depending upon if the question was targeted at DBA, developer, systems administrator, or testing skills. When I begin to answer my first thoughts always go to the obvious answers. I may list some software or programming languages to get familiar with, or I might present references to resources that can teach data model or object-oriented concepts; but what I’ve found is that sometimes the answer that they need is a much more fundamental skill.
To this day I find it amazing how refined problem solving skills can get over years of working in technology related roles, especially support roles. The simple process of being able to break down a problem or a task into smaller pieces and then systematically tackle each piece, one at a time, is something that everyone will claim they are good at but not all are.
I had a conversation last night where I came across a person who spent 3 weeks not starting a task because he couldn’t figure out where to start. Not knowing where to start is usually a product of the task being too large for you to handle, as is, and it was in need of being broken down. This gentleman was not pleased when I refused to give him his expected software and programming language list and instead told him that he needed to work on problem breakdown and solving skills or he will never get anywhere in technology.
In my humble opinion; advanced problem breakdown and solving skills are a minimum requirement for any technology career.