Software development managers seek prospective programmers based on the skills they bring to the team. So what does a fledgling code writer need to do in order to meet the standards? Marinus van Sandwyk, Chairman of LUSO Computer Institute, tells you how to get your foot in the door.
Software development managers need to complete projects on time, within budget and to specification, which is why they are interested in programmers who bring skills to the table that will help them achieve that.
Good programmers are not necessarily those who have been pushed through a sausage factory training institution in six months, but those that are productive from day one of their working careers. That is why the skills a software development manager looks for are not necessarily what the personnel department will consider when reviewing a list of qualifications.
Reality shows us that the typical programmer profile differs markedly from any other employee profile. It is not unique to have a person who is a first-year university dropout becoming a significantly better programmer than another candidate with a doctorate in computer sciences. Academic qualifications are not necessarily a fair measure of a programmer`s skills.
In order to understand what skills a programmer must acquire, it is necessary to understand what programming is. It is the ability to create a masterpiece of software code that describes a series of actions you want a computer to perform. The more fluent and natural it is for the user, the better the end-result, which is the program. In that sense, programming is an art.
Conventional wisdom would have the world believe that in order to achieve that, a programming student must have at least A-grade matric maths and science, which is simply not true. That is not to say it is not beneficial, which it surely is, but that it is entirely feasible for a person with a standard eight qualification that excludes maths and science, to become an exceptional programmer.
That is because a real programmer produces code that is beautiful in the way it executes processes and in the way it has the user interact with the system. It can either respond and act seamlessly with the user, or it can feel as if the user is fighting the system to get what they want. And that marks the difference between a true programmer and someone who has been taught to lump code together.
Coming back to the qualification aspect of preparing to become an exceptional programmer, a student entering the market without matric maths and science will never be complete until they have done it. But not having it does not automatically preclude them from becoming a good programmer.
When studying programming, it is also very important for students to ensure the course they are completing is accepted by the local software training governing body, the South African Qualifications Authority (SAQA), and critical that it is recognised abroad, as they are spending valuable time and money in preparing themselves for their career.
Also, in preparation for their career, how does a student know which programming language to begin with? I cannot stress enough that students should go for a totally independent language that will not tie them to a specific computer environment, in the way that Microsoft`s Visual Basic does. Languages such as COBOL - up to 50% of back-end applications running in the world today still run on COBOL - C and C++, Java and to a lesser extent C#, are the languages students should be learning. The key is not to lock yourself into a particular platform, and it is very important that the training programme students enter exposes them to programming in a wider sense than simply a single, chosen language.
That will become paramount when selecting an organisation, as will checking that it is registered with SAQA and the ISETT SETA. It is important that students check the number of graduates an institution produces each year, to ascertain whether the organisation produces quantity or quality, and students should find out what percentage of graduate programmers actually find jobs through the institution.
Once they have discovered all of that, the next item on the checklist is the qualifications of lecturers. Often they are programmers and unqualified teachers. Teaching is a separate discipline because it requires special skills to impart knowledge to a student.
By that stage students will be able to ascertain whether or not the institution they have in mind will properly prepare them for a world where increasingly our interaction at large occurs through some sort of technology, be it a satellite television system, programming the microwave or even starting a car.
Editorial contacts

