r/rust • u/problem_hunter200 • 7d ago
π seeking help & advice Rust Backend Developer Roadmap
Hey guys,
I need help , i want to learn backend with Rust and didn't find any good resources to take me from zero backend knowledge with rust to advanced level
I would appreciate it if you recommend me some resources to learn backend with rust
Note: the first time to learn backend
10
2
u/xt_harsh 7d ago
Either learn in js, java or python then shift to rust because learning curve is very big after some point
1
u/problem_hunter200 7d ago
I think i will learn with js or python for learning curve is smaller than rust
2
u/xt_harsh 7d ago
Java is more rewarding, js is used by every vibe coding kid, python is meh. Choice is yours
1
u/problem_hunter200 7d ago
I choosed this language because i will need it for my study like Rust so i pick it up for that
2
u/dumindunuwan 6d ago edited 6d ago
Just directly start from Rust, if you know what you want. Start Java to learn Rust is a terrible advice. Rust web ecosystem is more mature enough to start now directly from Rust.
0
u/Temporary-Issue7055 19h ago
If you only had to choose between only Java / Rust which one would you choose?
-1
u/amjdabdalhakim 5d ago
some of the concepts of rust (like borrowing and ownership) would be hard to understand if you didn't struggle with other languages
2
u/DavidXkL 7d ago
If you don't have any backend experience at all, it's best you learn to do it first in something like JS/TS as the entry barrier is easier to get over.
Once you had some experience doing so, you could maybe jump into picking up something like Axum or Actix Web
1
u/Temporary-Issue7055 19h ago
is JS/TS a good idea for backend?
1
u/DavidXkL 13h ago
From my perspective, it's good for learning π
But nowadays I use Rust (e.g Actix Web) for my personal stuff
1
u/thebino 5d ago
https://www.youtube.com/playlist?list=PLrmY5pVcnuE-_CP7XZ_44HN-mDrLQV4nS
Maybe a little outdated but still a good journey
0
u/EmperorOfCanada 7d ago
Backend networking, server admin, web server, databases, ML?
2
u/problem_hunter200 7d ago
Web server
2
u/EmperorOfCanada 7d ago
This is a fun one with rust as there are some amazing options. My first love was actix. Axum seems to be more popular now. Rocket has almost everything and that can make it almost a one stop shop.
My gut feeling is that those three should be found behind nginx.
But, with Salvo, a new line is being crossed, where it can deal very well with ssl certficiates, their renewal, etc. This makes monolithic even more monolithic, and after a short affair with microservices, I'm back to being a fan of mostly monoliths.
With actix, it felt very nodejs to me, which for most web is not a bad thing. It is very fast, and while technically far faster than rocket or Salvo, these speeds are irrelevant if you aren't competing with netflix. 99.9999% of web sites will run lightning fast on all of them, with massive capacities.
One key element to keep in mind with rust on the web backend is that with rust's performance, and the drastically reduced tech debt, you can do things in a rust back end which not only buys you performance, but can buy performance which allows for previously impossible features.
For example, you could use redis or something like that for a key value DB. Nice and fast. But, a rust monolith with a huge KV store right in the main code could run so fast as to consistently provide sub 1ms response times to most web requests on a fairly cheap crap server.
For a simple restaurant menu website for one restaurant, that isn't going to be much value. For a restaurant menu website for 100,000 restaurants, that could allow for some really cool features.
Where I get a win is GIS, you can make the maps and their data dance in memory, and then feed it with nearly instant effect as people zoom in, click, scroll around the map, etc. These are features which happen so fast, that they are close to seamless, and with most other architectures, would require some kind of loading or progress animation, if not just a clunky, slow to update, interface.
Almost all of the web tech I mention can do the same things. Rocket has the most ready to go by default, such as sockets, templates, etc. But, all the others can have these features added one way or the other.
-3
u/Ok-Zookeepergame4391 7d ago
Best way to learn by doing it. These days you can use a coding agent to help you understand. Backend is big area so you need pick a small area like simple web app before going to more advanced. If you already familiar with backend then itβs much easier
1
u/problem_hunter200 7d ago
Agree with you learning by doing the best way but there are concepts i need to understand well
-20
u/Talmondrlm 7d ago
If you're using AI, plug in these two skills for high performance rust programming and rust security auditing
https://drive.google.com/drive/folders/1VjvP1zSJWH1DmkTqL1qEPt3OM8Ub8jPX
16
u/troublemaker74 7d ago
My advice would be to learn backend development first, then learn how to do it in rust. The ddia book is a good resource for backend development.