Salary Range
$75,850 - $130,680
Experience
Senior and principal levels
Work Environment
Data center and IT office

What Does a Systems Programmer Do?

If the operating system's involved, systems programmers are too. They ensure the stability of the software underneath every application for developers, operators, and the people who log in each morning. The job is distinguished from application programming in that it deals with operating systems, compilers and system utilities in a data center.

Also known as: Principal Systems Programmer, Senior Systems Programmer

Other Job Titles for This Work

Workers in this occupation report titles such as Analyst Programmer, Application Programmer Analyst, Computer Programmer, Computer Programmer Analyst, Internet Programmer, Java Developer, Programmer, Programmer Analyst.

Systems Programmer Duties and Responsibilities

The primary responsibilities of a systems programmer include:

  • Install and upgrade operating systems such as z/OS, Linux or Windows Server on production machines.
  • Apply vendor patches and security fixes during maintenance windows, then confirm each system restarts cleanly.
  • Tune memory, storage and processor settings when jobs run slowly or fail under load.
  • Write shell, Python or REXX scripts to automate routine system tasks.
  • Maintain compilers, libraries and system utilities that application programmers depend on.
  • Read system dumps and logs to find the cause of crashes and hangs.
  • Maintain job control language (JCL) and scheduling for batch work on the mainframe.
  • Plan capacity with managers by tracking growth in storage, memory and processing use.
  • Document system builds and recovery steps so operators can follow them in the middle of the night.
  • Advise application teams on system calls, performance limits and safe ways to share resources.

Required Skills and Qualifications

To succeed as a systems programmer, you will need the following skills and qualifications:

  • Operating system internals (z/OS, Linux or Unix)
  • Scripting in shell, Python or REXX
  • JCL and batch scheduling on mainframes
  • Performance tuning and capacity planning
  • Reading dumps, traces and system logs
  • Change control discipline
  • Patience for problems that take days to pin down
  • Clear recovery and build documentation

Education and Training

Red Hat and IBM z/OS courses build on a bachelor's degree in computer science, which is the typical entry education for this work. The senior grades usually call for years of server or mainframe experience. Reaching principal systems programmer takes longer still, and the title tends to go to people with deep knowledge of one platform.

Salary and Job Outlook

Typical pay: $75,850 - $130,680 per year, with a median of $100,390.

The range covers the middle half of earners nationwide. Source: U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics, May 2025, Computer Programmers.

BLS projects employment of computer programmers, the wider group that includes systems programmers, to decline about 7 percent from 2025 to 2035, with only about 4,400 openings a year. Jobs in this field often are tied to mainframes and servers that organizations cannot easily replace, but systems programmers will be needed as senior staff retire and as those systems move to newer platforms. Senior systems programmers are a highly specialized group.

Outlook source: U.S. Bureau of Labor Statistics, Employment Projections, 2025 to 2035, Computer programmers.

Systems Programmer Pay Range

Annual pay nationwide, Computer Programmers (BLS, May 2025)
EarnersAnnual pay
Bottom 10% earn less than$57,710
Bottom 25% earn less than$75,850
Median (half earn more, half less)$100,390
Top 25% earn more than$130,680
Top 10% earn more than$160,460

Highest-Paying States for Systems Programmers

The states with the highest median pay for this occupation are Connecticut ($133,820), Massachusetts ($128,390), Washington ($125,620), Maryland ($125,570), Virginia ($121,610). Pay is lowest in Michigan ($65,860), West Virginia ($65,320), South Dakota ($58,240).

Median pay in all 46 states with BLS data
StateMedian annual pay
Alabama$93,800
Alaska$91,700
Arizona$88,990
Arkansas$111,840
California$116,760
Colorado$104,610
Connecticut$133,820
Florida$93,180
Georgia$98,380
Hawaii$118,180
Idaho$89,020
Illinois$72,540
Indiana$97,000
Iowa$79,180
Kansas$92,960
Kentucky$94,850
Maine$101,780
Maryland$125,570
Massachusetts$128,390
Michigan$65,860
Minnesota$107,250
Mississippi$85,120
Missouri$90,420
Montana$89,920
Nebraska$95,150
Nevada$93,600
New Hampshire$74,000
New Jersey$104,940
New Mexico$83,750
New York$103,980
North Carolina$81,070
North Dakota$92,280
Ohio$85,270
Oklahoma$99,780
Oregon$99,540
Pennsylvania$89,180
Rhode Island$96,470
South Carolina$99,740
South Dakota$58,240
Texas$99,330
Utah$104,890
Vermont$89,560
Virginia$121,610
Washington$125,620
West Virginia$65,320
Wyoming$81,640

What the Work Is Like

O*NET surveys people who work as computer programmers about their daily conditions. Of those surveyed:

  • 100% use email every day
  • 94% spend more than half the workday sitting
  • 81% say teamwork is very or extremely important in their job
  • 74% say being exact and accurate is very or extremely important
  • 40% work against deadlines every day

Education Workers Say the Job Needs

Education levelShare of workers
Bachelor's degree88%
Associate's degree9%

Tools and Software Systems Programmers Use

Tools and equipment

  • Computer servers
  • Desktop computers
  • Mainframe computers
  • Mainframe operating systems
  • Serial port cards

Software

  • C#
  • C++
  • Cascading style sheets CSS
  • Extensible markup language XML
  • Git
  • Hypertext markup language HTML
  • JavaScript
  • Linux
  • Microsoft Excel
  • Microsoft Office software
  • Microsoft PowerPoint
  • Microsoft SQL Server

Is This Job a Good Fit for You?

People who do well in this job tend to enjoy organized work with data, records and clear procedures as well as analyzing problems and working with ideas.

Skills O*NET rates most important: Programming, Active Listening, Critical Thinking, Complex Problem Solving, Quality Control Analysis, Reading Comprehension.

Knowledge areas used most: Computers and Electronics, Mathematics, Engineering and Technology, English Language, Customer and Personal Service.

Preparation: O*NET places this occupation in Job Zone 4 of 5, which means considerable preparation.

Related Careers

These jobs use similar skills, according to O*NET's related-occupation data:

Applying for a Systems Programmer Job

The Job Explorer never charges candidates any money. If someone asks you to pay to apply for a systems programmer job or to get hired, treat it as a warning sign.

Sources

This page includes information from the O*NET 30.1 Database by the U.S. Department of Labor, Employment and Training Administration (USDOL/ETA). Used under the CC BY 4.0 license. O*NET® is a trademark of USDOL/ETA. The Job Explorer has modified some of the information; USDOL/ETA has not approved, endorsed or tested these changes.

See how we research and update job descriptions.