Ignoring the sentence that admits they can be the same ("Programmers work closely with software developers, and in some businesses their duties overlap.").
Programmers is like a translator; somebody else came up with what to do and you're doing the mechanical work of converting words into C++.
Programmer as defined here, in my experience, is a job that has never really existed. Sure, they've tried many times to create this divide - going back to the beginning of programming (originally considered secretarial work) - but ultimately programmer is still making many design decisions when typing out code.
May look the same as a worker but if you're a corporation hiring an H1B worker the difference between computer programmer and software developer is a notable difference in the budget bylines.
In older distinctions, there were Systems Developers and Application Developers and Computer Programmers. The distinction largely was around that "Computer Programmers took the specifications from Developers and implemented them."
It feels like the intent was that "Programmers" were the ones doing the routine / lower skill tasks while the Developers were the ones that did the specification and architecture.
Those got juggled around and largely people getting listed as "Computer Programmer" is going down as the company relists them as Software Developer.
This is also part of the confusion of "Web Developer" which is also in there.
It reflects what government thought management thought title and roles were some years ago.
15-1132 Software Developers, Applications
Develop, create, and modify general computer applications software or specialized utility programs. Analyze user needs and develop software solutions. Design software or customize software for client use with the aim of optimizing operational efficiency. May analyze and design databases within an application area, working individually or coordinating database development as part of a team. May supervise computer programmers.
15-1133 Software Developers, Systems Software
Research, design, develop, and test operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific, and general computing applications. Set operational specifications and formulate and analyze software requirements. May design embedded systems software. Apply principles and techniques of computer science, engineering, and mathematical analysis.
15-1131 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.
Note that the specifying part of it isn't done by the programmers but the other roles.
15-1134 Web Developers
Design, create, and modify Web sites. Analyze user needs to implement Web site content, graphics, performance, and capacity. May integrate Web sites with other computer applications. May convert written, graphic, audio, and video components to compatible Web formats by using software designed to facilitate the creation of Web and multimedia content. Excludes "Multimedia Artists and Animators" (27-1014).
Ignoring the sentence that admits they can be the same ("Programmers work closely with software developers, and in some businesses their duties overlap.").
Programmers is like a translator; somebody else came up with what to do and you're doing the mechanical work of converting words into C++.
Developer involves coming up with what to do.
Hence programmers is a lower paid position.
Programmer as defined here, in my experience, is a job that has never really existed. Sure, they've tried many times to create this divide - going back to the beginning of programming (originally considered secretarial work) - but ultimately programmer is still making many design decisions when typing out code.
Your interpretation seems like apophenia to me.
There's no functional difference between a 'software developer' and a 'programmer'. they're just synonyms that sometime pay differently.
May look the same as a worker but if you're a corporation hiring an H1B worker the difference between computer programmer and software developer is a notable difference in the budget bylines.
In older distinctions, there were Systems Developers and Application Developers and Computer Programmers. The distinction largely was around that "Computer Programmers took the specifications from Developers and implemented them."
It feels like the intent was that "Programmers" were the ones doing the routine / lower skill tasks while the Developers were the ones that did the specification and architecture.
Those got juggled around and largely people getting listed as "Computer Programmer" is going down as the company relists them as Software Developer.
This is also part of the confusion of "Web Developer" which is also in there.
It reflects what government thought management thought title and roles were some years ago.
---
Edit: From days of old: https://web.archive.org/web/20110616142157/https://www.bls.g...
https://web.archive.org/web/20110531043521/http://www.bls.go... https://web.archive.org/web/20110925005933/http://www.bls.go... Note that the specifying part of it isn't done by the programmers but the other roles.... And for completness
https://web.archive.org/web/20130624010204/http://www.bls.go...