Computer Programmer

Does this career fit your work personality?

Begin The Career Assessment Test
?
FIT Score
Discover your work personality strengths.
This is a Premium Feature X Find your
  • Best Fitting Careers
  • Work Personality Strengths
  • Work Style Preferences
  • and more
Job Outlook:
Decline
Education: Bachelor's degree
Work From Home
Salary
High: $157,690.00
Average: $102,790.00
Hourly
Average: $49.42

What they do:

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.

On the job, you would:

  • Write, analyze, review, and rewrite programs, using workflow chart and diagram, and applying knowledge of computer capabilities, subject matter, and symbolic logic.
  • Correct errors by making appropriate changes and rechecking the program to ensure that the desired results are produced.
  • Perform or direct revision, repair, or expansion of existing programs to increase operating efficiency or adapt to new requirements.

Important Qualities

Analytical skills. Computer programmers must understand complex instructions in order to create computer code.

Communication skills. Although computer programmers work alone to write code, they must have effective communication skills to coordinate work on large projects with team members and managers.

Detail oriented. Computer programmers must closely examine the code that they write, modify, or test, because a small mistake may affect the entire computer program.

Problem-solving skills. Programmers check the code for errors and fix any they find.

Personality

A3 Your Strengths Importance

Characteristics of this Career

99% Attention to Detail  -  Job requires being careful about detail and thorough in completing work tasks.
94% Analytical Thinking  -  Job requires analyzing information and using logic to address work-related issues and problems.
91% Integrity  -  Job requires being honest and ethical.
89% Cooperation  -  Job requires being pleasant with others on the job and displaying a good-natured, cooperative attitude.
89% 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% Initiative  -  Job requires a willingness to take on responsibilities and challenges.
86% Achievement/Effort  -  Job requires establishing and maintaining personally challenging achievement goals and exerting effort toward mastering tasks.
85% Persistence  -  Job requires persistence in the face of obstacles.
82% Dependability  -  Job requires being reliable, responsible, and dependable, and fulfilling obligations.
78% Self-Control  -  Job requires maintaining composure, keeping emotions in check, controlling anger, and avoiding aggressive behavior, even in very difficult situations.
76% Adaptability/Flexibility  -  Job requires being open to change (positive or negative) and to considerable variety in the workplace.
75% Innovation  -  Job requires creativity and alternative thinking to develop new ideas for and answers to work-related problems.
73% Stress Tolerance  -  Job requires accepting criticism and dealing calmly and effectively with high-stress situations.
68% Concern for Others  -  Job requires being sensitive to others' needs and feelings and being understanding and helpful on the job.
62% Leadership  -  Job requires a willingness to lead, take charge, and offer opinions and direction.
55% Social Orientation  -  Job requires preferring to work with others rather than alone, and being personally connected with others on the job.
A3 Your Strengths Importance

Strengths

100% Investigative  -  Work involves studying and researching non-living objects, living organisms, disease or other forms of impairment, or human behavior. Investigative occupations are often associated with physical, life, medical, or social sciences, and can be found in the fields of humanities, mathematics/statistics, information technology, or health care service.
78% Conventional  -  Work involves following procedures and regulations to organize information or data, typically in a business setting. Conventional occupations are often associated with office work, accounting, mathematics/statistics, information technology, finance, or human resources.
A3 Your Strengths Importance

Values of the Work Environment

78% 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% 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.
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.
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.
56% 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.

Aptitude

A3 Your Strengths Importance

Abilities | Cognitive, Physical, Personality

75% Written Comprehension  -  The ability to read and understand information and ideas presented in writing.
72% Near Vision  -  The ability to see details at close range (within a few feet of the observer).
72% Oral Comprehension  -  The ability to listen to and understand information and ideas presented through spoken words and sentences.
69% Inductive Reasoning  -  The ability to combine pieces of information to form general rules or conclusions (includes finding a relationship among seemingly unrelated events).
69% 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).
69% 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.
69% Deductive Reasoning  -  The ability to apply general rules to specific problems to produce answers that make sense.
63% Oral Expression  -  The ability to communicate information and ideas in speaking so others will understand.
56% Speech Recognition  -  The ability to identify and understand the speech of another person.
56% Written Expression  -  The ability to communicate information and ideas in writing so others will understand.
53% Speech Clarity  -  The ability to speak clearly so others can understand you.
53% Selective Attention  -  The ability to concentrate on a task over a period of time without being distracted.
53% Mathematical Reasoning  -  The ability to choose the right mathematical methods or formulas to solve a problem.
53% Number Facility  -  The ability to add, subtract, multiply, or divide quickly and correctly.
A3 Your Strengths Importance

Skills | Cognitive, Physical, Personality

70% Programming  -  Writing computer programs for various purposes.
57% 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.
55% Critical Thinking  -  Using logic and reasoning to identify the strengths and weaknesses of alternative solutions, conclusions, or approaches to problems.
55% Complex Problem Solving  -  Identifying complex problems and reviewing related information to develop and evaluate options and implement solutions.
54% Operations Analysis  -  Analyzing needs and product requirements to create a design.
52% 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.

Job Details

Responsibilities
Test software performance.
Resolve computer software problems.
Test software performance.
Document design or development procedures.
Modify software programs to improve performance.
Write computer programming code.
Collaborate with others to resolve information technology issues.
Modify software programs to improve performance.
Modify software programs to improve performance.
Write computer programming code.
Prepare instruction manuals.
Test computer system operations to ensure proper functioning.
Develop diagrams or flow charts of system operation.
Develop models of information or communications systems.
Test computer system operations to ensure proper functioning.
Collaborate with others to resolve information technology issues.
Supervise information technology personnel.
Manage information technology projects or system activities.
Assign duties or work schedules to employees.
Coordinate project activities with other personnel or departments.
Train others in computer interface or software use.
Develop computer or online applications.
Design websites or web applications.
Teach others to use computer equipment or hardware.
Train others in computer interface or software use.
A3 Your Strengths Importance

Attributes & Percentage of Time Spent

100% Electronic Mail  -  How often do you use electronic mail in this job?
96% Spend Time Sitting  -  How much does this job require sitting?
90% Face-to-Face Discussions  -  How often do you have to have face-to-face discussions with individuals or teams in this job?
82% Indoors, Environmentally Controlled  -  How often does this job require working indoors in environmentally controlled conditions?
81% Importance of Being Exact or Accurate  -  How important is being very exact or highly accurate in performing this job?
80% Work With Work Group or Team  -  How important is it to work with others in a group or team in this job?
79% 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?
76% Time Pressure  -  How often does this job require the worker to meet strict deadlines?
64% Level of Competition  -  To what extent does this job require the worker to compete or to be aware of competitive pressures?
61% Freedom to Make Decisions  -  How much decision making freedom, without supervision, does the job offer?
60% Telephone  -  How often do you have telephone conversations in this job?
60% 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?
57% Spend Time Making Repetitive Motions  -  How much does this job require making repetitive motions?
54% 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?
54% 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?
54% 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?
66% Duration of Typical Work Week  -  Number of hours typically worked in one week.
A3 Your Strengths Importance

Tasks & Values

99% Working with Computers  -  Using computers and computer systems (including hardware and software) to program, write software, set up functions, enter data, or process information.
90% Processing Information  -  Compiling, coding, categorizing, calculating, tabulating, auditing, or verifying information or data.
88% Analyzing Data or Information  -  Identifying the underlying principles, reasons, or facts of information by breaking down information or data into separate parts.
88% Getting Information  -  Observing, receiving, and otherwise obtaining information from all relevant sources.
86% Making Decisions and Solving Problems  -  Analyzing information and evaluating results to choose the best solution and solve problems.
84% Thinking Creatively  -  Developing, designing, or creating new applications, ideas, relationships, systems, or products, including artistic contributions.
81% Identifying Objects, Actions, and Events  -  Identifying information by categorizing, estimating, recognizing differences or similarities, and detecting changes in circumstances or events.
79% Updating and Using Relevant Knowledge  -  Keeping up-to-date technically and applying new knowledge to your job.
78% 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% 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.
71% Documenting/Recording Information  -  Entering, transcribing, recording, storing, or maintaining information in written or electronic/magnetic form.
65% Developing Objectives and Strategies  -  Establishing long-range objectives and specifying the strategies and actions to achieve them.
65% Organizing, Planning, and Prioritizing Work  -  Developing specific goals and plans to prioritize, organize, and accomplish your work.
64% Developing and Building Teams  -  Encouraging and building mutual trust, respect, and cooperation among team members.
64% 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% Interpreting the Meaning of Information for Others  -  Translating or explaining what information means and how it can be used.
61% Establishing and Maintaining Interpersonal Relationships  -  Developing constructive and cooperative working relationships with others, and maintaining them over time.
61% Monitoring Processes, Materials, or Surroundings  -  Monitoring and reviewing information from materials, events, or the environment, to detect or assess problems.
61% Providing Consultation and Advice to Others  -  Providing guidance and expert advice to management or other groups on technical, systems-, or process-related topics.
52% Coordinating the Work and Activities of Others  -  Getting members of a group to work together to accomplish tasks.

What Computer Programmers Do

Computer programmers
Computer programmers write programs in a variety of computer languages, such as C++ and Java.

Computer programmers write, modify, and test code and scripts that allow computer software and applications to function properly. They turn the designs created by software developers and engineers into instructions that a computer can follow. In addition, programmers run tests to ensure that newly created applications and software produce the expected results. If the products do not work correctly, programmers check the code or scripts for mistakes and modify them.

Duties

Computer programmers typically do the following:

  • Write programs in a variety of computer languages, such as C++ and Java
  • Update and expand existing programs
  • Test programs for errors and fix the faulty lines of computer code
  • Create, modify, and test code or scripts in software that simplifies development

Programmers work closely with software developers, and in some businesses their duties overlap. When such overlap occurs, programmers may be required to take on some of the tasks that are typically assigned to developers, such as designing programs.

Programmers use code libraries, which are collections of independent lines of code, to simplify their writing and improve their efficiency. They may create their own code libraries or make use of existing ones.

In addition, programmers may write or use software-as-a-service (SaaS) applications that are centrally hosted online. Although programmers typically need to rewrite their programs to work on different system platforms, such as Windows or OS X, applications created with SaaS work on all platforms. Accordingly, programmers writing SaaS applications may not have to rewrite as much code as other programmers do and can instead spend more time writing new programs.

Work Environment

Computer programmers held about 147,400 jobs in 2022. The largest employers of computer programmers were as follows:

Computer systems design and related services 32%
Self-employed workers 7
Manufacturing 6
Finance and insurance 6
Software publishers 6

Programmers usually work in office settings, which may be in their homes.

Work Schedules

Most computer programmers work full time.

Getting Started

Education:
88%
Bachelor's Degree
9%
Associate's Degree (or other 2-year degree)

How to Become a Computer Programmer

Computer programmers
Most programmers have a degree in computer science or a related field.

Computer programmers typically need a bachelor’s degree in computer science or a related subject. Most programmers specialize in several programming languages.

Education

Computer programmers typically need a bachelor's degree in computer and information technology or a related field, such as mathematics. However, some employers hire workers who have other degrees or experience in specific programming languages. Programmers who work in specific fields, such as healthcare or accounting, may take classes in that field to supplement their computer-related degree. In addition, employers may prefer to hire candidates who have experience gained through internships.

Most programmers learn computer languages while in school. However, a computer science degree gives students the skills they need to learn new computer languages easily. Students get experience writing code, testing programs, fixing errors, and doing many other tasks that they will perform on the job.

To keep up with changing technology, computer programmers may take continuing education classes and attend professional development seminars to learn new programming languages or about upgrades to programming languages they already know.

Licenses, Certifications, and Registrations

Programmers may become certified in specific programming languages or for vendor-specific programming products. Some companies require their computer programmers to be certified in the products they use.

Advancement

Programmers who have general business experience may become computer systems analysts. With experience, some programmers may become software developers. They may also be promoted to managerial positions. For more information, see the profiles on computer systems analysts, software developers, and computer and information systems managers.

Job Outlook

Employment of computer programmers is projected to decline 11 percent from 2022 to 2032.

Despite declining employment, about 6,700 openings for computer programmers are projected each year, on average, over the decade. All of those openings are expected to result from the need to replace workers who transfer to other occupations or exit the labor force, such as to retire.

Employment

Computer programming work continues to be automated, helping computer programmers to become more efficient in some of their tasks. Many companies are leveraging technologies to automate repetitive tasks, such as code formatting, to save time and money. Automation of this routine work could allow computer programmers to focus on other tasks, such as strategic planning activities, that cannot be automated. In addition, some computer programming tasks are more commonly done by other computer occupations, such as developers or analysts.

Contacts for More Information

For more information about computer programmers, visit

Association for Computing Machinery

CompTIA

IEEE Computer Society

For information about opportunities for women pursuing information technology careers, visit

National Center for Women & Information Technology

Similar Occupations

This table shows a list of occupations with job duties that are similar to those of computer programmers.

Occupation Job Duties Entry-Level Education Median Annual Pay, May 2022
Computer and information research scientists Computer and Information Research Scientists

Computer and information research scientists design innovative uses for new and existing computing technology.

Master's degree $136,620
Computer and information systems managers Computer and Information Systems Managers

Computer and information systems managers plan, coordinate, and direct computer-related activities in an organization.

Bachelor's degree $164,070
Computer hardware engineers Computer Hardware Engineers

Computer hardware engineers research, design, develop, and test computer systems and components.

Bachelor's degree $132,360
computer network architects image Computer Network Architects

Computer network architects design and build data communication networks, including local area networks (LANs), wide area networks (WANs), and Intranets.

Bachelor's degree $126,900
Computer support specialists Computer Support Specialists

Computer support specialists maintain computer networks and provide technical help to computer users.

See How to Become One $59,660
Computer systems analysts Computer Systems Analysts

Computer systems analysts study an organization’s current computer systems and design ways to improve efficiency.

Bachelor's degree $102,240
Database administrators Database Administrators and Architects

Database administrators and architects create or organize systems to store and secure data.

Bachelor's degree $112,120
Information security analysts Information Security Analysts

Information security analysts plan and carry out security measures to protect an organization’s computer networks and systems.

Bachelor's degree $112,000
Network and computer systems administrators Network and Computer Systems Administrators

Network and computer systems administrators install, configure, and maintain organizations’ computer networks and systems.

Bachelor's degree $90,520
Software developers Software Developers, Quality Assurance Analysts, and Testers

Software developers design computer applications or programs. Software quality assurance analysts and testers identify problems with applications or programs and report defects.  

Bachelor's degree $124,200
Web developers Web Developers and Digital Designers

Web developers create and maintain websites. Digital designers develop, create, and test website or interface layout, functions, and navigation for usability.

Bachelor's degree $80,730

Information provided by CareerFitter, LLC and other sources.

Sections of this page includes information from the O*NET 27.3 Database by the U.S. Department of Labor, Employment and Training Administration (USDOL/ETA). Used under the CC BY 4.0 license.

CareerFitter, LLC has modified all or some of this information. USDOL/ETA has not approved, endorsed, or tested these modifications.