Self-Taught vs. Formal Education in software engineering.
For some people, it can be hard to believe that self-taught software engineers are capable of working for big companies; however, many studies have proved it wrong. A survey conducted by Stackoverflow in 2016 demonstrated that over 69% of developers considered themselves self-taught engineers.
So, this article will highlight some pros and cons of being a self-taught software engineer. Here you’ll find some of the most exciting findings I’ve encountered throughout my professional career — however, this should not be understood as objective truth. People are unique, and so are their conventions.
There are many different paths one can take to become a software engineer. Some people choose to get formal education through university/college degrees. Others opt to teach themselves through online resources and hands-on experience. Both options have advantages and disadvantages.
Formal education can provide a more structured learning environment and the opportunity to learn from experienced instructors. In some countries, a superior education degree can lead to higher salaries, finding a job quicker, and sometimes it allows you to find relocation opportunities to other cities or countries.
On the downside, formal education can be expensive and time-consuming. Sometimes, in industries like software engineering, a degree might not be relevant for getting a job. Compared to traditional students, self-taught individuals have more flexibility in their learning paths, allowing them to be more up-to-date on the latest technology as they can learn at their own pace.
Nevertheless, self-taught individuals might have a more challenging time finding a job. Historically, potential employers tend not to take self-thought professionals as seriously as formally educated individuals. For self-thought professionals facing the last scenarios described, my main question would be: Is working for a company that only cares about a degree and not the value you can provide the workplace you want for yourself?
Self-taught engineers tend to be More independent and resourceful.
Self-taught engineers are used to finding their answers and solving problems independently. As they don’t have teachers to direct their every question, it makes them more valuable to employers looking for employees who can come up with creative solutions and think outside the box.
I have met exceptional engineers from various professional backgrounds approaching software problems and algorithms distinctively and fashionably.
Graduated engineers know the big picture.
Graduated software engineers are often more knowledgeable about system designs and better understand how systems work. Since experienced instructors taught them, they tend to know how all the pieces of a project fit together. It’s worth mentioning that this lack of knowledge mainly applies to entry-level self-taught engineers.
Self-taught engineers often don’t have the same level of job security as those with formal education.
Professionals from different formal education backgrounds can play a significant advantage in corporate jobs, commonly in the finance and government sectors — since these jobs often require a degree by protocol. On the other hand, self-taught engineers with no formal education background will not have the versatility to enter those kinds of professional fields.
Self-taught engineers are more in touch with the latest technology.
Self-taught engineers are used to learning about the latest tools and trends as soon as they’re released. Being up-to-date puts them in an advantageous position on the market, as most employers are always looking to implement the latest and best technologies.
Networking is hard for entry-level self-taught engineers.
Self-taught engineers often don’t have the same level of networking as those with formal education. However, many self-taught engineers work hard on their personal brands to get noticed by employers.
Building a personal brand is essential not only for self-taught engineers but for any professional. Building a personal brand matters because it can introduce anyone to more people faster; an employer will almost always look up the social media of who is hiring, so for a job seeker, that is the moment for them to show up who they are.
Having said that, these facts are not written in stone, and situations are always unique for each individual. Neither being a graduated software engineer, nor a self-taught engineer, will guarantee you a better career. At the end of the day, your performance as an engineer will not depend on any of those decisions but on how you approach learning.
Ultimately, getting a formal education or teaching oneself depends on the individual and their specific goals. If I’m completely honest, there is no single right or wrong answer to choosing the self-taught or traditional education path. Personally, I do not regret taking the path of becoming a self-taught software engineer. It has been a fantastic experience of constant learning and pushing myself to be the best engineer I can be. Being a software engineer has changed my life.