Simply put, psychology defines our decisions (professional, personal) as being fear-based or love-based. We either choose something out of enjoyment, for making us feel good, rewarded (all under the umbrella of love) or out of insecurity, FOMO etc. (fear-based).
In the realm of software engineering, until 2012-2014, things were pretty predictable and secure: developers and their skills were vital to any business irrespective of being a bank, a SaaS platform, they all required technology.
Starting with the democratization of software development, this power was not anymore solely in the hands of engineers. The need for digital transformation, brought along the need for faster delivery of business applications.
This forced companies to search for solutions outside of this department that by then proved to have the experience, possessed the needed skills to come up with a solution: that’s how the first low-code platforms appeared. It’s been 6 years since Forrester officially coined this term. In this time both businesses and the software engineering job market transitioned from a trend to strong demand, from something exciting, rather cool to something mandatory. (Questions sourced from Quora)
As for the last 2-3 years, the interest and concern is for sure there: software engineers are wondering if they should switch to low-code or if this is only a trend that will pass in a couple of years. Like any dilemma, rather than being a black and white answer, the healthy answer lies in nuances and all the grey hues.
Transition periods can seem confusing and hard to navigate and some people will find themselves in a crisis: actors from silent films when the era of sound came, artisans when industrial revolution hit, they all somehow reiterated the same feeling. It did not mean everything they knew by then was completely taken out of the picture but used as a launching pad for evolution, progress, it pushed people and society for better.
The exact same thing is happening with low-code engineers. They will always be vital within any company, but the way they work will witness big changes.
Without knowing the graphical symbols of a letter from a language, one won’t be able to write, nor read. The same goes with coding: among US companies this skill is considered as literacy.
Essentially, low-code exists thanks to developers. Before there was low-code there were developers with a strong set of hard coding skills. And they are not only responsible for its genesis, but for its maintenance. Any extension a low-code platform might need is dependent on their experience and knowledge.
A second aspect where engineers perform best is for example in the case of delivering business applications: low-code does an excellent job at making everything more efficient about that, but without being able to understand complex rules and logic (for business transactions for eg.) you don’t know how to simplify them.
Being able to architect and build APIs which can be used by this new breed of application will eliminate the risk of a whole array of issues. What a low-code engineer basically does is short-circuiting a process (which is awesome since it saves so much time), but it can also become a burden. This is for sure the case of complex situations, where traditional developers will play a key role, but for simpler situations, low-code engineers with no previous traditional coding experience have no reason to worry. If given basic training, any non-technical employee can rapidly assemble software tools.
Focusing on strategic work will also be part of software engineers irrespective if they will possess low-code skills on top of their traditional ones or not. Low-code will only give them the means to eliminate the need of writing repetitive lines of code, but when it comes to a higher vision and if a solution is feasible from a technical standpoint, that will be their call. And their experience with hard coding will have a strong say in this.
A third aspect is that at currently there’s no one-stop low-code platform that will cover all the application needs on the market. Some are working great for e-commerce, others are doing a great job for back-office work, but if you want that will cover different needs altogether, you’ll need a software engineer to take charge of that. Afterwards, this can be easily tackled by a low-code developer.
Which leads to the last, but not least important aspect: teamwork!
A revolution does not come to destroy everything that was built by then, it is born out of a pressing demand on the market. Low-code did not come to threaten the old ways of coding, but to make it more efficient, faster and definitely more exciting both for engineers and companies.
Low-code pushes software engineers towards collaboration, it forces them to improve their communication skills, to better translate business needs, getting closer to clients, being in tune with their needs.
Low-code brings at the same table both the business owners, those with solely engineering skills and those who possess both of them. Low-code is an invitation for teamwork, it blurs the lines between departments and at this table, there’s plenty of room for everyone.
To recap, why there's no need to fear the future of developers, but rather see it as an opportunity:
Low-code started thanks to developers and they will contribute to its evolution. Complex situations can be broken down into simple ones due to strong software engineering experience. It's all about collaboration: low-code can not exist without hard code, hard code wouldn't have progressed without low-code, same goes when it comes to teamwork, the interdependence is there.
Is this something you’ve dealt with as a software engineer? Were you worried about your future or simply confused if you should invest in this new set of skills? Let's talk about it in the comments!