
Ask HN: How to go from zero to software engineer? - pencilorpen
I&#x27;m a recent grad from biology interested in becoming a software developer (bit late?).<p>I&#x27;m particularly interested in one day working with the big four. Once again, I&#x27;m not sure if this is a bit late, considering I have absolutely no experience.<p>The most common area of software I know of, and heard is most beginner friendly, is web development. So I guess that would be one of the areas to focus on?<p>How would I go about creating a roadmap from zero to software engineer? I prefer to work in a very organized manner. I understand there is the programming side, but also a theoretical computer science component (algorithms, data structures. Etc.) that many big companies like to ask in interviews. I&#x27;m guessing I&#x27;d have to venture into new math territory (discrete math?).<p>Overall, what would be the roadmap I&#x27;d take to become a software developer, most likely in the area of web development? As well as, what is the likely timeframe I would expect to finally land my first job?<p>Thanks
======
ThrowawayR2
> _The most common area of software I know of, and heard is most beginner
> friendly, is web development. So I guess that would be one of the areas to
> focus on?_

It's worth bearing in mind that pretty much everybody else has heard that web
development is beginner friendly and flocked to it _en masse_.

> _I understand there is the programming side, but also a theoretical computer
> science component (algorithms, data structures. Etc.) that many big
> companies like to ask in interviews. I 'm guessing I'd have to venture into
> new math territory (discrete math?)._

You have it more or less correct. The core of a CS degree is a data structures
course, an algorithms course, and a discrete mathematics course and you will
want to know these topics well. A bit of searching will reveal the names of
the current well-regarded textbooks for each area.

You will also want to have gone through at least one textbook on software
engineering as well as one guide on good coding practices, e.g. McConnell's
"Code Complete".

To be competitive with other candidates for the big 4, I would suggest
skimming both a computer architecture course and an operating systems course
as well.

------
AbenezerMamo
Try CS50 :) It's Harvard's free online course. It'll take you from 0-1 really
fast. 1 to 100 is experience from building stuff. Good luck!

~~~
levlaz
Agreed, I think CS50 is an excellent intro.

------
andreasgonewild
Write lots of code, in different languages; find increasingly real problems to
challenge your skills. Unless, of course, you're just interested in becoming
another whatever; then you're better off memorizing buzzwords and JavaScript
frameworks.

