Salary, Job Description, How To Become One, and Quiz
Computer Programmers
Computer Programmers create, modify, and test the code, forms, and script that allow computer applications to run. Work from specifications drawn up by software developers or other individuals. May assist software developers by analyzing user needs and designing software solutions. May develop and write computer programs to store, locate, and retrieve specific documents, data, and information.
Table of contents
What they do
Computer Programmers create, modify, and test the code, forms, and script that allow computer applications to run. Work from specifications drawn up by software developers or other individuals. May assist software developers by analyzing user needs and designing software solutions. May develop and write computer programs to store, locate, and retrieve specific documents, data, and information.
- 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.
- 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.
Typical day
On a daily basis, Computer Programmers perform or direct revision, repair, or expansion of existing programs to increase operating efficiency or adapt to new requirements. They perform systems analysis and programming tasks to maintain and control the use of computer systems software as a systems programmer.
A typical day for a Computer Programmer will also include:
- Compile and write documentation of program development and subsequent revisions, inserting comments in the coded instructions so others can understand the program.
- Write, analyze, review, and rewrite programs, using workflow chart and diagram, and applying knowledge of computer capabilities, subject matter, and symbolic logic.
- Consult with managerial, engineering, and technical personnel to clarify program intent, identify problems, and suggest changes.
- Correct errors by making appropriate changes and rechecking the program to ensure that the desired results are produced.
- Develop Web sites.
Other responsibilities
Besides their typical day, Computer Programmers also assign, coordinate, and review work and activities of programming personnel. They may also collaborate with computer manufacturers and other users to develop new programming methods.
On a weekly to monthly basis, Computer Programmers consult with and assist computer operators or system analysts to define and resolve problems in running computer programs. They might also train users on the use and function of computer programs.
In addition, they consult with managerial, engineering, and technical personnel to clarify program intent, identify problems, and suggest changes.
Although specific duties may vary, many of them 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.
To some Computer Programmers, it is also their responsibility to perform systems analysis and programming tasks to maintain and control the use of computer systems software as a systems programmer.
What is the job like
Job satisfaction
Is this job meaningful
70% said they were satisfied with their job and 46% said they found their job meaningful.
I work as a programmer/developer for a software company.
My typical day
My day normally starts with a short meeting with my boss and the other programmers in the team. During this meeting, I will either discuss what I was doing the day before or take a new task/issue from the list and ask any questions I have.
I will then start creating a simple design of what I plan to create/build and start looking at what has already been implemented making notes as I go. I will then draft a series of simple tests to verify if what I am able to write meets the requirements. I then start actually coding, if this is a simple change, this may only take an hour or so, if it is something complex, this may take several days involving lots of reading of the available documentation.
During this time I may have meetings with clients to discuss future projects or meetings with marketing, sales, etc. Once I have finished creating the code and thoroughly tested it, I upload my code to Git for review. Occasionally the day might be focused on learning something new for an upcoming project but in my experience, this does not occur frequently.
After finishing work for the day, I normally start work on a side project that I use to keep my skill set up to date ensure if the technology stack my company uses becomes obsolete I am able to switch to something different very quickly.
Pros
The main benefit of my job is it is very flexible, I always work from home and my employer is happy for me to work whenever it suits me. The pay is also well above average. I am mentally challenged by my job everyday, I’ve worked previous jobs while studying that have been incredibly boring.
Cons
The biggest negative is trying to keep up with technology, this is not a problem when you are younger, as it is easy to find the time and it’s exciting to pick up a new piece of technology or language. As you get older and have a family this becomes more and more difficult, requiring effort and planning to find the time. If you don’t keep up with the latest technologies finding work may be challenging as you get older. Another negative is that sitting at a desk for long periods puts a strain on you physically, I occasionally suffer from back, shoulder, and neck pain requiring chiropractor treatment.
Advice for aspiring Programmers
For students, the obvious work hard and get good qualifications is not enough, the best candidates that I have interviewed have always had side projects (some very successful) that they have worked on alongside their studies, this could be open source projects, websites they’ve built or games they’ve written. The more passionate about it they are, the better, as they will find it easier to talk about it during interviews and are more likely to stick with it. A good degree does make it easier for you to get your foot in the door, often HR departments/recruiters will discount anyone without a good degree.
A good test to see if you are suitable to be a programmer is, think of a puzzle that will take hours to solve and once it’s solved, leads you to another equally or more difficult puzzle, this continues until it is time for you to leave. If you get excited about the challenge of solving these puzzles, you will fit in well as a programmer, although you may find in reality, you spend more time in meetings discussing the puzzle than you would like.
Pros
Suitable for people who like to solve problems mentally.
Suitable for people who value achievements and are results-oriented.
This career is perfect for people who love to work indoors.
Very high salary (top 25% highest paid careers).
Normal working hours (40 hours per week).
Cons
Not suitable for people who like to start and carry out projects.
It is hard to get into this career. A considerable amount of work-related skill, knowledge, or experience is required for this career.
How much do they make
Average salary
Average hourly wage
Entry-level Computer Programmers with little to no experience can expect to make anywhere between $51,440 to $67,370 per year or $25 to $32 per hour.
Salary by experience | Annual | Hourly |
---|---|---|
Highest (Top 10%) | $146,050 | $70 |
Senior (Top 25%) | $116,220 | $56 |
Median | $89,190 | $43 |
Junior (Bottom 25%) | $67,370 | $32 |
No experience (Bottom 10%) | $51,440 | $25 |
This table shows the top 10 highest paying industries for Computer Programmers based on their average annual salary.
Salary by industry | Annual | Hourly |
---|---|---|
Software Publishers | $129410 | $62.21 |
Lessors of Nonfinancial Intangible Assets | $123280 | $59.27 |
Other Personal Services | $119160 | $57.29 |
Other Information Services | $117840 | $56.66 |
Spectator Sports | $117160 | $56.33 |
Travel Arrangement and Reservation Services | $116090 | $55.81 |
Scientific Research and Development Services | $108850 | $52.33 |
Oil and Gas Extraction | $107920 | $51.88 |
Securities, Commodity Contracts, and Other Financial Investments and Related Activities | $106780 | $51.33 |
Semiconductor and Other Electronic Component Manufacturing | $106180 | $51.05 |
View more salary by industries here.
Where can they work
Where can Computer Programmers work? Here is a table showing the top 10 largest employers of Computer Programmers including the average salary in that industry.
Employers | Total Employed | Annual Salary | Hourly Wages |
---|---|---|---|
Computer Systems Design and Related Services | 68020 | $94830 | $45.59 |
Software Publishers | 10030 | $129410 | $62.21 |
Management of Companies and Enterprises | 7900 | $97520 | $46.88 |
Colleges, Universities, and Professional Schools | 7520 | $79550 | $38.24 |
Data Processing, Hosting, and Related Services | 6210 | $102350 | $49.21 |
Management, Scientific, and Technical Consulting Services | 5270 | $93210 | $44.81 |
State Government | 5040 | $81140 | $39.01 |
Insurance Carriers | 4150 | $89990 | $43.26 |
Credit Intermediation and Related Activities | 4060 | $96560 | $46.42 |
Local Government | 4000 | $85450 | $41.08 |
What is the work day like
Working hours
Working schedule
How often do you use email in this job?
Telephone
How often do you have telephone conversations in this job?
Group discussions
How often do you have group discussions in this job?
Public speaking
How often does this job require you to do public speaking?
Level of competition
How much competitive pressure is in this job?
What is the work environment like
Office-style environment
Indoors in an environmentally controlled condition
Warehouse-style environment
Indoors in a non-controlled environmental condition such as a warehouse
Outdoors
Outdoors exposed to all weather conditions
Outdoors – Under Cover
Outdoors but under cover (e.g. structure with roof but no walls)
How to become one
Difficulty to become one
Required level of education
What level of education do you need to perform the job?
Relevant majors
Management Information Systems
Medical Office Computer Specialist/Assistant
Data Visualization
Data Analytics
Computational Science
Computer Software Technology
Modeling, Virtual Environments and Simulation
Cloud Computing
Computer Graphics
Computer Science
Computer Programming, Specific Platforms
Computer Game Programming
Computer Programming, Specific Applications
Relevant work experience
How much related work experience do you need to get hired for the job?
On The Job Training
How much on the job training do you need to perform the job?
Should you become one
Best personality type for this career
People with this personality likes to work with ideas that require an extensive amount of thinking. They prefer work that requires them to solve problems mentally.
People with The Builder personality type likes practical and hands-on work. They prefer working with plants, animals, and real-world materials like wood, tools, and machinery.
People with The Thinker personality likes to work with ideas that require an extensive amount of thinking. They prefer work that requires them to solve problems mentally.
People with The Artist personality likes to work with designs and patterns. They prefer activities that require self-expression and prefer work that can be done without following a clear set of rules.
People with The Helper personality type likes to work with people and in teams. They prefer work that allows them to build relationships with others.
People with The Leader personality likes to start and work on projects. They also like leading people and making many decisions.
People with The Organizer personality type likes to follow set procedures and routines. They prefer working with data and details more than with ideas.
You can read more about these career personality types here.
People who are suitable for this job tend to like working with ideas and require an extensive amount of thinking. They like searching for facts and figuring out problems mentally.
They also like following set procedures and routines. They like working with data and details more than with ideas.
Take this quiz to see if this is the right career for you.
Work Values
Which values are the most important to a person’s satisfaction for this job?
You are someone who is results oriented. You prefer work that allows you to utilize your skills and abilities while at the same time giving you a sense of accomplishment.
You are someone who values job security, steady employment, and good working conditions. You also prefer work that keeps you busy all the time with something different to do every day.
You are someone who values job advancement and leadership roles. You prefer work that receives recognition for the work you do and jobs that are looked up to by others in the company and your community.
You are someone who likes to provide a service to others. You prefer a work environment where you can work with your co-workers in a friendly non-competitive environment.
You are someone who values a company that stands behind their employees. You prefer a work environment where everyone is treated fairly and is being supported by the company.
You are someone who likes to work on your own and make your own decisions. You prefer work that requires little supervision and are allowed to try out your own ideas.
Don’t know which career to pursue?
Take the career quiz to find careers that match your personality type.
Take The Career Quiz