In recent years, one of the jobs that has gained a lot of traction is software engineering, or as most people call it, for short, programming.
Being a programmer is one of those jobs that can be very lucrative and satisfying at the same time. If you manage to get a job in a big tech company or even a startup, your average salary will be higher than many other positions.
This growth in popularity followed the increase in demand for programmers. As our dependency on technology increases with every passing day, the need for people to build this technology will also increase. Despite that increase in demand for more programmers, getting a job as a programmer may not be the easiest to do. And getting a job is not even the first challenge you’ll face if you decide to be a programmer; the first thing you’ll need to decide is how to learn the basics of computer programming.
Generally, you don’t necessarily need a degree to become a programmer; you can attend a Bootcamp or self-study the basics and build your projects.
But, one of the questions that baffle many beginners when they start their programming journey is, which road is better to take?
The vast number of materials, resources, and “how to become a programmer” articles can be overwhelming, especially if you’re just starting up. That’s the reason why I decided to write this article, to help people thinking of joining the field to decide which path to take and how to navigate their way around the tons of resources available.
If you ever tried looking up “how to become a programmer,” you probably ended up with three options: either going to university for computer science or any other technical specialization, attending a programming Bootcamp, or surf the web and self-study the knowledge you need. So, what are the advantages and disadvantages of every path? How do you decide which one to take? And do they make landing that job easier?
Let’s go ahead and answer these questions one by one, starting with the differences between the three options.
Getting a degree
When people think of careers, they often connect them to a degree. If someone works as an airplane engineer, you must go to an engineering school, and if you’re a doctor, you need to go to med school. That’s why things get a little confusing when it comes to programming roles, not just because different degrees can lead you there, but because sometimes, you can be a programmer without a college or university degree on the topic.
So, is getting a degree in computer science worth it?
Pros of getting a degree in computer science
1. You will go through the history of programming. Programming is not a new concept, but it’s an ever-developing one. Learning how it all started can help you make sense of where it’s going and how you can be a part of that journey.
2. You will learn the fundamentals of computing. If you go to college for a CS degree, then you will study maths, compilers, and interpreter design, how different systems work, and how you can develop your own.
3. Some companies prefer applicants who have a CS degree. Big tech companies often prefer people with technical degrees to those without one, just because you have proof of your knowledge and skillset.
4. As a university student, you can get internships at big companies to apply your knowledge and gain experience. Getting an internship if you’re not a student is often a challenging task.
Cons of getting a degree in computer science
1. It’s very expensive and not feasible for everyone. Higher education is not cheap at all. Even more so, if you decide to go to university for programming, tuition fees for technical universities are extremely expensive. The exact costs will depend on the university. It’s a financial commitment that not all people can afford.
2. It’s a considerable time commitment. Technical colleges often require 3-4 years of commitment to complete a degree. This can be a lot of time, especially if you’re older or want to start your career faster.
3. The knowledge you gain is only theoretical. Yes, knowing all the basics behind a topic is excellent. Still, during a degree, universities often focus on the theoretical aspects of a subject rather than the practical aspects.
Attending a Bootcamp
Over the past couple of years, the number of technical bootcamps that teach you essential, practical skills about a specific technical topic has increased rapidly. For so many people, attending a Bootcamp is the best option, especially if they already have a degree or are thinking about changing careers.
Pros of attending Bootcamp
1. It is more cost-efficient than pursuing a degree in computer science.
2. You will learn practical knowledge about the one aspect of computer science that interests you. Bootcamps are often created for specific topics, such as web development, mobile app development, and data science bootcamps.
3. They’re a good choice if you want to start your career fast. Finishing a Bootcamp can take any time from 3 to 6 months, much shorter than the 3 or 4 years needed to complete a university degree.
4. They provide an excellent chance for hands-on experiences and gaining practical knowledge.
Cons of attending a Bootcamp
1. It can be quite expensive. Yes, Bootcamps are way cheaper than attending university, but it is still quite an expensive option. Some bootcamps can cost at least £5000, sometimes more – which is not always feasible.
2. Most bootcamps promise job placements within 6 months of finishing the program. However, that’s not always the case. And even if you get a job after a Bootcamp, it often pays less than you would expect or hope.
3. Bootcamps often don’t go deep or cover the basics of computing. Because they focus on what’s applicable, graduates of bootcamps may be disadvantaged when it comes to knowing the fundamentals of computing.
Self-study
The final option you can follow to become a programmer is to entirely depend on yourself and self-study everything you need to know about the field.
Pros of self-study
1. You can start whenever you want. Most universities and bootcamps have set starting and finishing dates, which can be a little restrictive. But if you’re studying on your own, you can start whenever you want and follow your own pace.
2. There are tons of accessible and affordable online resources that you can use to learn all about programming.
3. Self-studying will teach you to be independent and increase your ability to learn a new skill on the go, which is a great skill that all programmers and software engineers need to have.
4. With no restriction on what you can learn, you can go deep on topics that interest you and shallow cover ones you need to know but don’t want to go deep into.
Cons of self-study
1. It’s challenging to set a clear roadmap of topics you need to learn to achieve your goals. Both Bootcamps and university degrees have developed curriculums that you follow to graduate. However, that’s not the case if you’re self-studying; you will need to create your own curriculum and roadmap in that case.
2. The best thing about going to university or attending a Bootcamp is the social aspect of them. The chance to meet people going through the same journey can help and support you reach your goals. This is not available when you self-study, and so you tend to feel isolated.
3. It’s easier to lose focus and motivation when you’re studying on your own.
4. You will need to have solid proof of your skills to get the job. Since you don’t have a degree or a certificate confirming your skills, you will need to build many projects that prove to companies that you can perform the job.
Final thoughts
In life, there are often different routes you can follow to reach the same destination. The same is applied if you decide you want to pursue a career in computer programming. Many paths can lead you to that goal. You can get a degree in computer science or a related technical topic; you can attend a Bootcamp or decide to study it independently.
Each one of these roads has its own challenges and obstacles you will need to overcome. But, none of them guarantees that you will get hired right away and make tons of money. I always believe that’s not about how you got here, but about the person you are and what you’ve learned during your journey.