Who is a computer programmer and what do they do? His/her job task is to create computer programs. The systems programmer generally works on the more fundamental programs that enable the computer to function, while the applications programmer writes those that provide users with particular facilities such as word processing or spreadsheets. Systems programmers are also sometimes known as “systems developers”.
What are the activities of the computer programmer? Analyses of a performance specification (against which the programs should be prepared), discussions with the users about the nature of the final output, troubleshooting, changes in the job specification, if necessary, descriptions of data structures and their conversion into algorithms, i.e. processing by single steps, creation of programs in relevant languages, debugging and verification of the proper functioning of a program by real data supplied by the clients, application of debugging/testing programs for the removal of errors, consultations with and training of clients, modification of such existing programs as may be required by the users, application of testing and other programs or creation of own programs for identification of errors in databases or other database operations, program maintenance and the related documentation containing input/output changes or changes in hardware configuration, maintenance of data dictionaries and administration of systems for securing the validity and safety of data, presentations of newly created programs to customers.
Where is it done and under what conditions? In the environment of an office where there are unlikely to be any particularly difficult working conditions.
What tools/equipment do they use? Various computing systems, software, hardware and related equipment.
What do you need to succeed? You need to have completed a college training programme or, better, to be the holder of a university degree related to computer science or information technology, possess a combination of abilities, be inventive and creative, accurate, patient and able to learn.