How do I become a software developer?
In 2010, I was a young lawyer who had never taken an engineering class or written a line of code. Lawyering is a miserable profession. I had read many stories about the high demand for software engineers and teenage millionaires, so one day I thought "Why Not Me?" and bought an O'Reilly book on HTML and CSS and began haphazardly reading it.
By 2014, I was a software engineer with six-figure job offers. Over the years, many people have asked for advice on how to land their first software job. This question essentially boils down to: How do I get paid to code?
The Fastest Path To Professional Software Engineering
Zero To Code is a book for people seeking a beeline to paid software development. Drawing on my lessons learned, it offers a combination of educational strategies, technical knowledge, and professional advice to land your first job as a software engineer. Once you're getting paid to code, you've made it.
Zero To Code wraps up with tips for learning on your job, advancing beyond junior developer stage, and having a successful, relevant, and long career.
The Zero To Code Approach to Getting Your First Software Job
1. build webpages and your résumé at the same time.
Zero To Code works by leveraging two facts:
- Building webpages is the easiest way to get someone to pay you to code. Web development has the lowest barriers to entry. If you look like you can decently code HTML, CSS, and JavaScript, you can get a job.
- Repetition (practice) is the most effective way that humans learn.
So how can you mostly quickly learn to build webpages and do so in a way that demonstrates your ability to potential employer? By building a bunch of webpages!
Zero To Code guides you through dozens of build-a-webpage projects from start to finish. By building many web applications, you get practice using software workflows and web technologies. Every project comes complete with instructions for saving your code to an online coding profile (on GitHub.com - the industry standard), which becomes a demonstration of your newfound skills and integral piece of your résumé.
2. learn from the top-down.
These webpage-building projects are presented in the form of professional programming assignments, complete with dialogue from characters like The Designer, The Team Lead, and The Backend Engineer. All project requirements are considered from a systematic perspective and then broken into smaller components. We code the components using HTML, CSS, JavaScript, SQL, HTTP, browsers, developer tools, version control, and the command line. Along the way, we also cover some computer science concepts like Turing machines, data typing, and algorithms. If this paragraph doesn't make sense to you, it will by the end of the book.
By the end of ZERO TO CODE, you have built and deployed data processing scripts and frontend, backend, and full-stack web applications. You will have systematically analyzed and built dozens of software projects from conception to deployment. You will have a strong rudimentary understanding of the software development lifecycle.
3. Launch a new career.
ZERO TO CODE wraps up with a roadmap for navigating the interview process and your first software job. You will learn how to land interviews for that first web developer position and how to speak confidently about your skills and abilities in them. Get advice for evaluating interviews when they go wrong and for negotiating higher salaries when they go right. Finally, we finish with a discussion of continuing your career and educational growth (for the two are forever interwined) after you accept that first offer.
Read Zero To Code
I am excited to announce that this book is nearing completion! Please consider supporting ZERO TO CODE's completion, maintenance, and improvement by buying a PDF from Leanpub. Any purchase there includes access to all future PDF versions.
Buy on LeanpubHowever, I understand what it's like to be broke, especially when pursuing a new career. If this describes you: Read it online for free.
Just come back and buy the PDF once you get hired!