How to Become a Software Engineer — the Three Ways

Alex Shishlyannikov
Tech x Talent
Published in
8 min readAug 9, 2020

Whether you just started to look for a career shift or graduated from a high school and want to kick off your career as a Software Engineer, there are a few ways to do it.

In this article, I have summarized risks, financials, advantages and disadvantages of the three know ways to become a Software Engineer based on my experience. Going through my career I have met a lot of great Software Engineers that came from all of the following backgrounds.

Going to a College

Photo by delfi de la Rua on Unsplash

Risk wise the college path is the safest and sure way to get a Software Engineer job when you graduate, even though companies like Google and Apple have removed college education as a job requirement for some of the engineering position, all of the recruiters for these companies are still going to be looking for a proof that a candidate can pass the interview, and so far there is no better indicator of that for a beginner engineer than a college degree.

It is definitely the most fun way of becoming a Software Engineer. Attending college parties, hanging out with other students, making lots and lots of new friends, and all other countless perks of college life that are not necessarily moving you towards your dream job, but might be still worth it in a long run, after all in many years the girl that sits next to you in the class might be a CEO of a huge corporation.

As a financial decision going to college becomes harder and harder every year, college tuition keeps growing, and even with a high salary of a software engineer paying off five to six-digit debt is going to be very challenging.

So out of the three ways of starting your career as a software engineer, this one is by far the most expensive and the one that is going to take the most time, but will require the least effort, is going to be the most structured, will give you great knowledge in computer science fundamentals and is going to set you up with the paper that is desired by recruiters.

Summary

When Does It Make The Most Sense

If you have just graduated high school, don’t have big financial responsibilities or any big plans for the next 4 years, prefer a very structured and sure way to get a job, then the college, is the choice that makes the most sense.

Advantages

  • The college will give you great computer science fundamentals that will help you throughout your career
  • Opportunities for corporate internships that can get you into sight of the greatest employers and give you the work experience
  • College degree is still one of the most important things recruiters are hoping for in a beginner software engineer
  • Will let you make a lot of connections and build your soft skills
  • The most structured approach to starting a new career, that will eliminate most of the uncertainties

Disadvantages

  • The most expensive option, 5–6 figure debt is not a joke even with a high salary
  • Will take a very long time to complete, 4 years is by far the longest path to a new career
  • Outdated learning material and style of teaching

Going to a Coding Bootcamp

Photo by NESA by Makers on Unsplash

Coding Bootcamps is the new way to get an education for your next career transition. With a structured approach to learning, shorter, more focused curriculum, and smaller groups of students — coding bootcamp is a great rival to a college program.

You no longer need to spend 4 years in college and learn a very outdated technology, most of the coding bootcamps will promise to get a candidate ready to pass an interview in 3–6 months. They will mostly focus on teaching you practical skills that are required for the job. They might even help you to get a paid internship or even a job right after you complete the program.

The biggest challenge with a coding bootcamp is to pick the right one, most of them promise great results and almost certain 6-figure income right out of a bootcamp, but the reality is that there are schools that will bring you great results and those that are in the blacklists of recruiters.

Back when I was working for a Microsoft contractor, we would receive countless resumes from one very popular coding bootcamp, but after plenty of failed interviews, our recruiters and engineers decided to blacklist all applicants from this school because it seemed like reading the same resume with different names to a recruiter and applicants would fail one interview after another wasting a lot of engineer’s time.

On the other hand, while working for a startup in Seattle, I have met a great engineer that graduated a small coding school somewhere in Minnesota, so the results will vary greatly based on the bootcamp and the student himself, that is why coding bootcamps did not yet become a standard of education for an engineer, although that is certainly where the things are going.

Financials may also be very different when it comes to getting a bootcamp certification the prices will range quite a bit from 4,000$ up to 40,000$ in some cases and that is just for a few months of classes!

So what is the difference between 20,000$ classes and 30,000$ classes and how do you pick the best one? To be honest, it is very hard to tell, coding bootcamps are still new and the best way to pick one is probably by surfing a lot of internet in a search for feedback, you might also consider searching online for that school alumni and asking them about their experience.

Summary

When Does It Make The Most Sense

If you want to get into the new career as fast as possible while following a structured program and a pretty hefty fee is what you are ready to pay for a fast result then coding bootcamps are the perfect choice for you. Just don’t forget to stand out with your resume and a portfolio from other students.

Advantages

  • Coding Bootcamp is the fastest way to get into the software engineering field
  • Get taught mostly practical skills so you can build your own apps and be productive on day one
  • Structured learning is very important when you are first learning about such a big industry
  • Motivated peers and teachers will guide you through interviewing phase

Disadvantages

  • A very new format of a school
  • Hard to pick the right one
  • Prices vary and can get very high depending on the school
  • The industry has a hard time evaluating the schools and is generally cautious of alumni

Going Self-Taught

Photo by bruce mars on Unsplash

And one of the most challenging and uncertain paths to becoming a software engineer is teaching yourself, but despite that, the trend is definitely on the rise.

With huge Fortune 100 companies removing Bachelor’s Degree from their job requirements and the rise of online education, becoming a self-taught software engineer is easier with every day. When huge companies officially removed those requirements I didn’t take it as a surprise, since even before that I was able to meet self-taught professionals in all kinds of companies, from startup to Microsoft that I had a chance to work for being a self-taught developer myself.

With the rise of platforms like YouTube, Udemy, Pluralsight, and plenty of others, it is very easy to find yourself an online mentor that will teach you the technical skills required for the job in record time. But it is a blessing and a curse since there is so much information that is available to you right away, algorithms that push you new influencers, new tech stacks and new ways of doing things all the time, that it will be a great challenge to figure out the right path for a complete beginner.

Overcoming this overwhelming decision fatigue is very possible though and the tip that helped me greatly in my journey was — find a mentor. Find somebody in the industry that you know and can trust, ask them for the easiest way for you to get into the industry without a formal degree and follow their advice to the fullest, although you will still have to set up a complete curriculum for yourself it is going to be way easier when you can ask a mentor if the skill that you are looking at is worth pursuing.

Financially becoming a self-taught developer can be very cheap, Udemy runs discounts that never stop, so a great course on technology could cost you just 10$, or you could even find the similar one for free on YouTube. But this is also one of the great traps, that is called Tutorial Purgatory when you read and watch every tutorial that comes your way and you don’t feel ready.

Since teaching yourself technically has no end, the most challenging part of the journey is the arrival because there is no graduation or a certificate that awaits us, in the end, it just never feels like you are done and ready to start applying, so you just keep learning and learning, in those moments it is the best to just start applying, the sooner you start sending out your resume, the sooner you will get a chance to try yourself at a real interview, which will show you exactly what you have missed and where did you go too far.

Summary

When does it make the most sense

If you already have a great perspective on the industry or if you can find yourself a reliable mentor, the self-taught approach can be the cheapest and most convenient for you. Just don’t forget to keep yourself going and not giving up in the process, since learning without peers and structure will require a lot of self-discipline.

Advantages

  • The cheapest and potentially free way to get a profession
  • Can get job-ready faster than going to college

Disadvantages

  • Completely unstructured program
  • Recruiters will not trust your abilities to pass an interview, so your portfolio better be very impressive
  • No time limit can get completely stuck in Tutorial Purgatory
  • Hard to navigate the industry and find the right path without a mentor
  • Picking up computer science fundamentals is very challenging on your own
  • No peers to get help and share the experience
Photo by Denys Nevozhai on Unsplash

Final Thoughts

Whichever route you will choose, the most important thing is to make sure that the end result is what you really want. And when the decision is made that becoming a software engineer is absolutely worth it for you then any path is the right one, because you know that getting there is a certainty.

--

--