This book is for informational purposes only. Except when an external source is cited, everything in the book is the author’s opinion. The author makes no guarantee about the correctness or accuracy of any content in this book. Furthermore, you may disagree with and/or find certain content offensive.

Read at your own risk. Do not continue reading if you do not accept full responsibility for all actions you take as a result of reading this book. The author is not liable for any damages including, but not limited to, academic failures, career path mistakes, financial loss, feeling upset, and physical/mental injury.

Chapter 2
Why Study Computer Science?

Diana works as a software engineer at a mid-sized tech firm in the California Bay Area (a.k.a. Silicon Valley). She feels good about her company’s product: technology to enable millions of users and thousands of companies across the world to hold virtual meetings. The ability to meet virtually enables companies to scale all over the globe.

Diana had a humble upbringing but studied hard and majored in computer science at the best in-state university available to her. She took out $50,000 in student loans for four years of tuition, room and board. Each year, she earns $155,000 and pays $50,000 on California and Federal taxes, $40,000 for a studio apartment, and $10,000 for food. Diana saves $20,000 towards her 401(k), $5000 for vacations and pays down her student loan debt by $30,000 per year. In 2 years, her debt will be repaid. 5 years after that, she will have at least $150,000, enough even for a downpayment on a modest house. She can get married and start a family, fund a side business related to her favorite hobby, live a comfortable life on her own, or do whatever she wants.

Diana doesn’t exactly like software engineering. Sometimes, she has a headache after spending four hours chasing down a bug in the code, but it occasionally feels rewarding after finally solving the problem. Other times, it’s demoralizing seeing the lack of other women in tech, or a guy making an awkward comment about women in tech. Overall, Diana has a lukewarm feeling towards her job, but at the end of the day, she invested a ton of money in her education and plans to collect the great returns via her job.

Analyzing The Three Dimensions

Let’s step through the three dimensions for Diana’s software engineering job.

Impact. Software usually makes a broad impact because the scale is nearly unlimited. While traditional industries have to actually produce a physical product to impact a customer, software has few physical barriers because anyone with a computer and internet can use software. In Diana’s situation, her company produces meeting software that enables companies to expand to remote offices. Virtual meetings help businesses to grow exponentially: gone are the days of trying to do multi-way conversations over telephone. Now, people can see each other’s faces, share their computer screen, or draw on a virtual whiteboard. With virtual meeting technology, companies can easily start offices in other countries and continents to capture more market share.

Enjoyment. Diana doesn’t enjoy programming. Sometimes it feels great to chase down an elusive bug, but this type of work is definitely not her first choice. Diana also notices the lack of diversity in the industry and she may feel intimidated when not part of the majority. Most companies try their hardest to make people of all backgrounds and identities feel welcome and I expect it will get better in the coming years.

Money. As mentioned before, software engineering jobs pay a lot. After taxes, living expenses, and 401(k) contributions, Diana can net around $30,000. Furthermore, if Diana continues working hard for a few more years, she can be promoted to a senior software engineer and earn closer to $200,000 per year. Most importantly, Diana has a practical outlook on her job: she understands she invested $50,000 on her college tuition to snag an excellent software engineering role, and she expects solid returns through her job earnings.

Prioritizing your Dimensions

Assuming you’re heading off to college soon or you’re in college right now, and you don’t have wealthy parents on whom you can rely forever, let’s discuss the priorities among your three job dimensions. These are my practical recommendations.

Money is your Foundation

Money should always come first. You can revolutionize the world or have the most enjoyable job in the world, but everything will come crashing down without a stable foundation of money. If you have overdue bills lurking in the back of your mind and your landlord is about to evict you, then you will never have a stable life to work a fulfilling job, let alone put food on the dinner table.

Currently, there are many degrees that ensure a steady foundation in the money dimension and computer science is the safest and most-rewarding haven. Almost all companies need software engineers and demand naturally increases salaries and ensures you are never out of a job. Regardless of what major you pursue, you will dedicate four years of your life and college tuition. It makes sense to invest that time and money in the degree with the highest job stability and income.

Impact and Enjoyment

Once you set up your foundation with a stable source of income, you can focus on the other two dimensions: impact and enjoyment.

Do you disapprove of big tech’s mission and impact on society? You can save up money and then quit your job for a new industry. You could apply your computer science knowledge to help a pharmaceutical company simulate a novel drug fighting a virus. Or you could help physicists at a particle collider capture petabytes of data generated from atomic collisions in their search for a new subatomic particle.

Is there absolutely no way you’ll ever enjoy software engineering? Is art, music, literature, or another field more your calling? Most software roles rarely require more than the 40 hour work week so you have plenty of time in the evenings and weekends to pursue your passion on the side. Plus, if you try to profit off your side-work and it isn’t an overnight hit, your software salary will still pay the bills. Or if you save up a couple million dollars, which is definitely doable within a decade or two at top-tier tech firms, you can retire early and pursue your true calling full-time.

Review Your Goals Again

 It’s important to know what you want to achieve before you embark on a journey through college. Take some time to review what career you want to pursue. If you like the end results from a career in software engineering, then I encourage you to choose that as your goal.

You may be having qualms about a journey towards a software engineering career: “What if I’m not made out for computer science?” or “What if I can’t reach my goal of majoring in computer science?” No need to worry because we’ll address those qualms in the next chapter. You’ll see that as long as you remain motivated and keep your goal in sight, you are capable of succeeding. This book is your guide for a smooth journey to your goal.