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
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
alright I think this has given me some ideas, thanks all
Pick a hobby or something you're interested in and do a project around that. It will make it much easier to stay motivated.
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
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
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
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
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?
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
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
If you have some experience just jump to the book by kleppmann
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?
Designing data intensive applications by martin kleppmann
if too dense try web scalability for startup engineers by artur ejsmont
alright I will note those down for later, thank you
š
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
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
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
what is docker? I have heard people using it but never saw the point?
oh no
oh, sorry? new post question?
has your coworker ever hit you with "it doesnt work on my machine"
thats the tldr explanation of it
docker is a application to run "mini virtual machines" in your machine
today they are the core of deployment
like I said i work in google scripts, that why I'm trying to get into a new role
No worries
I am not here to judge or anything its just its a very broad domain
More so than front end
my team is "dev" focused, but really we're the engineering side of a sales department
Can you stand up a web api yet?
Simple thing like crud for a todo list
what do you mean by "stand up"?
I'd start there and just iterate features from it. Its very very dry but it does well with iteration
like I get the concept of an api, never implemented one
Deploy + write a service that will service an app
at least not like a url based one like websit.com/api/dosomething
I'd start there
Reddit/twitter clone should get you that experience
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
All that matters is you show up and do
You'll get to where you want to be with just that
š
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