What does the suffix after software engineer/developer job titles mean? (e.g. Software Developer III)
I keep seeing job postings as "Java Software Developer III" or "Software Developer II". Is there any official documentation that classifies these distinctions?
They are not supposed to be employer specific. Actually they come from the United States Bureau of Labor Statistics, which maintains a database of occupational descriptions. This database has a list of standardized job titles with fairly precise definitions for each one. In many professions, including computer programming, they have several bands based on level of expertise, years of experience, and/or management responsibility... these bands are designated with roman numerals, thus, COMPUTER PROGRAMMER I, COMPUTER PROGRAMMER II, etc. etc.
The BLS descriptions are reasonably rigorous and precise so that they can compare apples to apples. A lot of people use these definitions when they want standard job descriptions and titles, including job listing sites, salary comparison engines like salary.com, and many human resource departments, especially at larger companies.
The official definitions of the five levels of programmer are here. It's too long to quote here but it is by no means random or employer-specific.
On the other hand, in the US, you'll generally find that the best places for programmers to work do not generally rely on US government job descriptions but instead create their own, more meaningful system.
Wow. Just wow. They may not be employer-specific on the US, but in Brazil they sure depends on HR will.
Those BLS descriptions for computer programmers and systems analysts appear to have been written in the 1970s and not updated since, as they seem to presume that the only use of computers is for corporate data processing.