With every new technology and innovation come new roles and skills that were not possible or needed before. “Software developer” is a good example among thousands of new professions that emerged in the 20th century. The 21st century, unsurprisingly, introduced many new technologies and techniques including, but not limited to, 3D printing, gene editing, crypto-currencies, online social networks, and so on.
With regard to software development, an innovation called low-code development steadily evolved and became ripe in the second decade of the century. And with it arose a new role: the Devigner, which is a combination of Developer and Designer.
In this post, we provide a brief introduction of low-code development, explain the new profession of Devigner and explore possibilities for companies to take advantage of this new innovative way of software development, which is faster to develop, cheaper to produce and better in quality.
Low-code approach: Creating digital solutions with minimum coding, testing & deployment
Back in 2009, I was developing web applications based on Liferay, a platform I would not recommend anyone using after 2010. At the time CDs were compared to floppy disks, Liferay was considered a powerful web platform for content management in which different applications could be written based on a frameworks it provided. An innovation Liferay was offering was automating part of the coding process. It was called ServiceBuilder, and it offered automatic generation of database tables and a bunch of J2EE-based code from an XML file. This way developers did not have to create and maintain their databases separately. It was a considerable step towards automation. Sadly, the platform had become too complex to allow more innovative solutions towards more low-code development.
At almost the same time, another approach was introduced by innovative platforms like Drupal, WordPress, Salesforce and, last but not least: Atlassian Jira. Instead of just creating the code and database tables automatically, they got rid of the whole backend programming. They managed it by providing a platform on which most of the modules could be created, compiled and deployed on the fly, without any need for programming and the corresponding hassle. A sort of drag-and-drop development, which was more configuration than “coding”.
Based on this approach, a system architect, configurator or developer (the term “programmer” did not make much sense anymore) didn’t have to code or compile, but simply define what they wanted and how they wanted it directly from the presentation layer. All a developer needed to add a new field on a form, or a new condition in a step, or a new column in a reporting table, was to go to the corresponding configuration page, add the necessary attributes, views and properties, and voilà! It was there. Live and ready to go. The platform took care of everything in the backend, from database objects, to code generations, compilations, deployments, etc.
The change was simple, but the impact was incredibly huge. Still, due to the lobby power and anchoring effect of older platforms, and the usual angst against innovative solutions, this new approach was not noticed, until very recently. The immense amount of time that was needed in case of writing the code and compiling and testing and deploying could be saved. It was like introducing a 3D printer for process-based software. One could design, implement and deploy with a few clicks and have the new “code” up and running instantly. And most of the “documentation” happened instantly, since it was basically available automatically. When one uses common language and properties and visual configurations for building a solution, those attributes construct documentation as you go.
You can now imagine why the new approach is considerably faster, more reliable, cheaper and user-friendly. First, everything is web-based, so all the problems of desktop software vanish. The automation of backend codes and configurations means significantly less testing. Basically, only the features and outcome should be tested, which can be done rather quickly. Using drag-and-drop and few clicks instead of writing hundreds of lines of code saves time and resources as well. And this simplification reduces the complexity of the software development process. In many cases, there is no more need for test servers, staging, deployment, integration server, etc. Things can just be performed directly on the production system, with minimum risk. If something goes wrong, it can be easily reversed back to previous status. Test servers are then only necessary for big changes and upgrades, not for daily tweaking and improvements.
Let’s explore one example and compare low-code development to classic software development.
Imagine you have an SAP system, which provides certain forms and reports for your purchasing department. After some new regulations, you need a few new fields on your forms, and they should appear on some reports. There is also a new role that needs to provide an additional approval. Companies who use SAP know well that this relatively simple change request may easily cost months of time to be developed, tested and released, plus tens of thousands of dollars. Now imagine you are using a low-code platform for your processes, for example Atlassian Jira. The necessary changes need less than a day (yes, you read right) to conceptualize, implement, test and release. Low-code platforms are therefore not just a slight improvement of classic software development. They have revolutionized the way software works.
The new role of “Devigner”
When developers build their applications on a low-code platform, they are not merely “developers” anymore. They take on a new and previously non-existent role of “devigner”, a combination of business analyst, software developer, architect and designer. Devigners, in this sense, do designing, development, test, frontend design and integration all at the same time.
This emergence of a new role may be considered one of the most important challenges of low-code development. Finding competent developers is already quite hard in the market. Obviously it is even harder to find devigners compared to business analysts, software designers, developers or testers, since they require skills and experience in all pertinent areas. To fulfill the minimum requirement of the job, a devigner needs to know:
what users actually need,
how data should be collected and categorized (data management),
Having the right technologies at hand and being able to do various activities and paying attention to important details seems like a rare profile at this point. Devigners can therefore be compared to world-class chefs, if we use a tasty dish with a user-friendly software solution. Nonetheless, it is the norm for new technologies and approaches to demand rare skills in their early years. And since this new approach (low-code) has numerous advantages compared to the other development methods, the right skills will be acquired, offered and appreciated in no time. The question is, who starts first to switch as early-adopter and enjoy the benefits before losing more time, energy and money for buying and maintaining outdated tools and costly old technologies (e.g. SAP or LotusNotes)?.
Scope of low-code platforms: what are they good for?
It is true that low-code platforms can offer a lot and demand little. However, it would be an illusion if we think they are the answer to every piece of software in the market.
Low-code platforms are perfect for building up and customizing solutions to support processes. Whatever solution requires certain data to be collected/updated in different steps based on an overall workflow is practically a process-solution. Tools to support risk management, compliance procedures, HR recruiting (see HR success story here), enterprise service management (IT, HR, Marketing, Sales, etc.), skill management, asset management, project management, innovation management, billing, customer communication and so on are all practically process-supporting tools. All these areas can be supported with a low-code platform such as Jira. One just needs to know what the options are to extend a platform with apps and add-ons, and where to tweak the system to achieve full customizability.
On the other hand, these platforms are not fit for creating software that require specific interfaces and specialized features (e.g. Photoshop) or complex mathematical calculations (e.g. accounting software). However, process-related solutions account for the majority of tools within a corporation. In one case, for example, we could replace over 25 processes within a medium-sized bank with Jira. Certain small and sometimes costly tools for customer complaint management, IT services, software development, compliance, HR on-boarding and contract management, annual budgeting procedures, etc. are built in a well-integrated way on one platform, with 100% individualization for every step, role and information requirement possible. With an old approach this would have taken at least five years. It was accomplished in less than a year and resulted in hundreds of thousands of euros saving for that bank.
How can you benefit from low-code platforms (e.g. Jira)?
First thing companies can do is to identify in what areas they could benefit from low-code platforms. This is relatively easy to pinpoint. There are generally two areas, where low-code platforms can enhance your process management (whether internally or with customers/partners):
Processes infected with “Excelemailism”
This is an easy one. If you are using Excel and email to communicate and keep track of items within any process, you can do better very rapidly.
Processes supported by classically developed (high-code) tools
As a rule of thumb, if you are using any tool in your organization, that is more than 10 years old and is not web-based, you are likely spending too much time and energy maintaining that system. Desktop applications are objectively the worst option for managing any non-confidential processes within your company. They are slow to adapt, and require unnecessarily too much cost to maintain and customize. If you are using SAP for anything but accounting and finance (where certification and compliance is important), you can save quite a substantial amount of resource in both license and support, and end up having happier employees and more satisfied customers all at the same time.
In addition to process management, project management in large companies can benefit from low-code platforms as well. Many companies sill use ancient tools like MS Project and Office products to manage their project backlog and documentation. This hinders true collaboration, slows down flow of information and reduces transparency.
Low-code platforms like Jira are particularly powerful in large-scale and complex projects with various sub-projects, teams, internal processes and responsibilities. There is simply no standard tool for such projects, because each of them is different and needs to be highly customized to be effective. Companies often falls into the outdated approach of using Office products and SharePoint to manage such projects. This is a terrible mistake. They can employ low-code platforms to set up a collaborative and tailor-made landscape for managing every aspect of their large project.
In one case, a solution (based on Jira & Confluence) was customized for an international corporation to manage a complex Europe-wide migration project with over 500 project members. Every step, detail, communication venue and report was customized based on the defined deliverables, communication channels, permissions, regulations and reporting requirements. Everything was mobile, real-time, secure, transparent and personalized, from sending reminders, to requesting approvals, making appointments, creating product specifications, assessing goals and managing risks all the way to time and billing management. The tool for a project on such a grand scale took only three months and two devigners to build. Companies spend years to set up a PMO with outdated tools, and therefore need two to three times more human and financial resources.
The investment in transforming your project and process landscape with low-code platforms pays off handsomely. It breaks the so-called Triple Constraint. Generally, waiting and caution are necessary before adopting a new technology or approach, especially for more conservative industries. However, keep in mind that we are about a decade overdue with this approach, and the evidence for success is clear. Many companies made the mistake of waiting too long to shift from telegraph to telephone, or from paper to email, and paid a high price (if they could survive at all). Don’t wait too long to change a running system that is a relic of the past and therefore slow, not well-customized, user-unfriendly, and expensive to maintain and run.
What can codecentric do for you?
We are a pioneer in innovatively using Jira as a low-code platform to build collaborative solution to support and manage complex and end-to-end internal processes. The same goes for using Confluence for collaborative and coherent knowledge management. We use best practices together with well-trained “devigners” to smoothly carry out the transformation process, from business analysis to conceptualizing to-be solutions, developing, migrating and rolling out modern low-code tools. With such valuable experience and as a long-time partnership with Atlassian, we are more than happy to provide help and guidance for a smooth transition from outdated tools to a new and powerful low-code platform (Jira) for your organization.
Submit your enquiry here and we will get back to you with a tailor-made solution. 🙂