Java may be relatively old, but the programming language mainstay can still give developers a leg up on the competition for enterprise jobs.
Despite being more than 20 years old, Java remains an enterprise mainstay: The programming language currently tops the TIOBE Programming Community index, and Java developers saw some of the fastest-growing salaries in the US in 2018, according to Glassdoor.
“Developers built many mission critical systems in Java over the past 20 years, and they are still going strong,” said Forrester vice president and principal analyst Jeff Hammond. “These systems have become so embedded in the fabric of firms’ digital business that there’s little chance of them going away for the foreseeable future.”
Java’s success in the enterprise has created ongoing demand for developers who know it, particularly for backend infrastructure and systems of record, he added.
Some developers have discussed whether or not they should move away from Java because of some of these issues, Little said.
“Like it or not, Java has been around for well over a decade, and has been used very extensively in a lot of environments,” Little said. “If people do decide they want to move to a new language, we’ve seen this before. When Java came on the scene there were lots of good implementations of capabilities in C and C++ and even COBOL. Java was the new shiny thing. It often meant that people spent the next five years debugging new bugs, whereas perhaps they didn’t need to do that if they stayed with what they were working on that was already fairly mature and worked extremely well for them.”
Why developers should prioritize Java
For middle and back end developers, Java is the language to prioritize, Little said. And front end developers also typically know at least some Java because they need to integrate with it at some point, he added.
“Java is a very good workhorse—it’s an excellent general programming language, and it’s extremely mature and reliable,” Little said. “The maturity and reliability are things developers need to understand, and that people who are going to be hiring those developers need to take into account.”)
Java also has so many third-party applications and libraries, particularly in open source, that developers can leverage to build applications. “You don’t have to think about starting from scratch, whereas some new languages are pretty much where Java was back in the ’90s—there’s the language, but if you want to augment the language with utilities, you’re probably going to have to write them yourself to start with because the communities just aren’t there,” Little said. Java has a worldwide developer community of millions of people, he added.
Today’s developers tend to be more multi-lingual than those from 10 years ago, Hammond said. Java should be one of a handful of languages a modern developer knows, especially if they work on back end infrastructure, he added.
One element Forrester analysts are watching is how developers who have dependencies on Java in their applications and products transition to support for OpenJDK in Java 11 and later, Hammond said.
“We see many enterprise shops and independent solution vendors that seem to be unprepared for the end of public, free support for Java 8 by Oracle with Java SE. These shops also seem to be slow to adapt to the new, faster release cadence for Java,” he added. “While faster releases should be good for the language in the long run, it also means that Java shops will need to increase their level of DevOps and test automation to keep up with the latest versions.”