Nowadays we are surrounded by tons of practitioner courses and masterclass about the mainstream framework or programming language. In this way, many of my colleagues at work and myself included have been questioning about the necessity of doing a college to ingress at Software Engineering area.
In this text, I want to share my humble opinion about that, but a little disclaimer before: this is my personal opinion. It’s not an absolute truth neither a rule. I will share with you, my reader, my point of view based on what I saw and studied along my programming journey.
On first place, why we should do a college?
Despite humanity had an enormous advance in technology along the last millennium, we still bet on a classic model of teaching and learning. Classes with hundred of students, dozens of works to do, years of studding, established curriculum and other things that we are used to.
Of course, many colleges had been tried to implement new models and breakthrough this classic teaching-learning paradigm. Yet, many people still have the thinking of college be a requisite for working at your area.
Well, talking only about tech area we have a kinda of certain. You don’t need to do a full college to work at it. At least if you only want to do the minimum. Today many frameworks are already really abstracted. I will take for example Java Spring. If you want to do a simple CRUD to attending an e-commerce requirement, probably the deep implementation of algorithms or data structures behind that framework will pass unnoticed. And there’s no problem into that, you only want to build a simple CRUD for an e-commerce website.
But, if you want to advance to other critical scenarios like financial transactions, health software’s, or problems where you error percentage need to be minor as possible then the practice knowledge of using a framework will not serve. In those cases, learning the fundamentals of computing like those I wrote before is essential. Efficiency of a software, space & time cost of an algorithm, which data structure is better in your case, what architecture is better, how to ensure that the required software will be delivered to the client respecting costs and market time. A masterclass will not teach you all of that.
So what’s the true advantage in doing a college?
When we talk about software engineering, we’re talking more than just lines of code and what stack use. The thinking needs to be with the premise: How this decision will help to deliver my costumer desire more quickly, safety and efficiently? To discern about it, you need to learn more than the fundamentals, need to have a least of experience that a college can provide to you with works or arguing with you colleagues.
Data Structures video by Willian Fiset
In resume, if you want to explore new steps into your programming career, in certain time you’ll need to learn more than the day-a-day knowledge. Breakthrough needs that you know deeply the frameworks and what’s behind it.
If you want to end in the basic, that’s okay, there’s nothing wrong with that too, but to lead the innovation, maybe you will need to step back and learn those simple, but yet complex things.
Top comments (0)