Love computers? Programming could be right for you
Though initially a specialized field, computer programmers now work in virtually every industry, and they typically focus on one particular area.
What can you expect from a computer programming job?Computer programmers, also known as coders, design and build tools, apps, and websites for companies and individuals. For example, they might build enterprise reporting software that can aggregate client information, or create websites that let customers place orders online. Though initially a specialized field, computer programmers now work in virtually every industry, though they typically focus on one particular area.
Computer programmers are often responsible for different parts of programming projects, but can be thought of in general as digital architects. Many of the responsibilities of computer programmers overlap with those of software developers and computer scientists; these may include:
- Writing and testing code in multiple programming languages (C++, Java, PHP, etc.).
- Troubleshooting existing problems with websites, software, or apps.
- Creating and launching software or app updates.
- Brainstorming solutions for bugs to improve user experience.
- Meeting with clients to review issues and goals, in person or virtually.
- Learning new programming languages that can be used to create specialized software.
- Tracking project progress and logging issues during the coding and testing processes.
- Teaching peers and clients about computer programming.
- Training new employees or clients to use internal systems.
Work environments for computer programmers vary widely by company, industry, and role. For example, some of the largest technology companies in the world — Google, Facebook, Amazon, etc. — employ thousands of computer programmers at many levels. Their central offices tend to be high-end, with luxuries like catered lunches and other on-site amenities. Of course, there are also many smaller technology firms without these amenities, and many computer programmers work for startups.
Although some computer programmers may enjoy their own offices, technology companies increasingly occupy shared workspaces or implement open office floorplans. Computer programmers who work for companies in other industries are likelier to have private office space. Many computer programmers also work remotely or freelance.
Work hours may vary widely as well: though many programmers work normal hours, others may be expected to work longer hours or even on weekends (since technology issues often need to be resolved immediately). Freelance or remote employees obviously have more flexibility in terms of the hours they work.
EducationThe following bachelor’s degrees can lead to a career in computer programming, though they are not necessarily required since many computer programming skills can be learned independently:
- Computer Science
- Computer Programming
- Web Design and Development
- Computer Development and Analysis
- Information Technology
While a degree in computer programming is the most straightforward path, programmers can also benefit from business or communications classes. Advanced degrees are typically not required, though they may lead to a salary increase or promotion down the line.
Because computer programming is a younger discipline, many employees have been working in their field for less than a decade, and the average age of computer programmers tends to be younger. For the last twenty years, however, computer programmers have been in high demand, and many jobs now require at least rudimentary programming knowledge.
The following skills are required of most computer programmers:
- Programming Languages: programmers usually need to know several languages, including C++, Java, PHP, and others, depending on the field.
- SQL: programmers also need to be familiar with this database management language, often specific to a company or industry.
- Project Management: programmers must know how to track and update projects, often using software tools like JIRA or Trello.
- Communication: without good communication skills, computer programmers may not understand the goals for a project or the expectations of a client. Computer programming is ultimately in the service of other people (users).
- Composure: programmers need to be able to perform under pressure, meeting tight deadlines and resolving issues as soon as possible.
- Attention to Detail: even the smallest error in a code can create to bugs that cause user errors or security risks, so it’s important to be thorough.
- Proactiveness: the best computer programmers can identify problem areas and propose solutions to improve user experience before being told to do so.
The average national salary for computer programmers is around $81,500 annually; however, pay changes significantly based on experience, industry, and company. For example, companies that require coders to know more obscure programming languages tend to pay more, as do those in industries with particular compliance regulations, like medicine. Entry level salaries can start around $40,000, but can grow much higher with experience.
Despite its reputation as a field with high demand, the Bureau of Labor Statistics projects a decline of eight percent for computer programmers between 2014 and 2024, making this field more competitive for those with computer science degrees and coding skills. One of the causes of this is globalization: computer programming can be learned and performed by anyone, anywhere in the world — as such, companies are increasingly outsourcing development projects to countries where salaries are lower. This means that current and prospective programmers need to ensure they have a specialized skillset.
Computer programmers are often promoted to roles like software engineer, software architect, or IT director after they’ve acquired enough experience at a company. They may also become senior programmers, remaining individual contributors with specialized experience. As with all careers, promotion requires additional skills, such as leadership and innovation.
Some computer programmers may also transition to consulting, which involves less hands-on coding and more creative and managerial skills. IT consultants may work for firms or on their own, brainstorming solutions for clients in many industries.
As a computer programmer, you’ll need to be both creative and highly technical; the best coders are imaginative problem solvers with careful attention to detail and a desire to work with and for other people. If you love computers and have the right experience, start searching for jobs as a computer programmer today!
Download our free guide: How to create the perfect resume