Computer Software Engineer
Computer software engineers apply the principles and techniques of computer programming, engineering, and mathematical analysis to the design, development, testing and evaluation of the software and systems that enable computers to perform their many applications. This is basically an Electronics Engineering qualification with more software subjects and less engineering subjects
Computer software engineers design and develop many types of software including software for operating systems, network distribution systems and compilers, and which convert programs for faster processing. Software engineers program computers using various programs, for instance, Assembler, C++ or Java. The major part of their work is, however, developing algorithms and analysng and solving programming problems.
Software engineers are also required to solve technical problems that arise and should therefore have a good knowledge of hardware components, for instance, microprocessors, embedded controllers, personal computers, routers and transmitters. They should also have the skills to develop the necessary software in order to implement a complete system operating on a variety of platforms, such as Windows, Windows NT and UNIX. Because computer systems and technology are rapidly evolving, the tasks performed by a computer software engineer have become more complex and specialized. Some examples of areas of specialization include:
Computer applications: the design, implementation and modification of general computer applications software or specialized utility programs. Software engineers develop both packaged systems and systems software, or create customised applications.
Computer systems: the construction and maintenance of a company's computer systems, and planning for future growth. This may include the setting up of Intranets, or telecommunications networks that link computers within organizations.
Project management: the management and delivery of a project in consultation with other members of a team. A core team may comprise engineering, marketing, manufacturing and design people who work together until the product is released.
Software engineers normally work in an office environment. Their job requires a fair amount of interaction with customers and co-workers and may require spending time away from the office in order to consult with clients at their premises. However, as technology advances, software engineers are increasingly able to communicate via e-mail, and by using the Internet, to connect to a customer's computer remotely in order to identify and correct developing problems.
Satisfying Aspects
- being the ultimate specialist in a very large field
- solving problems
- good remuneration and fringe benefits
- being at the cutting edge of technology
- opportunity to be creative
Demanding aspects
- hard work
- sometimes many hours are needed to solve problems
- difficulty in staying abreast in the field
- the long period of preparation and study required to register as a professional computer software engineer
Requirements
- have above average intelligence
- have an inquiring and analytical mind
- be able to manage and organise projects
- function well with other people
- work well under pressure
- have perseverance and discipline
- be a precise and an accurate worker
- have an aptitude for Mathematics and Computer Science.
School Subjects
National Senior Certificate meeting degree requirements for a degree course
National Senior Certificate meeting diploma requirements for a diploma course
Each institution will have its own minimum entry requirements.
Compulsory Subjects: Mathematics, Physical Sciences
Recommended Subjects: Information Technology (Those studying towards a diploma at a private college do not require Science but non ECSA accredited qualifications will not be acceptable for registration as a professional.)
Note:the Engineering Faculties of some universities offer a support programme to help students to become self-sufficient and capable of completing the very demanding engineering course. The programme is aimed at students from communities which lack proper education facilities.
Training
Degree: BEng Computer Engineering - UP, NWU, or Electronic Engineering - most universities, eg NWU, UP, UJ, UKZN.
A person who has obtained a recognized BSc (Eng) or BEng degree is eligible for registration as Engineer in Training. After gaining at least 3 years of appropriate practical experience, a computer engineer may register as a Professional Engineer under the auspices of the Engineering Council of South Africa.
Employer
- Companies that supply computers
- Government departments
- Provincial administrations
- Computer bureaus
- Spoornet
- Telkom
- Denel
- Universities and universities of technology
- Any company or business using computer systems and networks.
Contact
Computer Society of SA
P O Box 1714
Halfway House, 1685
ICT House
546 16th Road
Constantia Park [Unit No.3]
Midrand
Tel: (011) 315-1319 Fax: (011) 315-2276
www.cssa.org.za
Engineering Council of South Africa (ECSA)
Private Bag X 691
Bruma, 2026
Tel: (011) 607-9500 Fax: (011) 622-9295
E-mail: engineer@ecsa.co.za
www.ecsa.org.za
ISETT (Information Systems Electronics & Telecommunication Technologies)
P O Box 5585 Halfway House 1685
Tel: (011) 805 5115
Fax: (011) 805 6833
www.isett.org.za