Dude, I was literally in your shoes 2 years ago and went with Java. Here’s my take: Java - if you want that corporate bag Enterprise companies LOVE Java (banks, insurance, big tech) Spring Boot is everywhere in backend roles Salaries tend to be higher for Java devs in my experience More structured, forces you to learn good practices early Job security is insane - legacy systems aren’t going anywhere Python - if you want flexibility and faster learning curve Easier to pick up, more beginner-friendly syntax Django/FastAPI are solid for backend Great for startups and data-heavy companies Opens doors to ML/AI if you wanna pivot later More “fun” to work with imo Real talk though - market demand wise, Java probably has a slight edge for pure backend roles, especially for freshers. Most companies have existing Java codebases and need people to maintain them. But honestly? Pick whichever one doesn’t make you want to cry while coding. I’ve seen people succeed with both. The fundamentals (databases, APIs, system design) matter more than the language. If you’re really torn, learn Java first (it’ll make you a better programmer overall), then pick up Python later. It’s way easier to go Java → Python than the other way around. Also protip: whatever you choose, get really good at ONE framework. Don’t try to learn everything at once - you’ll just confuse yourself. Good luck with placements! Answer from No-Mycologist-9014 on reddit.com
🌐
Reddit
reddit.com › r/learnprogramming › java or python ?? what to choose for a suitable career in backend as a fresher
r/learnprogramming on Reddit: Java or python ?? what to choose for a suitable career in backend as a fresher
July 16, 2025 -

hello guys, i am fresher and really confused what should i learn Python or Java for backend , what will be more beneficial , what will be my career path looking like when i choose either of them , please guide me as your help is needed very much , really confused as placement season is going to come soon in my college. please guide

Top answer
1 of 15
9
Dude, I was literally in your shoes 2 years ago and went with Java. Here’s my take: Java - if you want that corporate bag 💰 Enterprise companies LOVE Java (banks, insurance, big tech) Spring Boot is everywhere in backend roles Salaries tend to be higher for Java devs in my experience More structured, forces you to learn good practices early Job security is insane - legacy systems aren’t going anywhere Python - if you want flexibility and faster learning curve Easier to pick up, more beginner-friendly syntax Django/FastAPI are solid for backend Great for startups and data-heavy companies Opens doors to ML/AI if you wanna pivot later More “fun” to work with imo Real talk though - market demand wise, Java probably has a slight edge for pure backend roles, especially for freshers. Most companies have existing Java codebases and need people to maintain them. But honestly? Pick whichever one doesn’t make you want to cry while coding. I’ve seen people succeed with both. The fundamentals (databases, APIs, system design) matter more than the language. If you’re really torn, learn Java first (it’ll make you a better programmer overall), then pick up Python later. It’s way easier to go Java → Python than the other way around. Also protip: whatever you choose, get really good at ONE framework. Don’t try to learn everything at once - you’ll just confuse yourself. Good luck with placements! 🤞
2 of 15
3
yeah so a few months ago i looked at employers job applications and read about their requirements etc. so i would recommend that u do that. front end is highly saturated, don't get into it until later on. i looked at dell for example and this was just one of their requirements: "•Proficiency in hardware, software (Python, C++, Java) and/or operating systems environments" its good to be full stack as well but at the same time u should be focusing on back end first. companies are looking for both but its like 80% back end 20% front end type of way.
🌐
Reddit
reddit.com › r/cscareerquestions › java vs python for backend as a first job
r/cscareerquestions on Reddit: Java vs Python for Backend as a first job
October 26, 2022 -

I will start out (new grad) as a full stack developer in a banking firm.

I have been given the choice to either become a python dev(flask framework) or java dev(spring framework).

Furthermore, I am proficient in Python and flask (my previous internship was with flask) while almost a newbie in java, but I feel being a java developer would help me in the long run.

Would it be beneficial to start my career as a python developer or java developer?

Any advice is really appreciated as my family doesn't have tech background.

Edit: I opted for java but as it is with any big org, they put me in a python team 😂.

Got to work on a data science project and use flask on day to day basis. Since the senior devs in my team are originally java devs, the code base is almost like java with the typing, oop based etc.

I learn new stuff every quarter and I like python. So happy with how fate turned out

Top answer
1 of 25
128
I started with Python (Django) but my first job was Java-based. It was only after using Java that I properly understood OOP. You talk to other developers and you start to understand the importance of object oriented design patterns for scalability and reusability, importance of writing clean code and that alone opens up a whole new never ending pit of infinite knowledge. You'll have very little trouble picking up another language after Java and you'll start to love it's static typed verbose nature. You'll understand the importance being verbose when it comes to really humongous codebase (or atleast, codebase that cover a vast domain)
2 of 25
82
As someone who's worked with both spring and flask, I vastly prefer flask, spring seemed to break every so often with very not helpful errors and in many cases we simply copied the code, deleted the project, then put the code back in and it worked somehow. This was like 5 years ago so no idea if it's different now but spring was extremely annoying. That said career-wise java is the go-to here. Even though I use 90% python now the only reason python is even relevant is packages people have built, mostly written in core C. So for example I do data engineering and afaik there's no pandas/numpy substitute in java. But as a fundamental language I think java is much better and you'll likely learn much better design principles as well. And if you don't like the job after a year or two you can definitely leave and pursue a python role, being able to put java on your resume will only be a positive.
🌐
Reddit
reddit.com › r/backend › which is better for backend java or python and why?
r/Backend on Reddit: which is better for Backend Java or Python and Why?
December 29, 2025 -

I’m a 3rd-year engineering student. I have already completed data science basics and started machine learning, but now I want to add backend development as a serious, job-oriented skill.

I already know Java and am currently doing DSA in Java, so continuing with Java for backend would not be starting from scratch. Learning Python backend would mean picking up a new stack.

I am not learning backend just for exploration or fun. My clear goal is to land a backend-related job, so employability, industry demand, and long-term career growth matter to me.

🌐
Reddit
reddit.com › r/learnprogramming › should i go with java or python for backend development?
Should I go with Java or Python for backend development? : r/learnprogramming
August 11, 2025 - Both Java and Python are strong options for backend development with React and PostgreSQL. Python offers a simpler learning curve and cleaner syntax, which makes it ideal for rapid development and maintainable code. Java provides stronger type safety and scalability, making it more suitable ...
🌐
Reddit
reddit.com › r/learnprogramming › seeking insights: java, asp.net vs. python, and go for backend development in enterprises
r/learnprogramming on Reddit: Seeking Insights: Java, ASP.NET vs. Python, and GO for Backend Development in Enterprises
November 26, 2023 -

Hey everyone,
I've been diving into the world of backend development and I'm curious about the prevalence of Java and ASP.NET in enterprise applications despite the rise and capabilities of Python.

Java, in particular, seems to be on a decline in recent years, yet it's still in demand in enterprise world.
I'm torn between the decision of delving into Java Spring, ASP.NET, or exploring Python with Django for backend development. All these frameworks seem robust and capable of handling large-scale applications, but the differences between them are somewhat blurry to me.
For instance, Java, ASP.NET, and GO have been the stalwarts in the enterprise world, but Python's versatility and ease of use have gained considerable traction. Is it worth investing time in Java Spring despite their decline? Or should I pivot towards Python and explore its potential in the backend, especially with frameworks like Django and a plenty of packages available?
I'd love to hear your experiences and insights on:
Why do you think Java and ASP.NET are still prevalent in enterprise applications despite their decline?

Is Java Spring still a viable choice for backend development compared to Python and Django or GO?

What are the key differences between these frameworks in terms of performance, scalability, and ease of development?
I believe all these frameworks have their strengths and weaknesses, and the decision might vary based on the project requirements and industry demands.

Your perspectives, experiences, and suggestions would be immensely helpful in guiding my decision on which path to pursue in backend development.
Looking forward to a lively discussion and learning from your valuable experiences!

🌐
Reddit
reddit.com › r/learnprogramming › are java and python purely backend languages?
r/learnprogramming on Reddit: Are Java and Python purely backend languages?
February 24, 2024 -

I’m a first year uni cs student trying to learn more about what to do next. We’ve only learned these two languages so far and honestly the progress I’ve made isn’t what I’d call noticeable. We stuck nearly entirely to the console, programs which aren’t something anyone really enjoys making or uses.

I know about little about backend and frontend. From my understanding, Java and Python are mainly used for the former.

My question is this: what can Python and Java be used for other than this? I’m sure backend knowledge will be very useful later, but is there anything fun that can be made with them now, or should I start broadening my languages?

I read somewhere that a language that doesn’t change your viewpoint on programming isn’t worth learning. I’ve also heard that it is more useful to be really good at one language than to be good at many. These pieces of advice would indicate I should stay with improving these languages slowly, but it seems this would clash with the desire to make something fun and/or meaningful.

Does anyone have any opinions / answers to this? I’d like to hear what you have to say, be it from professionals or other students.

Top answer
1 of 32
144
Minecraft is written in Java.  So, nope.
2 of 32
53
You can build pretty almost anything with either language. Not necessarily optimally, conveniently or advisably, but you can. I read somewhere that a language that doesn’t change your viewpoint on programming isn’t worth learning. Academically, maybe ... In real terms ... you'll invariably learn something new from every additional language you learn/use. It may not change your viewpoint (such as coding in languages that follow entirely different paradigms), but it will expand the way you can think about solving problems (even in other languages). And practically speaking ... you'll inevitably learn languages (etc.) simply because they're required for something you want. Such as a specific job or a promotion. I’ve also heard that it is more useful to be really good at one language than to be good at many. Languages are not the hard part. Once you can program, properly, a language is just a syntax and grammar for expressing fundamental concepts and operations. Limiting yourself to one language is somewhat like having a toolbox that only contains a hammer. Think "right tool for the job". Some languages are better suited to certain types of problems than others - by which I mean they can make it easier to write (and read) code that does certain things (and/or my have intrinsic libraries that also help), but the delta is usually just in how much code, of what complexity, you need to write to get a given job done.
🌐
Reddit
reddit.com › r/learnprogramming › suggestion: should i learn python or java?
r/learnprogramming on Reddit: Suggestion: should I learn python or java?
August 3, 2024 -

Hi! I'm a junior DevOps engineer and I would like to start developing backend too. I already know intermediate python and worked a little bit with django and I would like to dive deep into python and learn it well.

I asked my supervisor for his advice and he thinks that it's better for me to learn Java first. From his point of view Java is more technical and I can become a better developer by learning the fundamentals with it (like polymorphism, interfaces, data types). He considers python as an uneffective shortcut to learn bad software development practices.

At first he convinced me with his argument but then I documented myself better and I saw that even python has all of those concepts, so I feel like if I'm not lazy and l study python well I can achieve the same expertise I would get with Java.

Since I want python to be my main language I'm essentially very skeptical in using my energies in learning java from zero while I could dive deep in python and get solid with it. It's not like I only want to know python overall, but reading a book of 1600 pages like "learning python" takes time and effort and I feel like I want to make that effort on python, not java.

What do you think about it? I could really use your advice, thanks a lot in advance.

🌐
Reddit
reddit.com › r/learnprogramming › java or python for backend development as a fresher?
r/learnprogramming on Reddit: Java or Python for backend development as a fresher?
July 20, 2025 -

Hi everyone,

I'm currently in my final year and looking to specialize in a tech stack. I've completed DSA in Java but haven't done any development projects yet.

While many of my peers are learning Python, I'm already familiar with Java and am considering learning Spring/Spring Boot for backend development.

However, I've come across several Reddit discussions suggesting that there are limited opportunities for junior Java developers. Is that true in your experience?

Should I stick with Java and Spring Boot, or would it be better to switch to Python for better job prospects?

Any guidance or personal experiences would be greatly appreciated!

Thank you 🙏

Find elsewhere
🌐
Reddit
reddit.com › r/learnprogramming › should i learn python or javascript for backend development?
r/learnprogramming on Reddit: Should I learn Python or JavaScript for backend development?
July 21, 2025 -

Hey everyone,
I’m a beginner in programming. I'm confused about whether to go with Python (Flask/Django) or JavaScript (Node.js) for backend development.

Here’s some context:

  • I’m also learning front-end (HTML, CSS, and JavaScript).

  • I want to build full-stack web apps.

  • I enjoy Python’s simplicity, but I’m also okay learning JavaScript properly.

  • Long term, I might also be interested in data science or AI (so Python would help there).

Can you guys share what worked best for you, or which path makes more sense for someone starting out?
Any tips, resources, or personal experiences would be really helpful!

🌐
Reddit
reddit.com › r/learnprogramming › is python a good backend language for backend job opportunities and big tech?
r/learnprogramming on Reddit: Is Python a good backend language for backend job opportunities and big tech?
January 17, 2026 -

I want to learn DSA and backend development in parallel. My goal is to get an entry-level backend SWE role, and I want to use the same language for both LeetCode and the backend framework so I don’t get overwhelmed learning two languages at once.

Python is commonly recommended for LeetCode, so would Python + FastAPI (or another Python backend framework) be a good choice in terms of the availability of entry-level backend SWE job opportunities? Or does the specific framework you start with not really matter, with companies allowing you to learn their stack on the job as long as you understand backend fundamentals and concepts from one stack?

I’m also open to learning a different language if that would significantly improve job opportunities, especially for entry-level roles or larger companies.

🌐
Reddit
reddit.com › r/learnpython › "python vs. java in 2025: which should i focus on?"
r/learnpython on Reddit: "Python vs. Java in 2025: Which Should I Focus On?"
December 10, 2024 -

It's 2025, and I'm at a decision point in my programming journey. I want to dive deep into one language and can't decide between Python and Java.

Here's my context: i am a developer with 10 year experience in java and 5 years in python

  • Python: It's dominating fields like AI/ML, data science, web development, and automation. With its growing libraries and frameworks, it feels like a must-know for cutting-edge tech.

  • Java: Despite being older, it's still a powerhouse for enterprise systems, Android development (with Kotlin in the mix), and large-scale backend solutions. Its stability and performance are undeniable.

🌐
Reddit
reddit.com › r/developersindia › python vs go vs java as language for backend development
r/developersIndia on Reddit: Python vs Go vs Java as language for backend development
November 12, 2024 -

Hi guys. I am working in a service based MNC for 2 years with over 1 year experience in backend in pythob with flask/fastapi. Basically building Genai solutions using gpt/Gemini models. I have interest to switch now since the work I'm doing right now isn't great plus didn't receive any significant hike etc. I am looking to continue in backend only. Please suggest which language should I pickup Java or Golang, since there's not much opportunity in python for backend. Thanks P.S. - I have basic understanding of Java and OOPS in Java.

🌐
Reddit
reddit.com › r/learnpython › java vs python for e-commerce applications
r/learnpython on Reddit: Java vs Python for E-Commerce applications
December 30, 2024 -

I would like to know why most of the e-commerce platforms prefer Java for their backend. I like developing in python, but I am interested in developing public facing lifestyle applications such as e-commerce apps. Should I switch to Java or should I stick to python because these applications can be developed in python as well/ there are applications like these written in python.

🌐
Reddit
reddit.com › r/backend › is python a good backend language for backend job opportunities and big tech?
r/Backend on Reddit: Is Python a good backend language for backend job opportunities and big tech?
January 17, 2026 -

I want to learn DSA and backend development in parallel. My goal is to get an entry-level backend SWE role, and I want to use the same language for both LeetCode and the backend framework so I don't get overwhelmed learning two languages at once.

Python is commonly recommended for LeetCode, so would Python + FastAPI (or another Python backend framework) be a good choice in terms of the availability of entry-level backend SWE job opportunities? Or does the specific framework you start with not matter, with companies allowing you to learn their stack on the job as long as you understand backend fundamentals and concepts from one stack?

I'm also open to learning a different language if that would significantly improve job opportunities, especially for entry-level roles or big tech companies.

🌐
Reddit
reddit.com › r/webdev › how to choose back-end programming language? does it even matter?
r/webdev on Reddit: How to choose back-end programming language? Does it even matter?
February 24, 2020 -

So, I have experience as a desktop applications programmer. There, picking the right programming language is pretty important, but also something that is well understood. If I need bleeding edge performance in a hardware-restricted environment, I'll go with C++. If I'm making a desktop app that's Windows only, I'll go with C# and the Windows UI libraries/framework that basically come with it. If I'm writing a simple automation script that doesn't necessarily need the best performance, I can go with Python.

Now, for most of these, the crucial first step is understanding what you'll be working on and what programming language is appropriate for the situation. I've gone back to college and have been taking an upgrading class (or whatever they're called), and a lot of our focus has been on the web (specifically in ASP .NET Core 3).

I've been looking around the web for what back-end programming languages/frameworks people can use, and which one is appropriate for which situations, but I feel like I've hit a wall. Django, ASP .NET Core, Ruby (on Rails), PHP, Node.js, Java, Go, etc. all pop up constantly. Whenever I try to find what situation should X be used in I just get a bunch of search results like:

"Which back-end programming languages should YOU learn in [2014-2020]?! Number 6 will SHOCK you!"

"Why you should use X back-end language for everything!"

"Why you shouldn't EVER use X again!"

These aren't very useful. They seem to mostly be fanboys telling you why X is so good/bad, instead of giving actual examples of when something is the appropriate tool for the job. I've also seen some posts claiming that in 2018 (when it was posted), the back-end language you use hardly matters unless you expect disgustingly high levels of traffic and activity throughout your website and to just use whatever you're comfortable with (as long as it also allows you to do your job quickly). Hell, I've seen people recommend against learning new stacks because they said that they ultimately didn't matter if you already knew some (which I kind of disagree with).

What little information I've gathered so far is the following:

  • Stuff like Django and Ruby on Rails come with a bunch of pre-built functionality that can make development time faster.

  • Although Ruby on Rails doesn't scale as well as Django.

  • Interpreted languages like Python aren't necessarily slower than statically typed ones as long as you aren't dealing with incredibly high levels of activity (found some benchmarks stating that Django could comfortably handle 100,000 users a day with light-medium activity).

  • Be careful with PHP and try following the practices from PHPTheRightWay if you do use it to avoid problems.

  • Some of these frameworks/languages have better support for modern web practices than others (seen this from experience with .NET Core 3's kind of "meh-borderline-bad" Ajax support if you're using Razor Pages, meanwhile Django comes with built-in REST support).

This doesn't really give me a whole lot to go on, especially since most of the "articles" I can find on "what to use when" just gives me clickbait or clearly biased "only ever use X".

I'm guessing that, just like in desktop development, the problem you're dealing with will influence the language you'll use, but I'm starting to have doubts about it based on the amount of people saying it doesn't matter, but the webdev area of software development kind of has a reputation for not always using the right tool for the job, so I'm not sure how accurate those comments are.

So, could someone give me some examples of what situations/problems would warrant using a certain language or framework? Does it ultimately matter (as long as you're using a mainstream language)?

Top answer
1 of 13
73
The "which language" debate is always going to be a hot-button topic in a forum dedicated to a spectrum as broad as webdev. Similar to asking "which platform" in r/games , you'll mostly get "just use what you like" as the default response, sprinkled with dedicated fans in each arena. And, they're right, mostly, both here and in r/games . One of the heaviest factors in choosing a language when building a new project should include what you're familiar with. Because comprehending a new language whilst simultaneously building a complex project usually amounts to overload and burnout. But, what language you choose does matter; it will affect the outcome of your project and your career, especially if you plan to scale. I say to understand what languages to use or learn, understand what businesses want. Or better yet, understand what type of business will choose which languages, and choose which businesses to align your self with. First is region. If you're looking for a job, it helps to understand either where you are, or where you want to be. Demand varies city by city. Often, a single large company in an area has cascading effects on the talent pool available to businesses, and the corresponding demand from businesses looking to tap into that pool. After that, there's the ecosystems the languages tend to arrive with. Regardless of any pros and cons about performance, scalability or productivity of a language, each has realities about its history and the projects built behind them. You won't find mom and pop shops leveraging Java or Golang for their latest projects, and conversely, you tend not to find PHP in the enterprise. After that, in this or any sub, you risk getting shot as the messenger when it comes assessing where each language stands in the market. Someone, somewhere is either ready or typing a message telling me how PHP is used in the enterprise because X company is a Fortune 500 company who based everything on that language. So, I suppose I'll prefix everything with "in my experience." Stuff like Django and Ruby on Rails come with a bunch of pre-built functionality that can make development time faster. More so Django, actually. Rails does have a solid following of companies who jumped on board in its glory days, but its popularity for green field projects seems to have all but vanished. Python, by and large, is the most versatile language, both in concept and in practice. It's dominating in data science and AI/ML right now. Once you throw it its history in automation and Django, I'm don't think there's another language which covers the spectrum of development as well. Although Ruby on Rails doesn't scale as well as Django. "Doesn't scale," always needs context. Everything has a range of elasticity. Easy to develop almost inherently means lower scaling capacity, but most projects will never reach the scaling limits of a platform like Rails. Interpreted languages like Python aren't necessarily slower than statically typed ones It's not typed vs interpreted. It's interpreted vs compiled. If milliseconds are critical to a huge operation which run continuously, you need compiled. The reality is, though, most projects never reach that limit. And the ones who do, usually write specific services in a compiled language, and still leverage the easier languages in everything else. Basically, people use interpreted languages until they can't. found some benchmarks stating that Django could comfortably handle 100,000 users a day with light-medium activity) First, that's a meaningless benchmark. There are 86,400 seconds in a day. You would need to handle just over one user per second to claim that capacity. If I built a site for my grandmother's cat, it would be able to handle that load. Second, "scaling" is more than users per second. When something "scales," it means it's prepared to handle the daily realities of maintaining a business on the net. Users don't just come from the public side. There are developers, designers, marketers, copy writers and stakeholders on the other side which have greater demands on the platforms than public users. Even for public users, there are numerous design choices in the platform implementation which affect the outcome of how it runs. Be careful with PHP and try following the practices from PHPTheRightWay if you do use it to avoid problems. PHP has its roots in spaghetti code, which is probably where that notion comes from. Modern platforms have changed that. Follow the practices that you would for any language; just understand the ecosystem you're diving into. Some of these frameworks/languages have better support for modern web practices than others Things change. I personally wouldn't pick a language based on how up-to-the-minute modern it is at the moment. What are people actually using it for? Do the projects suit the career path you want to follow? Some of its a gamble. Not everything survives. So, let's break it down, in my opinion, of course: Python is easily the most versatile at the moment. No, it's not compiled, but even that is murky with projects claiming to compile the important bits. There doesn't seem to be a facet of web development Python isn't a substantial part of. Django dominates here on the framework side, but Flask is still hanging in there. Ruby is almost entirely driven by Rails. It's still currently viable as a platform, as many companies are running it, but its glory days seem to have passed. Go (Golang) is a compiled language which is gaining traction as a balance of compiled goodness and rapid development, but it's still decidedly niche in the grand scheme of things. I'm not sure there's a clear winner on the framework side, yet. Java still seems to be the preferred compiled language that isn't C++. Spring, its primary framework, is also quite popular in the enterprise. PHP is popular in marketing agencies and "web shops." By extension, for most of the common uses of websites, it contains the most plug and play options for the most common use cases. .Net core is substantially better than .Net of past, but it's having trouble breaking out of its Steve Ballmer inflicted mold. Most people with a traditional programming background love C#, and the MS development tools are top notch. But, despite the open source efforts, .Net seems to play with the corporate "license" kids, and is mostly employed by companies already invested in the MS ecosystem. JavaScript is turning into TypeScript, and Node has certainly found a customer base. I hear stories here and there of Express running entire back-ends, but it's mostly used for miscellaneous processing these days. TL;DR Search job listings and figure out what's in demand.
2 of 13
19
Does it ultimately matter (as long as you're using a mainstream language)? Short answer: no, it doesn't matter. Or at least, not as much as people might claim. I can take any popular, modern, back-end web framework and make it work. I think a lot of the decisions come down to: What experience do the developers have that are building this? You'll probably lean towards something familiar and that people have experience in, rather than that fancy GoLang over there, or whatever. Community support - is there a lot of talk and easy access to help? Third-party libraries - Is there heaps of libraries that are already done and mature? Are they maintained and current? Documentation - Good docs? Are they up-to-date? Is it easy to find resources, tutorials and courses, if needed? Popularity - If you pick an obscure language, how easily will you get developers to hire? Or if it's an open-source project, will anyone be able to contribute, or did you decide to build your web API in Rust?