Post a job offer

What does a
Computer Programmer do?

Click here to view all Computer Programmer jobs on
Other common names for this position: Application Programmer, Business Application Programmer, Computer Application Programmer, Detail Programmer, Electronic Data Processing Application Programmer, Game Developer, Game Programmer, Graphical User Interface Programmer, Interactive Media Programmer, Java Programmer, Mainframe System Programmer, Multimedia Programmer, System Programmer, Visual Basic Programmer, Web Programmer


Computer Programmers create applications and programs that people can work on. They take the foundations and possibilities of an existing software and use it to create an interface on which all users can work. The use of these programs can be for business or leisure. Most Computer Programmers specialize on a specific market niche, meaning they will work on creating programs that serve a particular use, such as Accounting software, mobile applications, games, or graphic design software.

The programs and applications Computer Programmers create can be designed to fit a single system such as Windows, Mac iOS, or mobile devices. However, many companies create versions of each particular program to fit each system depending on market demand.

Computer Programmers work for agencies and companies that specialize in designing and creating new programs and applications. The work divisions for Computer Programmers are not standardized, nevertheless, most companies divide their teams in three fractions: analysts, designers, and testers. Moreover, the programming language they specialize in can become part of their title (e.g. Java Programmer).

Primary Responsibilities

Here’s a non-exhaustive list of common tasks Computer Programmers are required to complete.

  • Understanding users’ needs:
  • Reading market research reports and users’ suggestions.
  • Creating new software programs or applications:
  • Researching what users need;
  • designing the program or application; and
  • writing the program or application in programming language (e.g. HTML, XML, and PHP).
  • Defining the technical specifications of new programs or applications:
  • Writing program or application documentation.
  • Testing new programs or applications:
  • Running the program to look for bugs and errors;
  • fixing bugs and errors; and
  • repeating the process until no bugs or errors are found.
  • Testing new programs or applications:
  • Running the program to look for bugs and errors;
  • fixing bugs and errors; and
  • repeating the process until no bugs or errors are found.
  • Testing code for new programs or applications:
  • Writing code for new programs or applications;
  • running code to look for bugs or errors;
  • rewriting or refining code where necessary; and
  • repeating the process until no bugs or errors are found.
  • Upgrading existing programs and applications:
  • Identifying parts of the program that could use improvement; and
  • developing the modifications and improvements.
  • Monitoring the performance of existing programs or applications.
  • Integrating existing programs to work on different platforms and systems.
  • Working in tandem with other staff members, Project Managers, Graphic Artists, UX Designers.
  • Researching and learning about new technologies and trends as they become available.

Daily Tasks

  • Designing new programs or applications.
  • Establishing parameters for new programs or applications.
  • Writing code for new programs or applications.
  • Testing and troubleshooting new programs or applications.
  • Testing and proofreading code.
  • Reading clients’ feedback or users’ suggestions for improvements and implementing them.
  • Meeting with clients and Project Managers.

The average Computer Programmer salary is $53,486 per year or $27 per hour. This is around 1.6 times more than the Median wage of the country. Entry level positions start at $37,000 while most experienced workers make up to $75,000. These results are based on 240 salaries extracted from job descriptions.

Gross Salary62,376.79 $
CPP- 2,479.95 $
EI- 930.60 $
Federal Tax- 8,211.41 $
Provincial Tax- 3,959.20 $
Total Tax- 15,581.16 $
Net Pay*46,795.63 $
In Ontario, Canada, if you make 62,376.79 $ a year, you will be taxed 15,581.16 $. That means that your take home pay will be 46,795.63 $ per year, or 3,899.64 $ per month. Your average tax rate is 24.98% and your marginal tax rate is 31.15%.
* Deductions are calculated based on the tables of Ontario, Canada income tax.
Required Skills and Qualifications
  • Outstanding knowledge of computers and informatics systems.
  • Good communication skills:
  • Communicating with colleagues; and
  • explaining updates and issues to clients and Project Managers in a polite and clear manner.
    • Outstanding organizational and time management skills:
    • Being able to work with complex systems and equipment;
    • completing tasks in a timely manner;
    • meeting deadlines and goals;
    • being detail-oriented; and
    • being able to work on several tasks at the same time.
    • Excellent problem-solving skills:
    • Having a logical and analytical approach to problem-solving;
    • being able to identify bugs and errors in coding; and
    • having the ability to think outside the box and solve problems in a creative manner.
    • Good customer service skills:
    • Being able to identify and anticipate the needs of possible clients;
    • thinking of ways to fulfill their clients’ needs; and
    • selling projects and ideas to possible clients.
    • High drive for self-improvement:
    • Looking to expand existing knowledge of technology;
    • learning new skills and tools; and
    • being aware of the advancements made by others.
    • Ability to work as part of a team of professionals:
    • Helping other staff members; and
    • working as a unit.

By definition, the work of a Computer Programmer is packed with complex and technical details that require a lot of attention. A Computer Programmer is expected to have extensive knowledge in at least one programming language, as well as the latest technologies available. Most Computer Programmer job offers require 1 to 2 years of experience in the area or some education background in the field.[1]

Most entry-level jobs as a Computer Programmer require all applicants to have a degree or some kind of equivalent higher education background. The most common degrees companies require from their applicants are Computer Science, Software Engineering, Electronics, Information Technology, and Mathematics.

Unlike many other positions in the IT field, it is uncommon to find Computer Programmers working as freelancers. The most usual form of work for them is in a company or agency specialized in creating, designing, and selling new software. These companies or agencies generally have a particular niche of the program or application market. Some companies develop business-oriented programs, such as Accounting or database management, whereas others devote themselves to creating leisure programs such as games. Depending on the size of the company, they could have entire departments taking care of each step involved in creating new programs or applications. However, in smaller companies, it is common to find a single team or person taking on the whole process.

Most Computer Programmers work on a standard 9-to-5 schedule, Monday through Friday. However, extra work and hours are not unheard of for this position when deadlines are approaching. This is especially true in the testing stage of creating a new program or application, as it is the stage that can take the most time and requires the most attention. Sometimes extra hours may involve working weekends or on national holidays.

The nature of the job includes sitting on a desk for extended periods of time. It is advisable to take regular breaks during work hours to avoid possible health hazards.

Job Offers
There are currently 732 available job offers for the Computer Programmer position on Below is a list of available jobs, based on Canada's most populated metropolitan areas.