Computer Programmer
Computer programmers create, modify, and test the forms, scripts, and code that tell computers what to do.
There was an error. Please try again.
This page is already listed in your guide. Please choose a different page to add.
Application Programmer, Computer Specialist, Information Technology Specialist, Programmer Analyst, Software Developer
In Canada, the federal government groups and organizes occupations based on a National Occupational Classification (NOC) system. This alis occupation may not reflect the entire NOC group it is part of. Data for the NOC group can apply across multiple occupations.
The NOC system is updated every 5 years to reflect changes in the labour market. Government forms and labour market data may group and refer to an occupation differently, depending on the system used.
Here is how this occupation has been classified over time.
2006 NOC
2006 NOC-S
2011 NOC
2016 NOC
Computer programmers may combine and adapt existing programs or program components. They may also create computer code. They use application design and development tools. They know various computer and database languages for different types of software (such as business, commercial, engineering, and scientific software). Programming is also used in many web apps.
In general, computer programmers:
Computer programmers work in offices or from home. They may work shifts. They may need to work overtime to meet deadlines or debug programs.
In Alberta, this occupation is part of 1 or more 2006 National Occupational Classification (NOC) groups. If there are multiple related NOC groups, select a NOC heading to learn about each one.
Interest in analyzing information to assist in the development of logical and physical specifications and to research and evaluate a variety of software products
Interest in precision working to test, correct and refine software applications, to ensure systems meet original specifications, and to maintain existing computer programs by making modifications as required; and in planning and scheduling work within set targets
Interest in speaking to collect user requirements and to identify and communicate technical problems, processes and solutions
To identify or change your interest codes, complete the Interests Exercise in CAREERinsite.
The interest code helps you figure out if you’d like to work in a particular occupation.
It’s based on the Canadian Work Preference Inventory (CWPI), which measures 5 occupational interests: Directive, Innovative, Methodical, Objective, and Social.
Each set of 3 interest codes for this NOC group is listed in order of importance.
A code in capital letters means it’s a strong fit for the occupation.
A code in all lowercase letters means the fit is weaker.
To fill in or change the values for your abilities, complete the Abilities Exercise in CAREERinsite.
A Quick Guide
You are born with abilities that help you process certain types of information and turn it into action. These abilities influence which skills you can learn more easily.
The abilities or aptitudes shown for this NOC group come from the General Aptitude Test Battery (GATB). The GATB measures 9 aptitudes. It groups them into 3 categories: mental, visual, and physical.
The abilities scores range from 1 to 5, with 5 being stronger.
Programmers need:
They should enjoy:
In Alberta, this occupation is part of 1 or more 2016 National Occupational Classification (NOC) groups. If there are multiple related NOC groups, select a NOC heading to learn about each one.
This chart shows which job skills are currently in highest demand for this occupational group. It was created using this occupation's 304 most recent Alberta job postings, collected between Mar 18, 2024 and Dec 21, 2024.
Review these skills to learn:
Tasks: Write, modify, integrate and test software code | 285 |
---|---|
Tasks: Identify and communicate technical problems, processes and solutions | 272 |
Tasks: Maintain existing computer programs by making modifications as required | 266 |
Tasks: Prepare reports, manuals and other documentation on the status, operation and maintenance of software | 251 |
Tasks: Assist in the development of logical and physical specifications | 232 |
Tasks: Assist in the collection and documentation of user's requirements | 227 |
Tasks: Research and evaluate a variety of software products | 207 |
Tasks: Write, modify, integrate and test software code for e-commerce and other Internet applications | 181 |
Experience: 1 year to less than 2 years | 148 |
Construction Specialization: Organized | 125 |
Most computer programmers complete a program in computing science or a related discipline with a large programming component. Universities, colleges, technical institutes, and private vocational schools offer many programs. These include 3- and 4-year degree programs, 2-year diploma programs, and 1-year certificate programs.
Before choosing a program, prospective programmers should:
This is a rapidly changing field. Programmers must continuously upgrade their knowledge.
The following schools offer programs or courses that are related to this occupation but are not required to enter the field.
To expand or narrow your program options, visit Post-Secondary Programs and start your search with:
Completing a program does not guarantee entrance into an occupation. Before enrolling in an education program, prospective students should look into various sources for education options and employment possibilities. For example, contact associations and employers in this field.
Certain professional titles or duties within this occupation are protected by provincial legislation. Requirements vary if you use these titles or perform these duties.
The related legislation is shown below. If there are multiple related legislations, select a certification heading to learn about each one.
Information systems professionals investigate, analyze, design, develop, or manage information systems based on computer and related technologies. They do so objectively applying specialized knowledge and professional judgement.
Information Systems Professional is a protected title under Alberta’s Professional and Occupational Associations Registration Act [pdf]. This means that to call yourself an Information Systems Professional or use the I.S.P. designation, you must be a registered member of the Canadian Information Processing Society of Alberta (CIPS Alberta).
You do not have to be registered if you do not call yourself an Information Systems Professional.
For information on what you need and other details, visit the certification profile Information Systems Professional.
Source: 2021-2025 Alberta Regional Occupational Demand Outlook
Computer programmers work for large software companies and consulting firms. Many of these are based outside of Alberta. Most programmers in Alberta work in the IT departments of large companies. They may also work at firms that develop specialized software. Employers include:
Some programmers do research and scientific work. They work for universities, research foundations, or companies that design and make computers. Some work as consultants. They develop programs for companies with specific software needs. A few teach at colleges and technology institutes.
Junior programmers need 2 or 3 years of IT experience and further training to become senior programmers. They can then program applications or systems. With time on the job, they may become lead applications programmers or systems analysts. With more training and experience, they may move into related fields. These include database administration, systems security, and network design.
This section shows the industries where the majority of people in this occupation work. The data is based on the 2016 Census.
In Alberta, this occupation is part of 1 or more 2016 National Occupational Classification (NOC) groups.
Computer programmers and interactive media developers
2016 NOC: 2174
75.9% of people in this occupational group work in:
NOC groups often include several related occupations. Although there is labour market data for the larger NOC group, this occupation makes up only a part of that group. It means data for this occupation may be different than the data shown. For examples, see Note.
This section shows the employment outlook for this occupation in Alberta over a 5-year period.
Employment outlook is influenced by a wide variety of factors including:
In Alberta, this occupation is part of 1 or more 2016 National Occupational Classification (NOC) groups.
Source: 2021-2025 Alberta Regional Occupational Demand Outlook
Annual growth is from 2021 to 2025. New positions created each year are in addition to job openings created by employment turnover.
NOC groups often include several related occupations. Although there is labour market data for the larger NOC group, this occupation makes up only a part of that group. It means data for this occupation may be different than the data shown. For examples, see Note.
Employment turnover is expected to increase as members of the baby boom generation retire over the next few years.
Earnings for computer programmers depend on their education and experience. They also depend on the size, location, and type of employer.
In Alberta, this occupation is part of 1 or more 2016 National Occupational Classification (NOC) groups. If there are multiple related NOC groups, select a NOC heading to learn about each one.
Unless otherwise noted, the data shown here is for all industries and all regions in Alberta.
All wage estimates are hourly except where otherwise indicated. Wages and salaries do not include overtime hours, tips, benefits, profit shares, bonuses (unrelated to production), and other forms of compensation.
To see the full survey data for this NOC group, visit the wage profile.
Other wage sources
To make an informed wage and salary decision, research other wage sources [pdf] to supplement this data.
High Reliability, represents a CV of less than or equal to 6.00% and 30 survey observations and/or represents 50% or more of all estimated employment for the occupation.
Wages* | Low (5th percentile) | High (95th percentile) | Average | Median |
---|---|---|---|---|
Starting | $19.23 | $50.48 | $31.69 | $33.33 |
Overall | $28.85 | $56.25 | $41.29 | $40.38 |
Top | $36.06 | $83.94 | $57.30 | $58.85 |
Swipe left and right to view all data. Scroll left and right to view all data.
* All wage estimates are hourly except where otherwise indicated. Wages and salaries do not include overtime hours, tips, benefits, profit shares, bonuses (unrelated to production) and other forms of compensation.
Pay brackets for hourly wages
ALL INDUSTRIES | $84,128 |
---|---|
Manufacturing | $85,897 |
Information, Culture, Recreation | $65,852 |
Finance, Insurance, Real Estate, Leasing | $79,178 |
Professional, Scientific & Technical Services | $87,941 |
Health Care & Social Assistance | $90,620 |
Public Administration | $95,150 |
Canadian Information Processing Society (CIPS) of Alberta website: ab.cips.ca
Information and Communications Technology Council (ICTC) website: www.ictc-ctic.ca
Get information and referrals about career, education, and employment options from Alberta Supports.
Updated Mar 31, 2022. The information contained in this profile is current as of the dates shown. Salary, employment outlook, and educational program information may change without notice. It is advised that you confirm this information before making any career decisions.