Computer programming is very similar to software development, but there are some important differences. Think of it as high-level software development.
This guide covers everything you need to know about computer programming jobs, including where to look for computer programming jobs, how to prepare for a job, and computer programming job salary information.
A computer programmer usually works with older, more syntax-heavy languages like C, C++, PHP, Java & .NET to turn software developers’ designs into a more straightforward language the computer can understand.
Unlike developers, computer programmers sometimes know Assembly language, computers’ native language, and high-level math.
Now that we got that out of the way, let’s see how you can get started.
Usually, the first step in landing a computer programming job is to obtain a related degree. Computer programming is high-level, unlike other professions, so you might need to be well-versed in STEM topics like physics and discrete math, depending on your specialization.
According to the Bureau of Labor Statistics, a bachelor’s degree from a four-year university tends to be an entry-level computer programming job requirement. However, an associate’s degree may sometimes suffice.
And of course, like in every other field, a master’s might be just what you need to take your career to the next level. While active in the job market, an employer might ask that you get or have a certain certification for your specialization since computer programming is so vast.
Therefore, continuing education for a programmer will play a big role in computer programming job opportunities and future career options.
One thing to keep in mind is that there are many areas of study you can choose from that are suitable for computer programming. Many colleges will even use the names interchangeably, though it’s always important to read the degree’s description and look at the classes offered.
Here is a list of majors and topic areas related to computer programming:
- Information Technology
- Computer Architecture
- Systems Information
- Information Systems Security
- Software Engineering
- Computer Engineering
- Computer Science
Computer Programming Jobs Market
The Bureau of Labor Statistics predicted that Computer programming jobs will decline by 11 percent by 2032. On the other hand, Software developer jobs will grow by 25 percent from 2022 to 2032.
Why is that, you might ask?
Well, think of computer programmers as the technicians who mainly focus on the code and developers like those whose main job is solving a problem. Therefore, though programmers are more technically skilled, developers possess a larger scope, which gives them more opportunities.
Then why would I want to become a computer programmer, you ask?
Easy answer.
The areas of study are either very similar or identical for both developers and programmers, so if you love to code and speak computer, there is no reason not to pursue your passion.
You can always transition to a developer role by simply shifting your focus. In my view, if software developers are Mario, computer programmers are Mario with the mushroom life.
Now, are you curious to find out why computer programming jobs are decreasing if they are technically demanding and high-level?
One word: Outsourcing.
Since programming is all about code, it can be easily outsourced abroad, saving many companies millions. The good news is language can be a major barrier to this software development method, which is why a computer programmer out here in the US remains more valuable.
In addition, you can always transition into more of a developer role. Communicating the design of things effectively, like infrastructure and features, is necessary to solve problems and something most businesses won’t compromise.
Computer Programmer Salary
As you can see, the path to becoming a computer programmer is a rigorous one. Computer programming is a science, and you are a scientist. Computer programming has massive applications in biology, architecture, physics, etc. The possibilities are limitless.
So, how much do computer programmers make? Here is a ballpark estimate of what an average computer programmer makes in the US, according to GlassDoor and based on seniority:
- Entry-level computer programming jobs: $103,000
- Mid-level computer programming jobs: $107,000
- Senior-level computer programming jobs: $155,000
- CTO (Chief Technology Officer): $339,000
Though these numbers give us an idea, they should always be taken with a grain of salt since the field is vast. The salaries can significantly vary based on the field of study, education, experience, location, and soft skills.
Additional factors will affect how much you can make as a computer programmer.
Average salaries based on coding language:
- C++ developer: $113,762
- C developer: $94,014
- Java developer: $104,494
- JavaScript developer: $117,798
- Kotlin developer: $80,760
- PHP developer: $94,017
- Ruby developer: $108,268
- Python developer: $101,175
- Swift developer: $89,736
Lastly, since we’re mainly focusing on the US, below are the cities with the highest average salaries:
- San Jose, CA: $144,130
- San Francisco, CA: $126,220
- Dalton, GA: $123,500
- Boulder, CO: $118,970
- Washington, DC: $117,870
Sample Computer Programmer Job Description
Do you have what it takes? An excellent way to get your dream job is by finding out what the skills and qualifications are that the job requires. This way, you can gauge where you are and where you need to get.
You might want to work as a computer programmer at a VR company only to find that it utilizes a coding language you’ve never written in. Maybe you want to make $100,000 but need five years of coding experience when you only have two.
Job descriptions are great roadmaps because they lay it all out there for you. Achieving the life you want is within your reach, and the cheat codes are right in front of you.
Entry-level Computer Programmer Job Description
Responsibilities:
- Code and test programming for software and mobile apps.
- Develop and deploy computer applications.
- Execute code builds to test and production environments.
- Fix bugs in existing code.
- Collaborate with product, design, and marketing teams.
- Maintain documentation per company standards.
- Provide testing, documentation, training, and support for third-party software products.
- Resolve user-submitted problems and questions.
Qualifications/Skills:
- Understanding of object-oriented software engineering
- Track record of successful application development
- Ability to write clean, well-documented code
- Excellent complex problem-solving and critical-thinking skills
- Working knowledge of SQL and Microsoft SQL Server
- Solid troubleshooting and communication skills
- Experience using Microsoft Office tools (Excel, Visio)
- Demonstrated analytical and critical thinking abilities
Education and Experience:
- Bachelor’s degree in computer science, engineering, or a related field
- One to three years of experience in software development
- Proven experience with OOP languages (Java, C++, VB.NET)
- Familiarity with HTML, JavaScript, CSS, and AJAX
- Direct experience with Agile software development methodologies is a plus
Mid-Level Computer Programmer Job Description
Description:
- SAIC seeks COMPUTER PROGRAMMERS/SCIENTISTS for its civil aviation concept exploration and aviation simulation programs. These include current job opportunities and proposed positions in the planning stage.
- Positions require a BA/BS in Computer Science, Computer Engineering, Math, or Data Science, working in mostly a Linux environment.
- Software skills required vary by the different open positions and include C++, Java, Javascript, Scripting Languages (sh, bash, Tcl, python), HTML, C#, Linux, and Windows. Experience with User Interface concepts and design is a plus.
Responsibilities:
- Candidates will work on SAIC’s civil aviation programs supporting the Federal Aviation Administration (FAA). As part of a team, the candidate will design and develop software used in simulation labs of aviation systems, including Air Traffic Control (ATC) systems and traffic Flow Management Systems, and conduct simulations with air traffic and weather data.
- Candidates will develop software for processing data and integrating prototype systems for research and development (R&D) or analysis projects.
- Actual job openings and planned job positions include software development of data and user interfaces and evaluating system interfaces and functionality. Candidates must have good verbal and written communication skills, be self-managing, and work well in group and individual assignments.
Duties will include, but are not limited to:
- Support the design of new software, generate new code, and correct, convert, and modify existing code to meet specifications.
- Modify, troubleshoot, and enhance the functionality and performance of existing software.
- Develop software used for interfacing and testing systems.
Qualifications
(MINIMUM QUALIFICATIONS)
- Bachelor’s Degree in Computer Science, Computer Engineering, Computer Info Systems
- Requires 5 to 11 years of programming experience
- Linux or Unix – minimum three years
- Candidate must know either OOP: Java or C++
- Programming in at least 2 of the following domains:
- Real-time processing systems, Air Traffic Control/ Air Traffic Management Systems, weather systems
- Demonstrate mastery of OOP Java or C++.
- Javascript, Scripting languages
- HTML/HTML5, Windows/C# , Scripting languages
Senior Computer Programmer Job Description
Responsibilities
- Code and test programming for software and mobile apps.
- Develop and deploy computer applications.
- Execute code builds to test and production environments.
- Fix bugs in existing code.
- Collaborate with product, design, and marketing teams.
- Maintain documentation per company standards.
- Provide testing, documentation, training, and support for third-party software products.
- Resolve user-submitted problems and questions.
Qualifications/Skills
- Understanding of object-oriented software engineering
- Track record of successful application development
- Ability to write clean, well-documented code
- Excellent complex problem-solving and critical-thinking skills
- Working knowledge of SQL and Microsoft SQL Server
- Solid troubleshooting and communication skills
- Experience using Microsoft Office tools (Excel, Visio)
- Demonstrated analytical and critical thinking abilities
Education and Experience
- Bachelor’s degree in computer science, engineering, or a related field
- One to three years of experience in software development
- Proven experience with OOP languages (Java, C++, VB.NET)
- Familiarity with HTML, JavaScript, CSS, and AJAX
- Direct experience with Agile software development methodologies is a plus
How to Find a Computer Programming Job
Here comes the fun part! The job search phase.
Nobody loves job searches because they’re tedious, painstaking, and involve a lot of selling yourself and rejection, which most people hate.
This is why we’re here to help make the process a bit less stressful!
There are many ways to go about a job search: friends & family, online, job boards, recruiter agencies, etc.
The main focus of this article is to give you tips for finding a job on the Internet, but we also provide some additional offline recommendations.
Below is a list of the top job sites and job boards to look for really any job, including in the tech space:
- LinkedIn – Facebook for careers also has a job board and a comprehensive job search.
- Monster – Not only does it have a job board, but it also contains a plethora of valuable information and tools to get you started on your journey.
- Indeed – A giant job board similar to Monster.
- Career Builder – The name says it all.
- Glassdoor – Our favorite one-stop shop for job-related stats is also (big surprise) a great place to look for a job.
Here is a list of sites more tailored to computer programming jobs:
- Authentic jobs – This job board not only posts jobs exclusively for tech and design, but it also walks the talk by rocking a very nice and user-friendly UI.
- Jobbatical – This is a very interesting one since, as its name implies (sabbatical aka paid leave), it helps you get a job at an international startup for a short period (usually 2-12 months). It’s as if you were going on a paid vacation.
- Stack Overflow – Every coder sees Stack Overflow as the “saved from grace” of programming since it is the #1 place to find the answer to a bug or coding problem. You might be stuck on a problem for days only to find the answer in some obscure message thread deep into the site. Well, this “deus ex machina” also features a job search, and though quite messy, it is still one of the top places to look for a tech-related job.
- Wellfound (Formerly AngelList Talent) – Though AngelList is well-known amongst the startup community for getting stats on startups, it is also a great place to find a job. So if corporate life is not your thing or if you imagine yourself wearing many hats and love the thrill of innovation, this site might be what you’re looking for.
Tech recruiting agencies: They are so lucrative that some tech recruiters make more money than the programmers they place.
They usually work on commission, meaning they will get a percentage of your yearly salary once you’ve been placed.
Thankfully you won’t have to worry about it hurting your salary since they usually take the percentage from the company, so they’ll ask for whatever your salary is plus their commission.
The great thing about them is they save you a lot of time by sending you to the right interviews and negotiating for you (if you thought you hated job searching, wait ‘till to get to this point).
Behold a list of tech recruiter agencies ranging from big to small size:
Remote Computer Programming Jobs
Many sites and recruiting agencies mentioned above also place remote positions, especially after COVID-19. However, let’s look at some sites focused solely on remote and freelance work.
If sunscreen or snow on your laptop screen sounds like an appealing thought, you’re in the right spot.
Job sites to look for remote computer programming jobs:
- Working Nomads
- Weworkremotely
- Remote Tech Jobs
- FlexJobs
- Upwork (Freelance)
- Fiverr (Freelance)
Looking for “computer programming jobs near me?” Some ideas might include:
- Career fairs
- Make a list of companies you’d like to work for and apply directly through their site.
- Utilize your network by reaching out to family, friends, and old colleagues and asking for a referral.
- Follow accounts on social media related to the tech space and be on the lookout for opportunities.
The Recap
You now have the roadmap to dive headfirst and make your dreams come true.
Computer programmers are seen as the quiet geniuses who make the modern world go round. Even a tailor needs a website in today’s world, so whether you decide to go corporate or freelance, you call the shots.
Frequently Asked Questions
Computer programming is akin to high-level software development, where programmers work with older, syntax-heavy languages like C, C++, PHP, Java, and .NET to translate software developers’ designs into language understandable by computers.
Typically, a bachelor’s degree from a four-year university is required for entry-level computer programming jobs. However, in some cases, an associate’s degree may suffice. Specializations may require knowledge of STEM subjects like physics and discrete math.
Relevant majors and topic areas include Information Technology, Computer Architecture, Systems Information, Information Systems Security, Software Engineering, Computer Engineering, and Computer Science.
Entry-level positions typically require a bachelor’s degree in computer science, engineering, or a related field, 1-3 years of software development experience, and proficiency in OOP languages like Java, C++, VB.NET. Skills in HTML, JavaScript, CSS, AJAX, and Agile software development methodologies are also beneficial.