Is a Java still demand in 2025
Posted by Big-Advertising1019@reddit | learnprogramming | View on Reddit | 238 comments
Hi, guys
I wanna be a backend developer and thought about Java to learn because it is more stable and secure, etc...
But some opinions say that Java is dying and not able to compete with C# or NodeJS (I know NodeJS serves in small-scale projects), but I mean it is not updated like them.
On the other hand, when I search on platforms like LinkedIn, or indeed, they require 5+ years of experience, for example, and no more chance for another juniors
sandeep_k_n@reddit
Java is certainly in demand and will be in demand for quite long. Today a lot of systems are powered by Java due to its rich libraries and portability. Although its not as fast as C, C++ or go, it has its own use cases where it does very well.
Some ever growing projects are Android, some of the largest enterprise systems for middleware, APIs and backend systems are implemented in java and continue to be enhanced.
That said, there are some cases where other programming languages suit better and are used such as Python for data analysis/ML, golang for devops related tools (Kubernetes) and so on.
Synergisticit10@reddit
Java is in demand and will be in demand not only in 2025 but even in 2035. C# is far away and has less jobs. In Europe C# is there .
However you need a lot of frameworks etc only Java is not enough to get hired.
ReferenceWeak8144@reddit
what is the most in use lang in EU? i hear that alot of java devs are switch or forced to switch to Go, and they said Go is similar snd better thats why its better to become Go dev
IamSaif_Sd@reddit
a lot of other frameworks. Like? So if you want to code backend in java and spring boot. You'll be required to code in other frameworks?
PresentationLess6537@reddit
absolutely yes
anyone who says otherwise doesn't know how to use java
end of the story
Jooyeonseo@reddit
If you become(or dream) full stack developer, all problem is solved đ
trashplanetearth@reddit
I want to start project building in java. Should i start with javafx or skip javafx and directly go to springboot(i know swing).
IamSaif_Sd@reddit
Javafx is for Desktop applications. Spring boot is framework primarily for backend web development
gautam-57@reddit
You've got some valid concerns about choosing a backend language. It's easy to get confused with all the different opinions out there.
Java isn't dyingâit's evolving.
Java isn't dying; it's a stable and powerful language that's the backbone of huge enterprise systems in finance, healthcare, and more. While languages like C# and Node.js are popular, Java keeps up with modern development through frameworks like Spring Boot, making it great for building scalable, cloud-native apps. It's a reliable choice with a massive ecosystem.
The junior job market is challenging, but not hopeless.
Seeing those 5+ years of experience requirements is tough, but it doesn't mean there are no junior jobs. Companies want to hire people who can contribute quickly. Your goal is to show you can do that by building a strong portfolio of personal projects, contributing to open-source, and getting certifications. Don't be discouraged by senior-level postings. With persistence and a solid portfolio, you'll find opportunities
IamSaif_Sd@reddit
Getting certifications.. with no money because no job đ
Due-Anxiety4776@reddit
Java is definitely still in demand in 2025.
Itâs true that newer languages/frameworks like Node.js and C# are getting hype, but Java remains the backbone for enterprise-level applications, banking, fintech, insurance, large-scale e-commerce, and Android backend systems.
A few points to clear the confusion:
So no, Java is not dying. Itâs still one of the top backend choices, especially for jobs that want stability, scalability, and security.
if you want to learn Java in 2025 in easy and fun way follow this series : https://youtube.com/playlist?list=PLF17muTMPBBMSnWj94lENUmMXjRM5Dqy8&si=i7dlpVEvttZXQf73
Main-Evidence9067@reddit
Java nĂŁo tĂĄ morto nĂŁo, longe disso. đ
Na real, em 2025 ele continua super forte, principalmente no mercado corporativo (bancos, fintechs, seguros, grandes empresas em geral). Esses caras tĂȘm sistemas enormes, crĂticos, que precisam de estabilidade, performance e segurança â e Java Ă© perfeito pra isso.
Claro que frameworks e linguagens mais âmoderninhasâ como Node, Go ou atĂ© C# ganham espaço em startups, projetos menores ou em times que priorizam velocidade de entrega. Mas Java ainda recebe atualização constante (o ciclo agora Ă© a cada 6 meses com novas versĂ”es), tem um ecossistema gigante (Spring Boot, Quarkus, Micronaut, etc.), roda em nuvem sem dor de cabeça e continua sendo ensinado em faculdades.
Sobre vagas: o mercado pra jĂșnior realmente tĂĄ mais puxado, nĂŁo sĂł pra Java. As empresas pedem â5 anos de experiĂȘnciaâ atĂ© pra coisa simples, mas Ă© mais filtro do que realidade. Se vocĂȘ construir portfĂłlio, contribuir em projetos open source, mostrar que sabe do bĂĄsico (Java, Spring, APIs, banco, testes), dĂĄ pra entrar sim.
Resumindo: se teu objetivo Ă© backend em empresas grandes, Java ainda Ă© uma baita aposta. NĂŁo Ă© hype, mas Ă© sĂłlido, estĂĄvel e ainda garante muita vaga boa.
shreddit512@reddit
Does chromium/ vanadium use java? How to pick up the code though
urugav@reddit
yes x3
Available_Strain9809@reddit
wow
Available_Strain9809@reddit
wowww
Available_Strain9809@reddit
yes ofc
aparnaphoebe@reddit
Even if computers go away Java developer job would still existđ€Ł
Unique_Martians@reddit
Yes I also lern java it have no end
Alarming_Syrup6064@reddit
Java will help you in long run ig
pancoder@reddit
as a javaer, i wanna tell you, java is dying
UsedCommunication408@reddit
HR just habitually writes in job postings that experienced developers are needed. Actually, they all do.
uiuxarghya@reddit
I actually built Javaistic â itâs an open-source site focused on learning Java.
Still a work in progress, but feel free to check it out if you're exploring Java!
AgitatedVersion4488@reddit
hola a todos, en mi opinion java es un lenguaje que siempre va a ser necesario, es portable o sea que funciona en diferentes sistemas operativos. Es un lenguaje orientado a objetos que permite trabajar en equipo ademas de poder encontrar clases creadas y verificadas por otros programadores. Si no les molesta les dejo un link a mi pagina, seria de gran ayuda para mi que participen, saludo grande a todos.
https://programacion365.com/java/
chandanbamba@reddit
Yes I got 3 opportunities as a fresher just by doing Java
Environmental_Pay_60@reddit
I like java and I'm happy we still use it at my work
Sad-Clue-4079@reddit
I'm a java learner can you help me with a part
Environmental_Pay_60@reddit
What's a part?
Sad-Clue-4079@reddit
Yeah actually it's just the basic stuff arguments and parameters like i get the concept but idk how to use them it's just confusing like while making methods idk how to put them...how can i DM you to give exact query
Environmental_Pay_60@reddit
I kindly pass.
I wish you the best of luck.
CyberWank2077@reddit
first step: denial
requef@reddit
more like last step: acceptance
RabbitResponsible252@reddit
Yes
emaphis@reddit
Yes.
Dr-Huricane@reddit
Unfortunately
AlSweigart@reddit
"There are two kinds of programming languages: the ones people complain about and the ones that nobody use."
nsh07@reddit
Kotlin users rarely complain though
spaaarky21@reddit
I do! I love aspects of it, like null safety baked into the syntax, but find that it opens the floodgates for some of the most convoluted code I've seen in my \~20 year career.
EducationalZombie538@reddit
what's a kotlin?
TimeTick-TicksAway@reddit
Kotlin is getting much better, Intellij is starting to officially add kotlin support to other editors!
satoryvape@reddit
Kotlin fanboys are happy with fake null safety. You still able to get NPE in Kotlin
nsh07@reddit
Can you give an example? The only time I've encountered NPE in Kotlin is while calling Java functions, I've never encountered a native Kotlin NPE
satoryvape@reddit
You have a library in Java that has something like and not marked nullable
public Item getItem()
You call Java code from Kotlin and IDE thinks that everything is okay and null is not possible and once in blue moon you see on Crashlytics or anywhere where you store logs KotlinNullPointerException
nsh07@reddit
That isn't Kotlin's fault that Java isn't null safe. As I said, native Kotlin NPEs do not exist, it's only while using Java interop that you encounter that.
da_Aresinger@reddit
People complaining about Java is so unbelievably stupid to me.
I get that it's annoyingly verbose and lacks certain freedoms (no direct memory access sucks arse)
But all the "mimimi OOP" bitching is so pointless. You don't even **have to** abide by OOP to use Java.
And the way Java works makes it *the most platform independen language* in existence. (I guess other JVM languages like Kotlin and Scala also count)
On top of that Java is a C-style language, so everybody can understand it very quickly.
Those are two extremely valuable traits. That's what Java is good for. Nobody expects Java to rival the C family in performance.
EducationalZombie538@reddit
The people who complain about it being verbose are un-ironically Typescript users. Which is mad to me.
AlSweigart@reddit
Yeah. The whole "Python is slow" thing is annoying because of how misleading it is, but also because "Java is slow" was a whole thing too back in the 90s.
Wonderful-Habit-139@reddit
It still has issues with the type system, exceptions, and nullability. And the fact that some people are not able to work on the latest versions of Java.
whattteva@reddit
These days, Java performance can be almost as good. They've really done a great job to the JVM over the years.
Dr-Huricane@reddit
Bingo
stubbornKratos@reddit
Why would that be unfortunate?
Remote_Associate_557@reddit
Java
witness_smile@reddit
Stick to slow as shit NodeJS and its 5029279 node_modules then
Remote_Associate_557@reddit
Even worse, python.
Hawxe@reddit
I assume this subreddit is mostly students hence the shit opinions around but I feel like Python is objectively a fun language to code in
Wonderful-Habit-139@reddit
I work in Python now and as a low level systems programmer that liked programming in C, Rust and TypeScript (great type system in the last two languages), I've actually had a great time working in Python. The type system is great, the build system is improving and there are cool new features like pattern matching.
Fit_Smoke8080@reddit
Tooling can be miserable though. It took huge leaps with Poetry + Pyenv at least.
Remote_Associate_557@reddit
Tbh as a student ,it's my favourite. Easy and clean. I do miss i++ tho.
BlazingFire007@reddit
Iâll take modern Java over JS for a backend (I say this as a JS-centric developer)
But I think itâs fair to say old Java was pretty rough.
WorriedGiraffe2793@reddit
What framework do you use for backend?
grantrules@reddit
The switch from Java 1.4 to 5 was amazing.
pkat_plurtrain@reddit
Java
onceunpopularideas@reddit
Once you work with something more modern it just sucks.Â
chhuang@reddit
memes. But I kinda understand as Java dev. If you started out Python, Java is way too verbose, and had to take enough time to understand abstraction.
In the other hand, it's fairly easy to maintain a large Java project than a large JS (not TS) or Python project in my experience.
JanitorOPplznerf@reddit
(In my limited experience) Java is a nightmarish hellscape of package management, bloated dependencies, & obscure error messaging.
Even the version control in Java is a bit nutty as they have so many Java versions out in the wild itâs not always clear which libraries work with which version seamlessly.
The main benefit was âwrite once deploy anywhereâ which is appealing for global companiesâ. But now that Docker & other systems do similar things, many people wish we could leave Java and itâs frustations in the past. Given itâs speed and widespread adoption by big companies I doubt that will happen anytime soon.
wbrd@reddit
The only problem is that it's still by far the best, when compared to other languages like Python and JS. Maven is a huge pain, but it's worlds better than pip or whatever nonsense Node uses. I blame Node for popularizing :latest as a version.
Wynardtage@reddit
IMHO, as someone who writes enterprise backend software for a living, Java is an S tier language.
Rahulkaman@reddit
Well I am a newbie to programming Shall I start with java if yes then from where should I learn it?
Bladelink@reddit
I've always thought that Java makes Python look like an amateur language.
peripateticman2026@reddit
That's more to do with static vs dynamic typing though, I'd posit.
EarhackerWasBanned@reddit
Iâd agree and I think the popular languages right now (TypeScript, Rust, GoâŠ) are popular because they each use just enough strong typing to give us things like editor hints and compilation-time safety, but donât force us to type every little thing like Java, nor abandon types completely like Python.
tobias_k_42@reddit
Type hints in Python exist. They're just optional.
EarhackerWasBanned@reddit
Sure but theyâre equally optional in JavaScript (without TypeScript), Ruby, Lua⊠any other current dynamically typed language you can think of.
Ulrich_de_Vries@reddit
They are not optional in JavaScript, but absent completely. A Python codebase with type annotations and a static type checker (mypy, pyright etc) is essentially equivalent with Typescript.
Typescript 's transpiler also has various strictness levels that allow for gradual typing.
Just like Python with type annotations.
EarhackerWasBanned@reddit
Iâm not talking about TypeScript.
JSDoc types are recognised by most editors, ESLint will warn you if theyâre used incorrectly, and Webpack and Babel can be configured to recognise them.
Flow is a static type checker for JS. Itâs the Betamax to TypeScriptâs VHS (or HD DVD to Blu-Ray for the kids) and no one uses it anymore, but unlike TS itâs not a separate language that compiles to JavaScript, itâs just JavaScript with types.
Then there are lots of other code-level type checks that we ditched for TypeScript, stuff like early versions of Zod or React PropTypes (modern Zod works awesome with TS, PropTypes is dead).
balefrost@reddit
Given that Java's a compiled language with a static type system, and has a reasonably sophisticated generics system with co- and contravariant constraints... what kinds of runtime type errors are you getting?
EarhackerWasBanned@reddit
Itâs been a while since I touched Java, but array size errors, and null pointer errors stick in my head.
balefrost@reddit
Null pointer errors are definitely an issue, though there are annotations that you can use (along with IDE support) to make them less likely to occur. IIRC Go has the same issue. TypeScript has good support for nullable types, but you do occasionally need non-null assertions which means you can still end up with runtime NPEs.
Array out-of-bounds errors will exist in most languages - certainly they exist in Go, not sure about Rust. Unless the type system lets you express a constraint like "this function parameter must be an array with size >= 5", and there's a way for the caller to prove (at runtime) that the constraint is satisfied, out-of-bounds array runtime errors are just a fact of life. At least Java throws a recoverable exception rather than, say, silently overwriting some other object's data or corrupting your stack.
Prince_John@reddit
People ignore the development pickup since Java 11 too. The virtual threads in Java 21 are looking really nice.
JanitorOPplznerf@reddit
I mean thatâs itâs big use case. Big, scalable, enterprise software at big corporate companies.
That doesnât make it less frustrating to get into. It just means your job paid you for the frustrations of learning java.
witness_smile@reddit
Which language is not a hellscape of dependencies?
I worked on big projects with both Java and NodeJS, and NodeJS is infinitely worse in that regard.
Also not sure what you mean with obscure error messages, I always found Javaâs exception messages to be quite reasonable, the stack traces, which may seem long and overwhelming at first, tell you exactly which paths of your code were traversed before reaching the exception. Comparing with NodeJS (sorry), where 90% of the time it will end up showing some anonymous function call in the stack trace which doesnât help at all.
socratic_weeb@reddit
Lol skill issue
JanitorOPplznerf@reddit
Probably
socratic_weeb@reddit
Dependencies: Java has Maven and Gradle, why would dependency management be a problem?
Bloat: the Java libraries that ship with the JVM contain almost everything you need. For stuff like Spring you can only include specific modules within your dependencies, and there are lighter alternatives like Quarkus.
Obscure error messaging: not sure what you mean. I usually can know the exact chain of calls leading up to the offending line number in the offending class, with a clear exception (Java has a set of standard exceptions like NullPointerException, and IllegalStateException whose meaning everyone knows) and message. It also allows for patterns like exception translation and chaining. Exceptions can also have methods because they are just classes, a feature you can use to provide more information about an error.
Version control: made super easy with tools like sdkman.
I mean, Java has its problems, like any other language. But these ain't them. And I think both Java and the JVM get better and better each year. The bad rep is undeserved IMO.
peripateticman2026@reddit
Well, you also get the benefit of getting NPEs instead of your host machine crashing and being exploited.
ProbsNotManBearPig@reddit
None of that is Java specific lmao. JavaScript and Python have super bloated dependencies. JavaScript, c, c#, and c++ all have super obscure errors messages. C++ language version is also a nightmare, particularly with binary interfaces. Idk what other language alternatives are commonly considered for apps you might replace Java apps with.
All those problems plague every language though because those problems are just complex - error messages, versioning/compatibility of the language, and dependency management are just inherently complex. They seem more complex when youâre new to a language.
JanitorOPplznerf@reddit
Youâre probably right.
EIGRP_OH@reddit
Yeah Iâve used Java on 3 projects now and the most annoying part is the dependencies from the syntax itself itâs very verbose but with things like lombok and jackson that make it much more tolerable
Responsible-Cold-627@reddit
Because Java.
FrenchCanadaIsWorst@reddit
Fortunately*
emaphis@reddit
My take too.
C4ptainR3dbeard@reddit
Stuck below Java 11 because nobody wants to bite the bullet on a refactor to ditch a bunch of testing libraries that rely on reflection? Unfortunate.
On java 21+? Fortunate.
NatoBoram@reddit
Sadly
HomoColossusHumbled@reddit
I'm getting paid to write in Java today.
thenowherepark@reddit
I'm getting paid to write in PHP today. It died before I was born.
CyberWank2077@reddit
are you dying though?
HomoColossusHumbled@reddit
Nope, I actually enjoy using Java. I've been using it for years and feel pretty adept at it.
The frustrating part of my job isn't language being used but the emergent problems that occur due to the complexity of the overall system I'm working on.
_SpeedyX@reddit
As an avid Java hater: yes, and it'll be that way for a long time. Even if there's relatively less new stuff created using it - there's enough already written that updating, expanding, bugfixing (etc.) it will last you a lifetime. There'll be great demand for Java devs for decades. And even when companies(for some reason) start to migrate their code to other languages, they'll still need Java devs to do that.
And most importantly - if you like it, go for it. Switching languages is easier than you think.
Actual-Run-2469@reddit
Whatâs your reasons to hate java?
_SpeedyX@reddit
Hey, we don't mention the r-word here. Hating Java is a duty, not something you think your way into.
But really, I just don't like it. Kinda like you may not like how a certain car drives or how a specific piano model sounds. If I had to say why, I'd say Java the platform made it so annoying to use, I still have PTSD from it. The language itself is alright, basically like any other high-level OOP language, although I still prefer C(++) or Python, depending on the needs.
funny_funny_business@reddit
At Amazon a majority of the codebase is Java; it's always going to be used there. Even if "java is dying" there are other languages that use the JVM (and they can import java packages) so being familiar with Java is helpful.
The most important thing is to learn something well and understand OO well. Once you do that moving to another language is trivial if you know the overall ideas.
stmfunk@reddit
Not even necessarily know OO well. Great careers in COBOL, FORTRAN and C to be had. But I mean you really should know your OO either way it's stupid not to
AffectionatePlane598@reddit
yea not learning oo is just stupid in the modern day because even though it sucks and just takes more time to do things with (in my opinion) you wont get anywhere without itÂ
Ran4@reddit
Nonsense. Plenty of systems are written with comparatively little OOP.
AffectionatePlane598@reddit
he is talking about java OOP is a staple for programming and while I agree that it isnt needed for every thing it definitely has its place and java highlights that. java, c++, and common lisp are the langs that i see it being used most and that is because these langs have very âtunedâ OOP support and can make some tasks a lot easier.
ImpulsiveBloop@reddit
When you say OO, are you meaning object-orientated languages?
stmfunk@reddit
Not object oriented languages just object orientation in general
BasketbaIIa@reddit
I agree with the first point. I would quickly jump from Java to Kotlin if I worked more in JVM.
For the second point, Java devs overusing the strict Java-8 OO mindset in typescript is a common topic people complain discuss.
Subtl3ty7@reddit
It will still be in demand even after everyone who comments on this thread pass away lol. Itâs an enterprise language.
parkjas@reddit
Check the job listings in your area. Where I live, enterprise orgs use Java and government uses C#.
sarnobat@reddit
Yes locality matters. I moved from silicon valley to Boston and am amazed how much c# is in demand compared to java
Big-Advertising1019@reddit (OP)
So it based on location!!?, I from cairo ,Egypt
And alot of jops need #c compared to java . Companies want a lava dragon to work with java Is it the issue?
sarnobat@reddit
I'm not sure outside silicon valley. I've never looked for jobs apart from there and North East USA
Klutzy-Resident-6538@reddit
Yes Spring boot is very much in demand.
TopOne6678@reddit
Surely in demand, imo significantly more than C# and Node
Zem_Duran11@reddit
Does learning java in a week from the scratch to become a power coder is impossible??
brazucadomundo@reddit
Java is the COBOL of the 21st century, it won't go away anytime soon.
Technical-Pension594@reddit
The whole netflix architecture runs on java, and there are so many companies who rely on it.
alienith@reddit
People have been saying âjava is dyingâ for years. Itâs still probably the most popular backend language and will continue to be popular.
That being said, if you see no java jobs but see a lot of C# jobs, your area might just have more C# jobs. But iâd guess there arenât a lot of junior positions to begin with.
pkat_plurtrain@reddit
Think it's dying more or less than SQL is? đ
AffectionatePlane598@reddit
people have been saying that sinca java came out and it still only grows
ZelphirKalt@reddit
Nah, there are plenty of Java jobs around.
je386@reddit
In the last years, every time we had to decide what to use for the backend, the decision was kotlin instead of java. Both are JVM languages and kotlin seems to be "java as it should be", cutting away historic things, making it less verbose and adding null-safety.
But its still a good idea to leran java first and the kotlin.
By the way, you can use Java and Kotlin alongside in the same project
Tacos314@reddit
I kind of want to learn Kotlin but I just don't see the benefit, I would need to get the project changed to use it, train the developers, and then everything that goes wrong is going to be my fault because I wanted to use Kotlin.
balefrost@reddit
I also prefer Kotlin to Java, but I think Java is a better language than popular opinion would make you think, and Oracle has been working to grow and modernize the language over the past half decade or so.
je386@reddit
I alos heard that they modernized java, but ...
.. then there still is all that old stuff you simply don't need anymore.
balefrost@reddit
What old stuff?
je386@reddit
The several obsolete UI frameworks, for example
balefrost@reddit
I mean, the JRE ships with two - Swing and AWT. Swing isn't obsolete, and it's built on top of AWT, so AWT remains necessary.
je386@reddit
Swing is still oldfashioned. I would never choose Swing if I can use Jetpack Compose.
balefrost@reddit
There's a difference between "old-fashioned" and "obsolete". I haven't used Compose, but it is pretty well regarded, so that seems like a fine choice.
I'd hate for the JRE to drop Swing and suddenly a bunch of applications stop working. IIRC IntelliJ uses Swing, for example.
je386@reddit
True. You have a point here.
Yes, that would be a bad thing.
Still, I like Kotlin because its versatile, but not as verbose as java is.
And I can use kotlin together with java in a backend, but also in an android app and with kotlin multiplatform even can create websites, as well as iOS Apps and JVM Programs.
Anyway, propaby both Java and Kotlin have their fields and will continue to be used. A JVM world without Java seems odd.
balefrost@reddit
Yeah, Kotlin's my preferred language too. I had previously been interested in Scala, but I feel like Kotlin is a more pragmatic language.
But I think Java's fine. I think it has developed a reputation by people who have never used it that doesn't really match reality.
MusingSkeptic@reddit
Love Kotlin, and the true null-safety is a killer feature for me - none of this Optional stuff you get in Java which I see misused so frequently đ
That said, Java has been slowly incorporating features which used to be unique to Kotlin. It's still lagging some way behind - but I don't think (unfortunately) Kotlin will ever reach that critical mass needed to overthrow Java as the de facto JVM language (in much the same way that Scala hasn't). The relative popularity of the true "heavyweight" languages like Java, C# and Python creates a huge obstacle for other languages to overcome - the relative size of the recruitment pool from which you can hire developers produces an "incumbency bias".
Abhinav1217@reddit
So many misconceptions...
The short answer is Java is so mature language that it will never die.
It only feels like Java doesn't update frequently, because language is stable. The ecosystem is the one that is moving. They do release new version every year, mostly focused on Jvm optimisation, or adding new high level features that will be used by a few niche cases. Join the jetbrains newsletter and see how fast the java ecosystem is moving.
Node is not for small scale projects. I have worked on few very large scale node project, despite how hard they are to maintain. Ironically the project I am thinking about, was maintained with java like coding guidelines inside the company, not nodejs's default guidelines.
On LinkedIn, HRs are posting for experienced people or for interns, its not good place to look for junior position job, however it still can be found if you adjust appropriate filters. But before accepting any offer, be sure to investigate it properly, I have seen to many kids been tricked into bad companies.
If you are fresher, learning java (or even C#) means learning fundamentals of OOPs like programming concepts. Here in India, java students will be preferred irrespective of which language the company is using internally. But if some students are only mentioning php or node in their cv, then they are only relevant to the companies which are using those platform.
adwivedii@reddit
Still the Most popular backend language. Most old big systems/companies have been made on these, and they rarely/canât change now. React/Angular + Java is in so high demand.
AlSweigart@reddit
The TIOBE Index puts Java as the fourth most popular programming language, above C# and JavaScript.
These numbers should always be taken with a large grain of salt but, no, Java is not "dying".
balefrost@reddit
Tiobe's methodology means that its results are not at all accurate.
The Stack Overflow and Jetbrains surveys at least poll actual developers rather than count search results. One could argue that the JetBrains survey might be biased towards Java devs, but it seems mostly in line with the SO results.
wggn@reddit
you linked the same survey twice
balefrost@reddit
Whoops, fixed. Thanks for pointing that out.
My point was not "TIOBE's relative position for one particular language is incorrect". My point is "TIOBE is not a good resource for understanding language popularity". A broken clock is still correct twice a day.
TIOBE might make you think that Java is 1/3 as popular as Python, and thus would be a bad choice to pursue. In practice, they're much closer in overall adoption, and (in my experience) Python and Java end up being used for different purposes.
Conscious-Secret-775@reddit
They seem roughly in line with other surveys, at list for the top 5 to 10 languages.
balefrost@reddit
According to TIOBE, Python is the most popular language by a large margin - 2.5x as popular as C++, its second-most popular language, and like 8x more popular than JavaScript
According to both SO and JetBrains, JavaScript is more popular. Not by a large margin, but it paints a very different picture. C++, meanwhile, is much further down on the list.
Use TIOBE if you want, but realize that it doesn't measure what it purports to measure. The other surveys are more grounded in reality.
Conscious-Secret-775@reddit
So what, the important point is that Python, Javascript, C++ and Java are all very popular and widely used languages.
TimelyCard9057@reddit
OP asked if Java is dying, not if Java is popular. And on TIOBE (for example) you can see constantly decreasing chart for Java
SharkSymphony@reddit
OP is concerned about Java was dying, but what they initially asked was if Java was in demand. The baseline answer to that is yes.
randbytes@reddit
Java has not been marketed properly in recent years unlike some other languages and it has also lost some of its appeal with the rise of ML/data science.
amin_dhou@reddit
A lot of the most critical applications that we use day to day are built using Java. Itâs insanely hard to migrate off an existing language to another with software that was maintain with Java for ~20 years.
So no there will always be demand for Java. People have to keep these systems updated and maintained.
tech_jobs_nerd@reddit
Absolutely. It is the 3rd most popular tech skill today! And usually pays about $12k more than market average. NodeJS is the 20th most popular skill and C# is the 15th.
These stats are based off a site that scrapes 10,000 tech jobs a week, so it is fairly up to date. Hope that helps!
StarGrazer09@reddit
My org extensively uses Java Springboot so there's that
PotentialBat34@reddit
Some opinions? Of whom?
Java is probably the most on-demand language in the industry right now. It is as performant as C# (and Go) and the ecosystem smokes NodeJS with ease. I get that it is cool to hate Java, but it dominates the industry atm, and it is unlikely to change soon.
kknow@reddit
It's just as cool to hate C#. Devs just like to hate. The only "cool" things are languages that are rarely used in enterprise.
Just learn Java or C# combined with architectural stuff and more general stuff and you're set for many years to come.
CyberWank2077@reddit
which is funny because once they do start being used in enterprise they stop being cool and start being hated. Golang used to be the coolest thing in the world, transitioned into being a "cult langugage", and now its transitioning into the "used but hated" language.
Yeah-Its-Me-777@reddit
Well, yeah, but C# deserves it. Because they put the paranthesis on a new line. /s
But for real, with both languages you're pretty set.
Additional-Will4976@reddit
Yes it is.
cloutdoingbiz@reddit
One of my colleagues had a saying. Java is like your good olâ wife, she might not be as hot as your young coworker but you still go back to her everytime.
CyberWank2077@reddit
Java has been the most used and loved language for like 20 years straight. It then made a quick transition into the most used and hated language.
This created a huge pool of big established projects being written in Java, big companies that will use nothing but Java, but also a huge pool of Java devs that know nothing else.
So, there are a lot of job postings for java devs, but also a lot of competition and a lot of experienced devs. new projects tend to go with newer languages, but still may choose Java due to a variety of reasons.
Its the eternal question - should you go where there are a lot of jobs but also a lot of competition, or where there arent many jobs but also less competition?
Almost everyone right now are looking for experienced devs both because there is less demand so you can filter more and AIs are making it harder to test how actually competent a junior dev is. Also, backend developement is a very big domain with a lot of competition regardless of the language.
pick your strategy basically. Perhaps go with the "generic" java path, struggle to get your first job. Take any job you can get. Try to accumulate 2 years of real experience. Once you do finding new jobs should be significantly easier (even those 5+ years postings will take you if you present yourself correctly).
or alternatively, pick a less used language that is "new and shiny" but still established (Go, Kotlin...). There are less job postings but the ones that do tend to demand less experience (verify that first). Also new open source projects will usually use new languages and you can gain experience by becoming a contributor. This is true for all languages, but i feel like newer ones have more actively developed foss projects.
Or go with a path that will allow you to also get other jobs from which you can transition to what you want. Maybe go with NodeJS, learn both backend and frontend, try to get any job that is front/backend/full stack/automation/react native, gain experience, and then with experience you will have an easier time finding a job in a domain you like more. Similar path could be with Python which is often used for automation, backend, machine learning and even frontend through libraries.
the point is - getting your first foothold in the market is the hardest part. strategize around getting that. Afterwards you will know better what you like and how to get it, and arrive at interviews from a more favorable position where you have some proven experience.
onceunpopularideas@reddit
I think Java is fine. You wonât find a lot of entry level coding jobs anywhere. Donât let that discourage you. You only need 1 job. Anyhow I wouldnât base decisions on industry trends. Those are generalizations. You are not.Â
enflame99@reddit
People like to shit on java but it is the most it's so reliable and it's levels of abstraction is just right. That and concurrent threads and the new types they are gonna bring out are so so cool.
shifty_lifty_doodah@reddit
Critical thinking is in demand
sarnobat@reddit
Politicking required where I've been
Epiq122@reddit
Yes and itâs never going away, despite what the YouTube coders tell you they have no clue how the real world works
lolovoz@reddit
Even if Java hadnât been one of the most popular and reliable languages all along (which it has), it would still be worth learning because so many of its concepts are implemented in a way that mostly makes sense. Much more so than in JavaScript, at least.
ThatCrankyGuy@reddit
Java powers the web. Simple as that.
Infrastructure is C/C++/Rust, but boy is application land cornered hard by Spring and Java
emergent-emergency@reddit
Yes
LetPrize8048@reddit
Javaâs far from deadâitâs a powerhouse. It runs on over 60 billion JVMs worldwide, powering enterprise backends (Spring Boot), Android apps, and critical systems in finance and healthcare. JDK updates (records, pattern matching) keep it cutting-edge. Job boards are flooded with Java roles, and its vast ecosystem and community ensure itâs not going anywhere.
TimelyCard9057@reddit
How do you know that "NodeJS serves for small projects"? What is a small project for you?
ImScaredofCats@reddit
I visited the offices of a huge car selling company yesterday to see my programming students who are interning there and their entire backend is Java still.
blackhawk9x@reddit
If you are good in it , itâs in demand .
MilesYoungblood@reddit
Yes
Revolutionary__br@reddit
Yes Java and C will outlive us all
I mean, FORTRAN is from 1957 and NASA(and some math intensive libraries) still uses it
calisthenics_bEAst21@reddit
It's the best
CountyExotic@reddit
Yes it is relevant. If youâre worried about the future, itâs not node and C#. Itâs rust and go.
tvmaly@reddit
It is heavily used in tech and finance. There are millions of lines that need to be maintained
sovietostrich@reddit
I've worked as a java engineer the last 5 years or so, its very much still in demand and there's good pay for it
MoonQube@reddit
look up java, as a requirement on glass door and see for yourself ? (if your local area/country doesnt use glass door very much, check some other common job posting site)
but the answer i: probably yes
companies dont just randomly switch off java, and so if you're using java why recode your whole system?
Sevrdhed@reddit
Plenty of places are using Java for millions of applications. Also if you learn Java, transitioning into C# will be very easy
sbstanpld@reddit
*1 billion
Sevrdhed@reddit
Well teeeeeechnically 3 billion is comprised of many millions..... đ
Nah you right though. It's everywhereÂ
96dpi@reddit
I think they're making a joke about how the old Java installer used to say something about 3 billion apps.
https://share.google/04U6FHeEWBdE02fKc
Original-Bhujia@reddit
Hey, what should be the order in learning languages? Coz in college theyâre going to start with C/C++, whatâs ur take for a beginner?
Radinax@reddit
Focus on the concepts first, since they're gonna show you C/C++ its best to focus on that.
Original-Bhujia@reddit
Thanks
Ok-Analysis-6432@reddit
C/C++ is a good part of the Assembly/C/C++ stack, above this you have the "virtual machine" part of the stack, which includes stuff like Java and javascript. At this level languages can abstract away many of the concepts needed for the ASM/C/C++ stack, especially memory management, but also allows for new programming paradigms such as Functional and Logic Programming.
The main benefit I see to starting with C/C++, is you get to see all levels of programming.
Original-Bhujia@reddit
Thanks, Iâll be learning coding for first time so idk what Iâll choose later
Erosis@reddit
C and C++ is great to start with because it will teach you strong fundamentals of programming logic and how that interacts with your hardware. You'll likely learn other languages for targeted purposes, but that's not to say you can't continue specializing in C/C++.
Original-Bhujia@reddit
Thanks
stubbornKratos@reddit
Order doesnât matter, different languages will have you learning different things.
For example, manual memory management in C.
Itâs probably a good bet to get started with whatever youâll learn first in university to ease the process.
Original-Bhujia@reddit
Thanks
greaseLee@reddit
Yes and Iâm a freshman
SadraKhaleghi@reddit
Java is still relevant today only because a bunch of older university teachers refuse to let go of it. The poor language barely has modern features, has excessive amounts of boilerplate code, lacks any respectable UI frameworks and so on.Â
C# beats it in every single department and what I always recommend to every single person who wants to learn programming. Pursue it and you'll realize how general yet specific a programming language can be...
P0werblast@reddit
Java has gotten his share of modern features in the last few years, since they started releasing every six months. I dont say I dont like C# also, but itâs more of a kitchen sink language where every single hype features is dumped in. Thats true that Java doesnt follow that trend but evolves slower. Every language has its place and so does Java. Still very popular but just not as âhotâ.
SadraKhaleghi@reddit
Meanwhile JavaFX still insisting on long getter/setters: Am I a joke to you!?
P0werblast@reddit
Sorry but yeah you are if you say Java is dead. I can sum up some stuff about C# aswell. Javafx is indeed not in a good position, but dotnet MAUI is? They just fired half the same. Just to say, there are positives and negatives about every language.
socratic_weeb@reddit
Don't make me laugh
Stripe4206@reddit
Do you have a degree? If not, get one and network as much as you can. Self taught in this business is incredibly few and far between, i dont know a single company that would even look at your resume without a degree or professional experienceÂ
r4y_me@reddit
That's one of the most stupid answer I ever heard. I'm a self-taught front-end engineer with more than 6 years of experience. I have a bachelor's degree in software engineering and not a single company asked for my diploma. I didn't even get it from my university. I earn 3k-5k a month which is pretty decent in my country. We are living in a period where most companies don't require a degree.
Some say FAANG ask it but I'm not 100% sure.
Decent_Gap1067@reddit
Nearly 99 percent of engineers working for FAANG have CS degrees from top schools.
Stripe4206@reddit
Market was different 6 years ago bud
Desknor@reddit
Do not get a degree in this market. Youâll just go into debt with no job. Do not listen to this person - itâs all about who you know and networking.
I have no degree and have a professional coding job. Make sure your portfolio (projects) and resume stand out. A lot of employers like when you work with your local non-profits/schools, makes you look great!
Stripe4206@reddit
I once won 100k on a scratch ticket, maybe he should just buy those instead
Desknor@reddit
Hopefully that was able to get you out of college debt!Â
Rogntudjuuuu@reddit
I think it's still relevant in finance and insurance, just like Cobol.
gcadays09@reddit
Java is not dying especially when compared against C#. The market share between the 2 isn't even close. C# has isolated pockets in the country that are .net shops. If you have knowledge of JavaScript/typescript with a framework like react and java. You will not be hurting for jobs to apply to. But of course it depends on what industry you want to go into. If you want gaming development then yes Java wouldn't be what you want.Â
Radinax@reddit
TONS of legacy projects demands it, it wont go anywhere.
Careful-State-854@reddit
Human Instructing AI to write Java? Yes, Human write Java alone? No
PureTruther@reddit
I guess "Java is dying" was thrown even just after the invention of Java xD
AngelBryan@reddit
Netflix is coded in Java, make with that what you will.
pablocsstep@reddit
Those who complain about Java were unable to persist in the language or found it boring/too complex, based on their own opinion, I personally wouldn't exchange Java in the backend for any other, even though I've already seen it. Java by itself may not be very attractive, but the set of frameworks available make it a powerful tool, and where there is power, there is money involved.
tjsr@reddit
Java is only dying in the sense that many places using it are migrating to Kotlin. Most of the time that means a massive mixed Java/Kotlin codebase, running on a JVM.
Hobbitoe@reddit
Yes? Itâs used in lot of enterprise work
cripflip69@reddit
It sounds like Debian and Java
heyheydick@reddit
Everything that is old school will always be in demand, like php for example.
The more obscure the better pay.
hotboii96@reddit
Yes it is. Learn java, especially if you want to work with backend. If you are unsure, you can also learn csharp. Both languages are very very close (syntax wise). If you know one, you know the other.Â
electric_deer200@reddit
literlaly every big entrprise which has been older than 30 years to so still uses java with spring boot or .net
Java is bread and butter for fintech companies, think Jp morgan Goldman sachs nd other big banks, they actively look for java developers. apply for internships here if you r in college and they will mostly convert you for full time
alexfreemanart@reddit
Why wouldn't there be a demand for Java developers in 2025? Why would anyone believe Java is dying?
Negative-Pin6676@reddit
I based it off of around 98%+ of the internet is based on JavaScript so you will always be needed somewhere in that area.
Java is great for app building
Python is more for data science etc so its really based on your main focus.
Then-Boat8912@reddit
The Java demand is for enterprise Spring Boot developers. Important distinction.
ModJambo@reddit
Java is still widely used by businesses.
As others have mentioned, very easy to pivot to C# and the .NET space once you have mastered Java.
Happy learning!
AngelBryan@reddit
Netflix is coded in Java., to give you an idea.
3slimesinatrenchcoat@reddit
Java is the SQL of back end languages
That shit is never going away completely
timewarp@reddit
The only time I heard people say Java is dying was when I was in college, being told that by other students. Nobody in the industry thinks that.
NoPrinterJust_Fax@reddit
1 billion devices
dariusbiggs@reddit
look at your local job market, in some places more than others.
garciawork@reddit
I'm learning it at work today. So my answer is yes, but its a small sample size.
zeocrash@reddit
Than what?
Pumped-Up-Kickz@reddit
than my monolithic spaghetti code
CodeTinkerer@reddit
Most code is legacy code that stays around a long time. Those looking for their first programming job often believe that companies are writing new software all the time and using the latest languages all the time, but in reality, most software is old software that's mostly written, and complete rewrites are rare.
This is why Cobol code stays around. There can be millions of lines of code. It's really hard to rewrite because the original customers who wanted the code are often not around (retired or left). Also, they are often badly documented or don't convey interactions.
As far as 5+ years of experience, it's usually a wish list. Apply anyway and let them know you're a junior. Sometimes they are desperate enough to need some people that are good at Java. Of course, it helps to be willing to learn new technologies and not just think you just learn Java and that's it.
You may have to become familiar with Node.js too.
Newbe2019a@reddit
Being used heavily in the financial / banking industry industry
Smart_Vegetable_331@reddit
Just a reminder, Cobol is still in demand and it's been almost 50 years. There is too much legacy Java code in corporate environment, it will be in demand for some time.
Don_Frika_Del_Prima@reddit
Exactly.
At my job there are people still using clipper.
rbuen4455@reddit
about the whole "x language is dying", you know how many times i keep hearing that for decades about some language, which is then later untrue, smh. You choose the language for the job. That said, Java is still king of corporate enterprise backends (some areas C# will be more used) and will be relevant for the foreseeable future.
as for jobs, unfortunetely it's tough luck for junior devs. Because of the economy, the massive downsizing of companies, and the general saturation of entry level swe positions, only experienced devs with 3+ Yoe are going to be prioritized while fresh out of college devs, bootcamp devs and self taught devs have to rely on networking, impressive portfolio of projects to even get their foot at the doorstep.
Different_Pain_1318@reddit
Job postings require 5+ as with any other language or specialisation, just look at the overall number of jobs
Aidalon@reddit
Very much
omegaonion@reddit
Yes lots of work in java, seems like c# might be a bit better so if you had to choose I'd go that way
LogicalAssumption125@reddit
Yes
cheezballs@reddit
Java is used extensively at larger companies. Backends and APIs and backend jobs are all things Java is heavily used in.
fabiogatoah@reddit
I'm not near of an experienced programmer, but my amateur opinion is that Java is used in so many legacy systems... Enterprise software doesn't change from today to tomorrow. C# and NodeJS have their right to exist too of course but that all these systems that still run on that system worldwide suddenly disappear is unlikely. In short - if you like it, go for it.
Zesher_@reddit
Yes, it's still widely used and popular, but with a caveat. The last two companies I worked at used Java for the backend, but they've been migrating to Kotlin. Kotlin is compatible with Java, so you can easily have Kotlin and Java files in the same repository and they interact well. I think if you want to focus on Java it's good to learn Kotlin as well.