What projects would be good for learning backend development?

Hey all, so I asked what skills I needed to learn to be a successful backend engineer. and I was shown this roadmap https://roadmap.sh/backend Now I am wondering what projects should I aim to implement to solidify my skills. I can read about all these concepts all I want, but I learn best by implementation, just have no idea what to implement.
roadmap.sh
Backend Developer Roadmap
Learn to become a modern backend developer using this roadmap. Community driven, articles, resources, guides, interview questions, quizzes for modern backend development.
35 Replies
Neto
Netoā€¢11mo ago
Pick some interesting project that you want or make a clone of something "twitter clone", "reddit clone" all of them are valid options to learn
NoName Nomad
NoName Nomadā€¢11mo ago
alright I think this has given me some ideas, thanks all
craigcaski
craigcaskiā€¢11mo ago
Pick a hobby or something you're interested in and do a project around that. It will make it much easier to stay motivated.
NoName Nomad
NoName Nomadā€¢11mo ago
yeah I'm thinking of making a typescript playground clone but have it run my own custom little toy langauge instead and linking it to my portfolio once I finish that
Keef
Keefā€¢11mo ago
also becareful with scope You can really make a ridiculously simple clone of twitter/reddit but also something extremely extremely crazy. At the start I was more so feeling out tech and getting to know technologies over hoping to have something finished + polished to show off. It wasn't ever a problem since I was still able to talk about what I did/struggles After you get some experience check out Designing data intensive applications by martin kleppmann. If that is still too technical/you need more resources you can check out web scalability for startup engineers by artur ejsmont
NoName Nomad
NoName Nomadā€¢11mo ago
I understand what you mean I shouldn't build anything too crazy. I have made several interpreted langauges before so now it would be making an editor and putting online. So not as crazy as it sounds. I'm not trying to reimplement typescript or something
Keef
Keefā€¢11mo ago
More so is to avoid trying to be perfect (optimizing non issues for example) over something that is workable and you are learning from it
NoName Nomad
NoName Nomadā€¢11mo ago
but I am a bit more focused on making a showcase because my current job has me working with google scripts and only 50% at that, I'm IT the other 50%. So I'm trying to make at least something presentable so I can get out of a position where my skills are stagnating could you please elaborate a bit further, not sure what you mean?
Keef
Keefā€¢11mo ago
So I mostly assumed you were a beginner. But often people get caught up trying to work out kinks and snares that aren't really an issue when they should really just be focusing on learning code plus building the habit of showing up to "git it done" You can still present unfinished things its really not an issue. Just be able to talk about them if they are brought up
NoName Nomad
NoName Nomadā€¢11mo ago
well to backend stuff yes, I started my career about a year ago. but my current job wasn't as SE focused as they initially made it seem. So I understand programming concepts but am not specialized
Keef
Keefā€¢11mo ago
If you have some experience just jump to the book by kleppmann
NoName Nomad
NoName Nomadā€¢11mo ago
and yeah but currently my portfolio is just blue text on a black screen. and all the text is filler text since I'm trying to layout the skeleton of the site what's the book name?
Keef
Keefā€¢11mo ago
Designing data intensive applications by martin kleppmann if too dense try web scalability for startup engineers by artur ejsmont
NoName Nomad
NoName Nomadā€¢11mo ago
alright I will note those down for later, thank you
Keef
Keefā€¢11mo ago
šŸ™‚ If you want to get some systems learning going on, I'd probably grab an operating systems textbook and start getting to know linux The roadmap is fine but I think its too min maxy AS in my motivation will dwindle having to spend time on dns when I really just want to be breaking shit in rust or go or whatever flavor you pick
NoName Nomad
NoName Nomadā€¢11mo ago
true if I'm working on backend I'm running things on linux. I understand how to use the terminal, I use wsl for development. But I wouldn't say I'm a linux expert
Keef
Keefā€¢11mo ago
thats fine, i'm no linux chad either just be comfy in a terminal and I'd prob suggest getting familiar with docker + containerization at some point
NoName Nomad
NoName Nomadā€¢11mo ago
what is docker? I have heard people using it but never saw the point?
Neto
Netoā€¢11mo ago
oh no
NoName Nomad
NoName Nomadā€¢11mo ago
oh, sorry? new post question?
Keef
Keefā€¢11mo ago
has your coworker ever hit you with "it doesnt work on my machine" thats the tldr explanation of it
Neto
Netoā€¢11mo ago
docker is a application to run "mini virtual machines" in your machine today they are the core of deployment
NoName Nomad
NoName Nomadā€¢11mo ago
like I said i work in google scripts, that why I'm trying to get into a new role
Keef
Keefā€¢11mo ago
No worries I am not here to judge or anything its just its a very broad domain More so than front end
NoName Nomad
NoName Nomadā€¢11mo ago
my team is "dev" focused, but really we're the engineering side of a sales department
Keef
Keefā€¢11mo ago
Can you stand up a web api yet? Simple thing like crud for a todo list
NoName Nomad
NoName Nomadā€¢11mo ago
what do you mean by "stand up"?
Keef
Keefā€¢11mo ago
I'd start there and just iterate features from it. Its very very dry but it does well with iteration
NoName Nomad
NoName Nomadā€¢11mo ago
like I get the concept of an api, never implemented one
Keef
Keefā€¢11mo ago
Deploy + write a service that will service an app
NoName Nomad
NoName Nomadā€¢11mo ago
at least not like a url based one like websit.com/api/dosomething
Keef
Keefā€¢11mo ago
I'd start there Reddit/twitter clone should get you that experience
NoName Nomad
NoName Nomadā€¢11mo ago
yeah that's the goal of my programming playground idea. have like an app that has an API to send code to, then have a editor somewar that has one post and one get api call
Keef
Keefā€¢11mo ago
All that matters is you show up and do You'll get to where you want to be with just that šŸ˜„
NoName Nomad
NoName Nomadā€¢11mo ago
yeah thanks, I'll probably look into docker once I have gotten the basics down for now I have a server I rent that I deploy stuff on