News for hackers. Stuff that matters.

Self taught backend dev here. What's the best DIY way to get a CS background?

Hey folks. Self-taught backend dev here. I learned to code and got hired off LinkedIn thanks to my Github projects and fire in the belly. Sometimes my love of coding feels like a drug addiction :)

I've learned a lot from my first job but I get the sense that there are some things I'm missing out on with no formal CS education. I also work a lot and don't have a ton of free time.

Are there any recommendations that y'all might have for getting up to speed, or leveling up as an engineer? I work mostly in Python and Bash these days, but am open to any resources you think would be good.

edit: added better title

( 14 comments | 17 points | on HN )
Re:Self taught backend dev here. What's the best DIY way to ... by el_dev_hell on Tuesday January 26, 2021 @06:40PM (#25922374)
I'm also self taught (to an extent).

When I was making the transition to tech, I dived into the fundamentals very deeply with a collection of MOOCs (CS50 by Harvard is a great place to start regardless of your current skill level).

I also explored several MIT open courseware materials. There's a great experiment by this guy that's basically answering your questions directly: https://www.scotthyoung.com/blog/myprojects/mit-challenge-2/

If you're not familiar with object-oriented (OO) fundamentals, I'd probably start there since you're on the backend and will probably be exposed to OO eventually (perhaps already).

Re:Self taught backend dev here. What's the best DIY way to ... by epiphanitus on Tuesday January 26, 2021 @06:58PM (#25922513)
I'll check out those MOOCs, thanks!
Re:Self taught backend dev here. What's the best DIY way to ... by nenolod on Monday January 25, 2021 @04:57PM (#25909490)
George Varghese's Network Algorithmics is a good book for backend-oriented people to learn various fundamental CS algorithms.

It presents various CS topics from the perspective of backend optimization, so it's a good book for approaching theoretical CS from a background you already probably understand.

But, ultimately, the best asset for somebody with a CS background is not so much having immediate knowledge, but knowing where to acquire knowledge as necessary. If you have a general idea that for a specific scenario, you can acquire X knowledge in Y resource as you go along, then you're already doing quite well.

Re:Self taught backend dev here. What's the best DIY way to ... by epiphanitus on Tuesday January 26, 2021 @07:01PM (#25922543)
I'll check out Network Algorthmics, thank you for the recommendation.

>> But, ultimately, the best asset for somebody with a CS background is not so much having immediate knowledge, but knowing where to acquire knowledge as necessary. If you have a general idea that for a specific scenario, you can acquire X knowledge in Y resource as you go along

These days my goto resources are SO, Slack, Github issues, etc. Any recommendations beyond that? Or by 'where to acquire knowledge' do you mean 'how to categorize problems'?

Re:Self taught backend dev here. What's the best DIY way to ... by wikibob on Monday January 25, 2021 @05:56PM (#25910089)
Re:Self taught backend dev here. What's the best DIY way to ... by thedevindevops on Monday January 25, 2021 @05:34PM (#25909889)
Is there any opportunities to get a mentor in your current workplace? Most of what you'll be able to learn is from books and the existing codebase but not all of it, there will be places where decisions were made that cut corners and for good reason - but only people who have worked on it will be able to tell you why and what you should take from it.
Re:Self taught backend dev here. What's the best DIY way to ... by Raminj95 on Wednesday January 27, 2021 @05:23AM (#25926438)
I would actually love to know what resources you used to teach yourself backend development if that is possible!

To help out with your question this https://teachyourselfcs.com/ is a resource i have heard good things about.

Re:Self taught backend dev here. What's the best DIY way to ... by epiphanitus on Thursday January 28, 2021 @12:11AM (#25938463)
Thanks. Getting into this was purely accidental. I had an interest in machine learning that required more and more complex pipelines to feed it. I kept adding on layers of complexity until I was running a Kubernetes cluster and a database. Learning kubernetes meant learning about bash and containers, which were useful later.
Re:Self taught backend dev here. What's the best DIY way to ... by chovybizzass on Monday January 25, 2021 @04:26PM (#25909138)
Re:Self taught backend dev here. What's the best DIY way to ... by bradwood on Monday January 25, 2021 @04:14PM (#25908983)
Find an online course/material on data structures and algorithms.

Learn a lower level language (like c or rust)

Get up to speed on design patterns and OOP theory.

Re:Self taught backend dev here. What's the best DIY way to ... by mraza007 on Monday January 25, 2021 @09:04PM (#25911586)
Hey, Quick question how did you get hired while being a self taught developer
Re:Self taught backend dev here. What's the best DIY way to ... by epiphanitus on Tuesday January 26, 2021 @07:14PM (#25922624)
I used a combination of linkedin and my github projects.
Re:Self taught backend dev here. What's the best DIY way to ... by mraza007 on Wednesday January 27, 2021 @01:08AM (#25924863)
I see That’s nice
Re:Self taught backend dev here. What's the best DIY way to ... by sedeki on Monday January 25, 2021 @04:46PM (#25909377)
I'd check out Coursera, or get my hands on a good book.