Two years ago I wrote a book on how to get your first job as a software engineer. You can read the entire book here.

This is the book that I needed to read when I graduated from college. I left school with a good theoretical background in programming but with no idea of what was needed from me as a professional programmer. If you find yourself in a similar situation, this is the right book for you.

I had two categories of people in mind while writing this title:

  1. Those who have graduated from a university and have a foundation in programming but do not know what companies need from a programmer. This was me nine years ago.

  2. Those without a degree, but who have taught themselves programming, and are looking to fill the gaps in their knowledge as they start applying for professional jobs.

Often, the programming knowledge gained from college classes or online courses is not complete enough for success as an entry-level software engineer. Whether you’re self-taught or university-taught, there will be some gaps in your knowledge. This book is designed to fill those gaps.

It also identifies common pain points in team-based software development and discuss professional practices meant to address those pain points. Knowing and adhering to these practices creates a better candidate when applying for jobs.

I intended to make this reference as modern as possible given today’s market and tools. It is also a very high-level book. Rather than inundating you with the details of specific topics, this book exposes the reader to a wide variety of topics and highlight their importance in the professional workplace.

You can read the entire book here.