TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

How much CS theory should I learn for my first entry level software job?

7 pointsby jobhdezabout 3 years ago
Hello guys and ladies,<p>I’m a self taught programmer who has been getting software engineering interviews. I’m applying to Software Engineering jobs that require little to no experience. I’ve studied SICP and HtDP. I have also studied Proofs and CLRS. So as you can see I have studied almost the core of a CS degree.<p>I have build some math systems in Lisp and Python but nothing great. 600 lines of code or less. Lately I’ve been doing web dev with Django and react. I have built a full stack web with these. So I’ve built a rest api and a frontend to consume this api.<p>Should I keep applying and just practice leetcode type of problems? Or should I study OS and Software construction from ocw mit? I am also interested in compilers. Should I do these first or can I keep applying to roles? That’s my debate right now. Thanks

7 comments

gamechangrabout 3 years ago
Dont worry about CS theory for your first entry level software job. It&#x27;s nice yes, but in order of importance it is very low for your first software job.<p>Try to build as much as possible and land your first job. You will feel overwhelmed for 1-2 years probably. Whenever that ends, start studying CS theory.
评论 #30657501 未加载
评论 #30657495 未加载
throwntodayabout 3 years ago
I would focus more on the complexity of each project in your portfolio rather than the quantity. If you have been maintaining a single app for a while, especially one used by others, it looks better than a dozen weekend projects IMO. Ideally projects should be related to the position you are applying for, but having a variety of things can demonstrate an ability to adapt.<p>As far as interviewing, since you are self taught I would make sure your CS fundamentals are solid as a lot of companies are using leetcode&#x2F;hackerrank problems as a filter. Dynamic programming, data structures, time&#x2F;space complexity, algorithms. If you grind enough problems you should have a good understanding of these things but it&#x27;s important to be able to explain them too, at least in an interview.<p>You can join any number of CS dev communities and you&#x27;ll hear the same thing. Getting your first job at least is a massive grind, just keep applying non-stop, don&#x27;t get discouraged. And DONT burn yourself out in a single day by applying for 100 jobs thinking it will help. Best of luck to you.
评论 #30658614 未加载
评论 #30657582 未加载
mettamageabout 3 years ago
I studied CS. It actually depends on where you want to go. For web dev, I offer the following advice.<p>It&#x27;s much more important to be able to handle big old-ish codebases than it is to be able to handle all CS theory. Though, I&#x27;m sure it&#x27;s different with FAANG. With FAANG, all that matters is passing the interview ;-)<p>I have almost never needed my CS theory. It&#x27;s nice to know but not really applicable when you need to extend an ACL (security permissions for users) or refactor the i18n export function. What is needed is understanding how to quickly navigate in a codebase while touching few to many files (depending on the task).<p>How to get this experience? I don&#x27;t know, I studied computer science. I think an internship is best? Perhaps contributing to an open-source project? Perhaps creating your own side project?<p>I&#x27;d think along those lines. Though it could be that other HN&#x27;ers have a totally different perspective. I&#x27;m curious what they have to say.
kazinatorabout 3 years ago
&gt; <i>So as you can see I have studied almost the core of a CS degree.</i><p>Just not crammed for the long exams, or pulled all nighters to get assignments handed in on time and such.<p>SICP covers a few topics from computer science, just not items in a CS curriculum like, oh, operating systems, networking and distributed systems, databases, computer graphics, software engineering, computer architectures, machine learning. Plus CS degrees require non-CS courses, such as math: advanced calculus, linear algebra, statistics. Electives in the humanities can be no picnic. Philosophy, yikes.
spacemanmattabout 3 years ago
If you can build things with code and talk about them, you have the applicable skillsets. Lean into that! For application development, CS is definitely a relevant background discipline but not the only background discipline.
slerpyabout 3 years ago
A good GitHub repo will speak for itself and being able to explain what you claim you know on your resume will land you a job.
评论 #30659783 未加载
goldnameabout 3 years ago
A typical first job will need you to prove the axiom of choice and be able to build a quantum turing machine.