Computer Programmers
Tasks Include:
- Correct errors by making appropriate changes and rechecking the program to ensure that the desired results are produced.
- Conduct trial runs of programs and software applications to be sure they will produce the desired information and that the instructions are correct.
- Compile and write documentation of program development and subsequent revisions, inserting comments in the coded instructions so others can understand the program.
- Write, update, and maintain computer programs or software packages to handle specific jobs such as tracking inventory, storing or retrieving data, or controlling other equipment.
- Consult with managerial, engineering, and technical personnel to clarify program intent, identify problems, and suggest changes.
- Perform or direct revision, repair, or expansion of existing programs to increase operating efficiency or adapt to new requirements.
more »
The data sources for the information displayed here include: O*NET™; US Department of Labor (BLS); Virginia Workforce Connection. (Using onet28)
Projections Quick View:
Virginia: No Data
National: -10.2%
Education
Bachelor's Degree
Job Zone:
Four: Considerable Preparation Needed
Income Range:
Highest ($50,000 and up)
Median Earnings:
National
$97,800.00
State
$108,420.00
Regional
Computer Programmers
Description
Career Cluster: | Information Technology |
Create, modify, and test the code and scripts that allow computer applications to run. Work from specifications drawn up by software and web developers or other individuals. May develop and write computer programs to store, locate, and retrieve specific documents, data, and information.
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Education
Required Level of Education
- Bachelor's Degree = 88.04%
- Associate's Degree (or other 2-year degree) = 8.99%
- Some College Courses = 2.52%
- Master's Degree = 0.45%
Related Work Experience
- Over 6 months, up to and including 1 year = 37.21%
- Over 6 years, up to and including 8 years = 27.64%
- Over 4 years, up to and including 6 years = 12.91%
- Over 8 years, up to and including 10 years = 7.98%
- Over 2 years, up to and including 4 years = 7.38%
- Over 1 year, up to and including 2 years = 3.46%
- None = 2.97%
- Over 10 years = 0.45%
On-Site or In-Plant Training
- None = 35.23%
- Over 1 month, up to and including 3 months = 34.58%
- Up to and including 1 month = 9.92%
- Over 6 months, up to and including 1 year = 7.75%
- Over 10 years = 6.14%
- Over 3 months, up to and including 6 months = 3.58%
- Over 4 years, up to and including 10 years = 1.85%
- Over 1 year, up to and including 2 years = 0.96%
On-the-Job Training
- Over 6 months, up to and including 1 year = 36.10%
- Over 3 months, up to and including 6 months = 29.72%
- Anything beyond short demonstration, up to and including 1 month = 10.51%
- Over 1 month, up to and including 3 months = 9.93%
- Over 4 years, up to and including 10 years = 6.14%
- Over 1 year, up to and including 2 years = 2.89%
- None or short demonstration = 2.43%
- Over 2 years, up to and including 4 years = 2.29%
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Tasks
Core Tasks Include:
- Correct errors by making appropriate changes and rechecking the program to ensure that the desired results are produced.
- Conduct trial runs of programs and software applications to be sure they will produce the desired information and that the instructions are correct.
- Compile and write documentation of program development and subsequent revisions, inserting comments in the coded instructions so others can understand the program.
- Write, update, and maintain computer programs or software packages to handle specific jobs such as tracking inventory, storing or retrieving data, or controlling other equipment.
- Consult with managerial, engineering, and technical personnel to clarify program intent, identify problems, and suggest changes.
- Perform or direct revision, repair, or expansion of existing programs to increase operating efficiency or adapt to new requirements.
- Write, analyze, review, and rewrite programs, using workflow chart and diagram, and applying knowledge of computer capabilities, subject matter, and symbolic logic.
- Write or contribute to instructions or manuals to guide end users.
- Investigate whether networks, workstations, the central processing unit of the system, or peripheral equipment are responding to a program's instructions.
- Prepare detailed workflow charts and diagrams that describe input, output, and logical operation, and convert them into a series of instructions coded in a computer language.
- Perform systems analysis and programming tasks to maintain and control the use of computer systems software as a systems programmer.
- Consult with and assist computer operators or system analysts to define and resolve problems in running computer programs.
- Assign, coordinate, and review work and activities of programming personnel.
Supplemental Tasks Include:
- Collaborate with computer manufacturers and other users to develop new programming methods.
- Train subordinates in programming and program coding.
- Develop Web sites.
- Train users on the use and function of computer programs.
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Knowledge
% | Subject | Description |
---|---|---|
96.75 | Computers and Electronics | Knowledge of circuit boards, processors, chips, electronic equipment, and computer hardware and software, including applications and programming. |
63.25 | Mathematics | Knowledge of arithmetic, algebra, geometry, calculus, statistics, and their applications. |
61.75 | Engineering and Technology | Knowledge of the practical application of engineering science and technology. This includes applying principles, techniques, procedures, and equipment to the design and production of various goods and services. |
60.25 | English Language | Knowledge of the structure and content of the English language including the meaning and spelling of words, rules of composition, and grammar. |
57.50 | Customer and Personal Service | Knowledge of principles and processes for providing customer and personal services. This includes customer needs assessment, meeting quality standards for services, and evaluation of customer satisfaction. |
56.50 | Administration and Management | Knowledge of business and management principles involved in strategic planning, resource allocation, human resources modeling, leadership technique, production methods, and coordination of people and resources. |
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Skills
% | Subject | Description |
---|---|---|
93.75 | Programming | Writing computer programs for various purposes. |
68.75 | Active Listening | Giving full attention to what other people are saying, taking time to understand the points being made, asking questions as appropriate, and not interrupting at inappropriate times. |
68.75 | Complex Problem Solving | Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions. |
68.75 | Critical Thinking | Using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions, or approaches to problems. |
62.50 | Quality Control Analysis | Conducting tests and inspections of products, services, or processes to evaluate quality or performance. |
59.50 | Reading Comprehension | Understanding written sentences and paragraphs in work-related documents. |
59.50 | Systems Analysis | Determining how a system should work and how changes in conditions, operations, and the environment will affect outcomes. |
56.25 | Writing | Communicating effectively in writing as appropriate for the needs of the audience. |
56.25 | Judgment and Decision Making | Considering the relative costs and benefits of potential actions to choose the most appropriate one. |
53.00 | Speaking | Talking to others to convey information effectively. |
53.00 | Mathematics | Using mathematics to solve problems. |
53.00 | Time Management | Managing one's own time and the time of others. |
53.00 | Active Learning | Understanding the implications of new information for both current and future problem-solving and decision-making. |
53.00 | Operations Analysis | Analyzing needs and product requirements to create a design. |
53.00 | Systems Evaluation | Identifying measures or indicators of system performance and the actions needed to improve or correct performance, relative to the goals of the system. |
53.00 | Social Perceptiveness | Being aware of others' reactions and understanding why they react as they do. |
50.00 | Monitoring | Monitoring/Assessing performance of yourself, other individuals, or organizations to make improvements or take corrective action. |
50.00 | Coordination | Adjusting actions in relation to others' actions. |
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Abilities
% | Subject | Description |
---|---|---|
75.00 | Written Comprehension | The ability to read and understand information and ideas presented in writing. |
72.00 | Oral Comprehension | The ability to listen to and understand information and ideas presented through spoken words and sentences. |
72.00 | Near Vision | The ability to see details at close range (within a few feet of the observer). |
68.75 | Problem Sensitivity | The ability to tell when something is wrong or is likely to go wrong. It does not involve solving the problem, only recognizing that there is a problem. |
68.75 | Deductive Reasoning | The ability to apply general rules to specific problems to produce answers that make sense. |
68.75 | Inductive Reasoning | The ability to combine pieces of information to form general rules or conclusions (includes finding a relationship among seemingly unrelated events). |
68.75 | Information Ordering | The ability to arrange things or actions in a certain order or pattern according to a specific rule or set of rules (e.g., patterns of numbers, letters, words, pictures, mathematical operations). |
62.50 | Oral Expression | The ability to communicate information and ideas in speaking so others will understand. |
56.25 | Written Expression | The ability to communicate information and ideas in writing so others will understand. |
56.25 | Speech Recognition | The ability to identify and understand the speech of another person. |
53.00 | Mathematical Reasoning | The ability to choose the right mathematical methods or formulas to solve a problem. |
53.00 | Number Facility | The ability to add, subtract, multiply, or divide quickly and correctly. |
53.00 | Speech Clarity | The ability to speak clearly so others can understand you. |
53.00 | Selective Attention | The ability to concentrate on a task over a period of time without being distracted. |
50.00 | Fluency of Ideas | The ability to come up with a number of ideas about a topic (the number of ideas is important, not their quality, correctness, or creativity). |
50.00 | Originality | The ability to come up with unusual or clever ideas about a given topic or situation, or to develop creative ways to solve a problem. |
50.00 | Flexibility of Closure | The ability to identify or detect a known pattern (a figure, object, word, or sound) that is hidden in other distracting material. |
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Work Activities
% | Subject | Description |
---|---|---|
98.75 | Working with Computers | Using computers and computer systems (including hardware and software) to program, write software, set up functions, enter data, or process information. |
89.75 | Processing Information | Compiling, coding, categorizing, calculating, tabulating, auditing, or verifying information or data. |
88.00 | Analyzing Data or Information | Identifying the underlying principles, reasons, or facts of information by breaking down information or data into separate parts. |
87.75 | Getting Information | Observing, receiving, and otherwise obtaining information from all relevant sources. |
86.25 | Making Decisions and Solving Problems | Analyzing information and evaluating results to choose the best solution and solve problems. |
83.75 | Thinking Creatively | Developing, designing, or creating new applications, ideas, relationships, systems, or products, including artistic contributions. |
80.50 | Identifying Objects, Actions, and Events | Identifying information by categorizing, estimating, recognizing differences or similarities, and detecting changes in circumstances or events. |
79.00 | Updating and Using Relevant Knowledge | Keeping up-to-date technically and applying new knowledge to your job. |
78.25 | Communicating with Supervisors, Peers, or Subordinates | Providing information to supervisors, co-workers, and subordinates by telephone, in written form, e-mail, or in person. |
72.00 | Estimating the Quantifiable Characteristics of Products, Events, or Information | Estimating sizes, distances, and quantities; or determining time, costs, resources, or materials needed to perform a work activity. |
70.50 | Documenting/Recording Information | Entering, transcribing, recording, storing, or maintaining information in written or electronic/magnetic form. |
65.00 | Developing Objectives and Strategies | Establishing long-range objectives and specifying the strategies and actions to achieve them. |
64.75 | Organizing, Planning, and Prioritizing Work | Developing specific goals and plans to prioritize, organize, and accomplish your work. |
63.75 | Evaluating Information to Determine Compliance with Standards | Using relevant information and individual judgment to determine whether events or processes comply with laws, regulations, or standards. |
63.75 | Developing and Building Teams | Encouraging and building mutual trust, respect, and cooperation among team members. |
62.75 | Interpreting the Meaning of Information for Others | Translating or explaining what information means and how it can be used. |
61.25 | Monitoring Processes, Materials, or Surroundings | Monitoring and reviewing information from materials, events, or the environment, to detect or assess problems. |
61.25 | Establishing and Maintaining Interpersonal Relationships | Developing constructive and cooperative working relationships with others, and maintaining them over time. |
60.75 | Providing Consultation and Advice to Others | Providing guidance and expert advice to management or other groups on technical, systems-, or process-related topics. |
51.50 | Coordinating the Work and Activities of Others | Getting members of a group to work together to accomplish tasks. |
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Work Styles
% | Subject | Description |
---|---|---|
99.25 | Attention to Detail | Job requires being careful about detail and thorough in completing work tasks. |
93.50 | Analytical Thinking | Job requires analyzing information and using logic to address work-related issues and problems. |
91.00 | Integrity | Job requires being honest and ethical. |
89.00 | Cooperation | Job requires being pleasant with others on the job and displaying a good-natured, cooperative attitude. |
88.50 | Independence | Job requires developing one's own ways of doing things, guiding oneself with little or no supervision, and depending on oneself to get things done. |
86.00 | Initiative | Job requires a willingness to take on responsibilities and challenges. |
85.75 | Achievement/Effort | Job requires establishing and maintaining personally challenging achievement goals and exerting effort toward mastering tasks. |
85.00 | Persistence | Job requires persistence in the face of obstacles. |
82.25 | Dependability | Job requires being reliable, responsible, and dependable, and fulfilling obligations. |
78.00 | Self-Control | Job requires maintaining composure, keeping emotions in check, controlling anger, and avoiding aggressive behavior, even in very difficult situations. |
76.25 | Adaptability/Flexibility | Job requires being open to change (positive or negative) and to considerable variety in the workplace. |
75.00 | Innovation | Job requires creativity and alternative thinking to develop new ideas for and answers to work-related problems. |
72.50 | Stress Tolerance | Job requires accepting criticism and dealing calmly and effectively with high-stress situations. |
67.75 | Concern for Others | Job requires being sensitive to others' needs and feelings and being understanding and helpful on the job. |
62.00 | Leadership | Job requires a willingness to lead, take charge, and offer opinions and direction. |
55.25 | Social Orientation | Job requires preferring to work with others rather than alone, and being personally connected with others on the job. |
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Work Values
% | Subject | Description |
---|---|---|
77.83 | Achievement | Occupations that satisfy this work value are results oriented and allow employees to use their strongest abilities, giving them a feeling of accomplishment. Corresponding needs are Ability Utilization and Achievement. |
75.00 | Working Conditions | Occupations that satisfy this work value offer job security and good working conditions. Corresponding needs are Activity, Compensation, Independence, Security, Variety and Working Conditions. |
66.67 | Support | Occupations that satisfy this work value offer supportive management that stands behind employees. Corresponding needs are Company Policies, Supervision: Human Relations and Supervision: Technical. |
66.67 | Independence | Occupations that satisfy this work value allow employees to work on their own and make decisions. Corresponding needs are Creativity, Responsibility and Autonomy. |
55.50 | Recognition | Occupations that satisfy this work value offer advancement, potential for leadership, and are often considered prestigious. Corresponding needs are Advancement, Authority, Recognition and Social Status. |
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Work Context
% | Subject | Description |
---|---|---|
100.00 | Electronic Mail | How often do you use electronic mail in this job? |
96.80 | Spend Time Sitting | How much does this job require sitting? |
91.60 | Face-to-Face Discussions | How often do you have to have face-to-face discussions with individuals or teams in this job? |
85.20 | Indoors, Environmentally Controlled | How often does this job require working indoors in environmentally controlled conditions? |
84.40 | Importance of Being Exact or Accurate | How important is being very exact or highly accurate in performing this job? |
84.20 | Work With Work Group or Team | How important is it to work with others in a group or team in this job? |
83.00 | Contact With Others | How much does this job require the worker to be in contact with others (face-to-face, by telephone, or otherwise) in order to perform it? |
80.80 | Time Pressure | How often does this job require the worker to meet strict deadlines? |
71.00 | Level of Competition | To what extent does this job require the worker to compete or to be aware of competitive pressures? |
68.60 | Freedom to Make Decisions | How much decision making freedom, without supervision, does the job offer? |
68.20 | Telephone | How often do you have telephone conversations in this job? |
68.00 | Structured versus Unstructured Work | To what extent is this job structured for the worker, rather than allowing the worker to determine tasks, priorities, and goals? |
65.60 | Spend Time Making Repetitive Motions | How much does this job require making repetitive motions? |
63.00 | Importance of Repeating Same Tasks | How important is repeating the same physical activities (e.g., key entry) or mental activities (e.g., checking entries in a ledger) over and over, without stopping, to performing this job? |
62.80 | Impact of Decisions on Co-workers or Company Results | What results do your decisions usually have on other people or the image or reputation or financial resources of your employer? |
62.80 | Spend Time Using Your Hands to Handle, Control, or Feel Objects, Tools, or Controls | How much does this job require using your hands to handle, control, or feel objects, tools or controls? |
58.00 | Coordinate or Lead Others | How important is it to coordinate or lead others in accomplishing work activities in this job? |
53.80 | Responsibility for Outcomes and Results | How responsible is the worker for work outcomes and results of other workers? |
53.40 | Sounds, Noise Levels Are Distracting or Uncomfortable | How often does this job require working exposed to sounds and noise levels that are distracting or uncomfortable? |
51.20 | Physical Proximity | To what extent does this job require the worker to perform job tasks in close physical proximity to other people? |
50.80 | Consequence of Error | How serious would the result usually be if the worker made a mistake that was not readily correctable? |
49.60 | Public Speaking | How often do you have to perform public speaking in this job? |
49.60 | Frequency of Conflict Situations | How often are there conflict situations the employee has to face in this job? |
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Job Zone Four: Considerable Preparation Needed
- Overall Experience
- A considerable amount of work-related skill, knowledge, or experience is needed for these occupations. For example, an accountant must complete four years of college and work for several years in accounting to be considered qualified.
- Job Training
- Employees in these occupations usually need several years of work-related experience, on-the-job training, and/or vocational training.
- Examples
- Many of these occupations involve coordinating, supervising, managing, or training others. Examples include real estate brokers, sales managers, database administrators, graphic designers, conservation scientists, art directors, and cost estimators.
- Education
- Most of these occupations require a four-year bachelor's degree, but some do not.
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Earnings Benefits*
Region | Entry Level | Median | Experienced |
---|---|---|---|
United States | $54,310.00 | $97,800.00 | $124,060.00 |
Virginia | $58,470.00 | $108,420.00 | $141,770.00 |
Region | Entry Level | Median | Experienced |
Alexandria/Arlington | $86,366.69 | $137,182.54 | $172,021.01 |
Bay Consortium | $70,686.31 | $117,976.67 | $170,997.11 |
Capital Region Workforce Partnership | $57,848.13 | $78,300.12 | $102,786.43 |
Central VA/Region2000 | $54,964.40 | $84,188.05 | $101,992.03 |
Crater Area | No Data | No Data | No Data |
Greater Peninsula | $51,399.45 | $79,648.01 | $100,870.52 |
Hampton Roads | $60,619.72 | $100,894.40 | $125,940.43 |
New River/Mt. Rogers | $49,991.33 | $68,689.40 | $82,932.58 |
Northern Virginia | $89,195.39 | $134,725.60 | $171,741.67 |
Piedmont Workforce | $65,769.32 | $95,977.41 | $134,448.33 |
Shenandoah Valley | No Data | No Data | No Data |
South Central | No Data | No Data | No Data |
Southwestern Virginia | No Data | No Data | No Data |
West Piedmont | $61,958.26 | $70,952.15 | $84,857.84 |
Western Virginia | $68,227.30 | $96,557.90 | $111,316.14 |
* Earnings Calculations:
Regional Earnings:
Entry = Annual mean of the lower 1/3 wage distribution;
Experienced = Annual mean of the upper 2/3 wage distribution.
National and State Earnings:
Entry = Annual 10th percentile wage;
Experienced = Annual 75th percentile wage.
The data sources for the information displayed here include: US Department of Labor (BLS); Virginia Workforce Connection. (Using onet28)
Computer Programmers
Employment Projections
Current | Projected | % Change | |
---|---|---|---|
United States | 174,400 | 156,600 | -10.2% |
Virginia | No Data | No Data | No Data |
Region | Current* | Projected | % Change |
Alexandria/Arlington | No Data | No Data | No Data |
Bay Consortium | No Data | No Data | No Data |
Capital Region Workforce Partnership | No Data | No Data | No Data |
Central VA/Region2000 | No Data | No Data | No Data |
Crater Area | No Data | No Data | No Data |
Greater Peninsula | No Data | No Data | No Data |
Hampton Roads | No Data | No Data | No Data |
New River/Mt. Rogers | No Data | No Data | No Data |
Northern Virginia | No Data | No Data | No Data |
Piedmont Workforce | No Data | No Data | No Data |
Shenandoah Valley | No Data | No Data | No Data |
South Central | No Data | No Data | No Data |
Southwestern Virginia | No Data | No Data | No Data |
West Piedmont | No Data | No Data | No Data |
Western Virginia | No Data | No Data | No Data |
The data sources for the information displayed here include: US Department of Labor (BLS); Virginia Workforce Connection. (Using onet28)
Computer Programmers
Related Occupations
Related Occupations
The related occupations here have similar general capabilities and interests; career explorers may also be interested in the related occupations:- Software Developers
- Computer Systems Engineers/Architects
- Web and Digital Interface Designers
- Computer Systems Analysts
- Database Architects
- Software Quality Assurance Analysts and Testers
- Database Administrators
- Blockchain Engineers
- Computer Hardware Engineers
- Computer Network Architects
- Computer Numerically Controlled Tool Programmers
- Web Developers
- Computer and Information Research Scientists
- Network and Computer Systems Administrators
- Computer and Information Systems Managers
- Web Administrators
- Computer User Support Specialists
- Data Warehousing Specialists
- Electrical and Electronics Drafters
- Electrical and Electronic Engineering Technologists and Technicians
Careers in Programming and Software Development Pathway:
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
View Videos
CareerOneStop Video
View Video & Transcript on CareerOneStop
CareerOneStop Information Technology Videos
Overview
Occupations
The data sources for the information displayed here include: New York State Department of Labor; New Jersey Department of Labor; California Occupational Information Coordinating Committee; CareerOneStop. (Using onet28)
Computer Programmers
Military Training
The following military job classifications are available for this occupation:
- Analysis
- CyberSpace Operations
- Data Processing
- Intercept Operators (Code and Non-Code)
- Not Occupationally Qualified, General
- Programmers
The data sources for the information displayed here include: Defense Manpower Data Center. (Using onet28)
Computer Programmers
Proficiency Ratings
These proficiencies are scored on a scale from 1 to 5 with 1 being not
important to the job and 5 being extremely important to the job.
The data sources for the information displayed here include: O*NET™. (Using onet28)
Computer Programmers
Related Schools
- Averett University
- Bluefield University
- Bridgewater College
- Brightpoint Community College
- Christopher Newport University
- Columbia College
- DeVry University-Virginia
- Eastern Mennonite University
- ECPI University
- Fairfax University of America
- Ferrum College
- George Mason University
- Hampden-Sydney College
- Hampton University
- Laurel Ridge Community College
- Liberty University
- Longwood University
- Northern Virginia Community College
- Old Dominion University
- Piedmont Virginia Community College
- Radford University
- Regent University
- Roanoke College
- Shenandoah University
- Tidewater Community College
- University of Management and Technology
- University of the Potomac-VA Campus
- University of Virginia's College at Wise
- Virginia Military Institute
- Virginia Polytechnic Institute and State University
- Virginia State University
- Virginia Western Community College
- Washington and Lee University
- William & Mary
The data sources for the information displayed here include: O*NET™. (Using onet28)