TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: Is Java a wise career investment?

14 pointsby vtanaseover 12 years ago
Hello,<p>I have been working for close to 2 1/2 years as a Java developer, and seeing all the job postings on HN as of late, I have been wondering if it is wise to keep learning and investing in Java or if I should consider broadening my horizons by learning other programming languages(I have dabbled a bit in Python and Ruby so far).<p>Since this question is quite dependent on geographic &#38; economic context, I will provide some more detail. I am living in Romania, and have no plans of relocating. Currently the local job market has a lot of Java openings since enterprise clients from Western Europe are sending their projects to us to reduce development costs. How long this trend will last is quite uncertain, and this makes me wonder if Java is a worthwhile investment.<p>I have been considering starting to freelance but Java doesn't really seem to be the language in demand. The same goes for doing remote work for companies from outside my country.<p>I will also mention that I have a CS degree, so I know the universal theory behind programming like OOP, design patterns, algorithms etc.<p>So, in conclusion what would the kind people here at HN recommend? Sticking with Java, or switching to some more in demand language?

12 comments

RyanZAGover 12 years ago
HN is mainly startups who need to develop code quickly and be as 'in fashion' as possible. Java is more focused on long term, reliable code. For a general idea of the 'real' popularity of a language outside of the silicon valley startup scene, something like this is a better indicator:<p><a href="http://www.google.co.za/trends/explore#q=java%20developer%2C%20ruby%20developer%2C%20python%20developer%2C%20c%23%20developer&#38;cmpt=q" rel="nofollow">http://www.google.co.za/trends/explore#q=java%20developer%2C...</a><p>So it really depends on what you want to do - if you want to work in a large multinational or contact out to larger companies, then Java is a far better choice than Ruby or Python as the job demand is much higher.<p>If you want to jet out to silicon valley and shack it up with some guys who probably can't afford breakfast the next morning, then Ruby and Python are THE thing to go for! Not that you won't find enterprises using these languages, they're just much further apart and the demand level for these jobs is usually through the roof.<p><i>Flamebait</i> It's still true though.
评论 #5012764 未加载
CommitPushover 12 years ago
Try to learn Android and you raise your market value multifold. I would however though learn a scripting language to have a complementary skill-set and put a framework on top of that. I'd recommend Ruby --&#62; Ruby on Rails.
评论 #5012436 未加载
kybernetikosover 12 years ago
Java is a good thing to know, but I suspect that Java-the-language may not have a massive future. It's pretty telling that some of the major java IDE developers are also pushing their own JVM languages (eclipse: Xtend, jetbrains: Kotlin).<p>There's some interesting stuff going on in other JVM languages, I'm particularly interested in Scala and Clojure.<p>I think you've provided yourself with an excellent starting point having learnt java, but it would be a bad idea to stop there.
评论 #5012518 未加载
jervenover 12 years ago
Well what do you want to do? What kind of problems do you like to solve? Then look around and see what languages are commonly used and why they are used to solve that category of problems. Then try those languages, and form your own opinion.<p>I personally think languages are easy to learn enough to get stuff done. API's and libraries with their uses, corner cases is much more work. i.e. the java language specification is just one little book. But once you add all the common API's and libraries and how to interact with most common systems. i.e. DBMS and networks you have a small library.<p>In the end you are paid for solutions to problems, so learning to understand and solve problems is the most important.
jsmartonlyover 12 years ago
It depends what you want.<p>A) If you want to make more money or look for career change, then you have to listen to market and learn whatever it needs or pays well.<p>B) If your goal is to do long term career investment, then keep learning Java and make yourself an expert of it. To become "expert", you inevitably will have to learn a lot things that are beyond Java language and platform. Later on, these knowledge can be easily reused in other languages.<p>A) is short term, B) is long term. How about allocate 50% of your learning to each of them, then adjust allocation when you feel you need to?
TheSmokeover 12 years ago
i don't think java as a language is a better investment than others however java as an ecosystem is.<p>jvm is expanding, concurrency and scalability is more important than ever and jvm can provide you these tools. you can learn about jvm optimization, languages like groovy and scala, web frameworks like grails and play.<p>and of course a little bit of python and ruby won't hurt. :)
wanabeunknownover 12 years ago
learn couple of languages not only java but remember java is weapon of choice in enterprise businesses
评论 #5012255 未加载
nXqdover 12 years ago
Actually, I don't find any difficult when I change from one language to another. It's not much different, if you are looking for getting a hot job in the market, just playing with ruby, javascript [ coffee .. ] and soon you will get into it pretty quickly.
dotborgover 12 years ago
I see no reason, why as an experienced Java developer you couldn't become javascript/ruby/python/scala/whatever expert. There is not that much to learn in Java.
eranationover 12 years ago
Hard to tell the future, but I'm betting on Scala. Relevant for enterprise, gaining momentum for startups, and I think has the best of both worlds.
ndevergeover 12 years ago
Java is a too verbose language, and it will eventually be replaced by something else. But the JVM will stay for long (it is the actual runtime standard for the enterprise). So now, you'll have to bet on the next JVM language: - Groovy ? - Kotlin ? - Ceylon ? - Scala ? - Other ?<p>I actually take a bet on Scala and its functional approach.
dnuover 12 years ago
As a first step, you could expand to other JVM languages (like Clojure, Scala, Kotlin, ...)