Information Technology Careers | Computer Programmer

Computer Programmer

Career Area: Information Technology

Occupation Group: Software Development

Salary

Percentile wages tell how much a certain percentage of an overall population in a geographic area or within a given industry or field makes. The percentile wage estimate is the value of a wage below which a certain percent of workers fall.

An example would be the 25th percentile, 25 percent of workers employed in that occupation earn less and 75 percent earn more than the estimated wage value. At the 75th percentile, 75 percent of workers employed in that occupation earn less and 25 percent earn more than the estimated wage value.

A typical Computer Programmer earns the following wages (national and state):

State

The average salary in North Carolina for those pursuing this career is $79,055

*The salaries depicted here are representative of the range of salaries posted in job listings over the past year. Living wage in North Carolina is $30,000.

National

The average salary in the United States for those pursuing this career is $72,200

*The salaries depicted here are representative of the range of salaries posted in job listings over the past year. Living wage in North Carolina is $30,000.

What Does a Professional in this Career Do?

Writes code, or instructions that a computer can follow, to create software programs. Follows program designs created by software developers, and assists with software program design work. Updates and expands programs, tests for errors and fix errors. Uses different computer languages as needed to write programs.

Employment Trends

The job demand and job growth statistics shown here were derived from job posts over the past year. Expected job growth projections are extrapolated from year-over-year job post listing history.

Job demand and job growth is expected at the following rates:

LocationGrowth
North Carolina1862-5.3%
Nationwide51539-7.2%

Skills

A professional in this position typically utilizes the following skills in the course of everyday work in this exciting and challenging field:

Baseline Skills

The following are baseline skills every Computer Programmer is expected to have in order to experience success in this field:

  • Communication Skills: The ability to convey information to another effectively and efficiently.
  • Problem Solving: Problem solving consists of using generic or ad hoc methods, in an orderly manner, for finding solutions to problems.
  • Teamwork / Collaboration: Experience working in collaborative efforts with a team to achieve a common goal or to complete a task in the most effective and efficient way.
  • Writing: Experience expressing business messages effectively in written form. This may include planning drafting and revising as necessary.
  • Planning: Working experience with the process of thinking about and organizing the activities required to achieve desired goals.

Specialized Skills

These skills are specific to working in this career:

  • SQL: SQL ( ESS-kew-EL or SEE-kwl, Structured Query Language) is a domain-specific language used in programming and designed for managing data held in a relational database management system (RDBMS), or for stream processing in a relational data stream management system (RDSMS).
  • Java: Java is a set of computer software and specifications developed by Sun Microsystems, which was later acquired by the Oracle Corporation, that provides a system for developing application software and deploying it in a cross-platform computing environment.
  • Customer Service: Working experience with the provision of service to customers before, during and after a purchase.
  • Scheduling: Working experience making schedules, which are basic time-management tools, consisting of a list of times at which possible tasks, events, or actions are intended to take place withing an organization.
  • Software Development: Software development is the process of computer programming, documenting, testing, and bug fixing involved in creating and maintaining applications and frameworks resulting in a software product.

Distinguishing Skills

Any Computer Programmer that possesses the following skills will stand out against the competition:

  • .NET: .NET Framework (pronounced dot net) is a software framework developed by Microsoft that runs primarily on Microsoft Windows.
  • C++: C++ (pronounced cee plus plus ) is a general-purpose programming language.
  • Debugging: Debugging is the process of finding and resolving of defects that prevent correct operation of computer software or a system.
  • SQL Server: Microsoft SQL Server is a relational database management system developed by Microsoft.

Experience

This position typically requires the following level of experience. The numbers presented in the pie charts below were derived from actual job posts over the past year. Not all job postings list experience requirements.

Experience Required%
0 to 2 years32%
3 to 5 years41%
6 to 8 years16%

Many of the programs offered through NC State are designed for working professionals who need additional credentials to enhance existing work experience.

Students who do not have the expected level of experience may wish to look into internship and employment opportunities.

Common Job Titles

It is possible to find work in this field in positions commonly listed as the following job titles:

  • Entry Level Computer Programmer
  • Programmer
  • Mobile Expert
  • Computer Programmer
  • Cloud Developer

Similar Occupations

If you are interested in exploring similar occupations, you may want to research the following job titles: