r/Backend 1d ago

Python for backend

Is python a good choice if I want to get a job as backend dev?
I already learn how to create some api projects with Django and FastAPI, Celery, Redis and SQL, but I always keep hearing that python is only good for DS/ML stuff and it would be better to pick other languages or stacks for backend.
So I would appreciate any answer how the situation really looks in the real world.

37 Upvotes

27 comments sorted by

10

u/djslakor 1d ago

If you're building your own products or freelancing and feel most comfortable with python, absolutely.

If you're looking for the most jobs available, Java or C#.

Golang if you're also talented with distributed systems and devops.

1

u/DelphiP0 6h ago

Python will get the interest of anyone who graduated college in the past 5-10 year’s.

Java or c#, or php will get you the battle veterans who can pick the holes in an Ai implementation. People who graduated college between 1998 and 2010.

Go will get you someone with a combination of never developed a product with ego you have to wrangle .

13

u/SubstantialSail9302 1d ago

Yes, Python is definitely a valid choice for backend development. Django and FastAPI are both solid, and knowing SQL, Redis, Celery, APIs, authentication, and deployment is more important than just the language itself. Java/Spring Boot may give you access to more backend roles in some markets, but I wouldn’t switch just because people say Python is only for AI/ML. If you’re already comfortable with your Python stack, build a couple of production-style projects and apply with that.

20

u/KariKariKrigsmann 1d ago

I recommend a compiled, type safe language, like c# for backend.

6

u/gob_magic 1d ago

Yup or even Go. If focused on web / servers etc.

5

u/American_Streamer 1d ago

Java Spring Boot is still where the well-paying enterprise backend jobs are (if you live in the right region).
[r/SpringBoot](r/SpringBoot)

2

u/dayeye2006 1d ago

It gets work done wrt constraints. Why not?

And you need to understand what are the constraints for your work - budget , resources, deadline, ...

Without talking about them, no where to make conclusions

2

u/SmokyMetal060 1d ago

Python's fine for backend. If you're focused on getting hired as a backend dev, you should look at the job listings in your local market and see what the preferred stacks are. If lots of your local employers are running Node, for example, you should learn Node.

2

u/talhashah20 1d ago

many languages.. many frameworks.. everyone has its own pros and cons. The main things is to grip the backend principles first like network protocols, routings, middlewares, serialization and deserialization, queue and scheduling etc.. the concepts thats always stays same in all types of backends no matter which language is.

just grip the backend principles and basic system designs in your langauge then you can go to learn any of the other lang

backend is all about your skills, if your skills are not good you cant even make optimized servers in compiled languages like rust and go

2

u/Forsaken-Internal-33 1d ago

For sure. I’d add Docker to the stack you mentioned, and you’ll end up with a strong, reliable product. From my experience, it’s great

2

u/StartDependent1652 1d ago edited 1d ago

No. It’s nice for learning, but it’s too slow for high traffic applications. It might be okay for now, but eventually it might bite you. Faster languages are a bit harder to learn, think about C#, Java, Go and Rust. Something in between (both speed and complexity) is JavaScript.

1

u/ShoulderIllustrious 1d ago

How much traffic you plan on serving? Django is good to get started. I mean at one point Instagram had that as a part of their stack (maybe they still do?). Just make sure you have a webserver in front of the process to handle the less important stuff. We use it, some of our stuff doesn't require high throughput or very low latency. 

1

u/Rodr1to 1d ago

I’d say if you want pure backend either C# or Java (compiled). For backend with ai/ml functionalities Python is valid.

1

u/Inevitable_Captain45 1d ago

Yes offcourse
Django and still being preferred for backend development

1

u/BrianJabir 1d ago

I used to say, “Python sucks for backend development,” but I changed my mind after finding hundreds of Django job postings.

1

u/Beneficial_Bake440 1d ago

Can you tell me which platforms did you use? I hardly see django jobs

1

u/BrianJabir 1d ago

Mostly LinkedIn. I see Django jobs quite often in job postings from the UK.

1

u/Captain_Forge 1d ago

Not the most popular choice and not my preferred choice but if you like the language, jobs exist.

1

u/console_log_goblin54 1d ago

Python is awesome and its my first option. But the real Q is what are you building, the stack is not imprtant especialy now when you have ai. dont learn a language. just build things and the learning is on the way

1

u/gugugaga_069 9h ago

Java Go Kotlin

1

u/Rich-Newspaper-2347 8h ago

From Job prospective, it is better to learn Java or Go, maybe both, most of enterprise use those.

And I don’t think Python is widely used for backend mainly because it is interpreted language it might consume more CPU and memory per request.

It might be used for internal services or jobs, rarely for user facing services.

1

u/PalpitationBorn 34m ago

Python is definitely good for backend and will give you lots of opportunities but if your main goal is getting a job as a backend dev, I’d recommend also learning Spring Boot. Regardless of the language you specialise in, learn the backend principles, it will make a way bigger difference than language choice.

-8

u/AnimatorExciting7941 1d ago

Python is kinda new to the backend world. It is used but not as much as java springboot

1

u/MrDilbert 1d ago

LOL, Django is probably older than you.

1

u/AnimatorExciting7941 1d ago

Maybe yeah, sorry for that. But still, a good choice for backend is still Java Springboot, cuz of its market share

2

u/MrDilbert 1d ago edited 1d ago

I'm not disputing that, Java and C# are required in most enterprise backend jobs out there.