Computer programmers write, modify and test code to produce software applications using a wide variety of coding languages, such as C++ and Java. Working with various other coders and developers, they propose and design programs that perform specific tasks, like tracking inventory, storing data, writing documents or controlling equipment.
Duties and responsibilities
- Write, maintain and update computer programs, software packages and mobile applications
- Carry out tests and conduct trial runs to ensure the desired results
- Modify software programs to improve user experience and performance
- Resolve errors by completing necessary revisions, and examine the program again
- Determine if workstations, networks or centralised systems are responding to software instructions
- Research consumer needs and then design software solutions to meet those needs
- Brainstorm software ideas using workflow charts, diagrams, symbolic logic and computer capabilities
- Perform or recommend expansions of current programs to enhance operating efficiency
- Work with management and senior technical personnel to determine goals and list problems
- Design or collaborate with staff to develop workflow charts and diagrams
- Compose or contribute to instruction manuals for customers
- Direct, supervise and train staff on program coding and computer interface
- Assign and review tasks and projects for programming employees
- Coordinate project initiatives with manufacturers to create new programs
Skills and knowledge
AVERAGE WORKING HOURS
Nights, weekends, holidays occasionally
A computer programmer will usually work between 40 and 50 hours per week, depending on projects, deadlines and unforeseen technical issues. That said, you will often need to work weekends, evenings and holidays to finish projects or troubleshoot an emergency. Telecommuting and remote working is possible.
Annual salary estimates are based on percentile wage data collected through the Occupational Employment Statistics (OES) survey of US workers.
Bachelor’s degree in computer science
Businesses will typically hire computer programmers who possess undergraduate degrees, particularly bachelor’s diplomas in computer science, information systems, mathematics and other related fields. It should be noted, however, that because of this ultra-competitive field and the globalised economy, many employers are increasingly requiring graduate and postgraduate education in these subjects, in addition to certificates that offer coursework in database management, structured query language (SQL) and programming logic.
Computer programmers typically begin their careers assisting software engineers with various duties, like identifying user needs or designing programs. With experience, they can become software engineers.
By keeping up with industry trends and building on your knowledge, you could eventually become a project manager, systems manager, information officer or an independent consultant.