Things can't carry on this way for much longer. Developers are highly sought-after talents in the labor market because of their ability to write code and thus to develop new digital services. The immense demand makes them a rarity. This is already a problem for many companies – and it's going to get worse. Citizen Development is a (new) approach allowing companies to quickly turn new ideas and concepts into market-ready applications despite the shortage of developers. This blog post explains what it means and what advantages it brings.
It's not hard to imagine the consequences if a software company were to give up developing software: Missing releases, no new product launches, users going over to competitors, lost sales, and, finally, the loss of relevance in the market. But can the same chain of consequences befall companies whose core business is not software development? The answer is yes.
Software development is already today a cross-industry core discipline
Whatever their business model, companies today need to run their operations efficiently, deliver an excellent customer experience, and constantly attune their products and services to changing market conditions. If the IT department is not involved intensively here, companies can no longer master these challenges. This concerns internal processes – for example, applications that enable data flows between different departments or systems – and external purposes that users will need, such as testing new business ideas or applications for their projects. That's what makes software development a cross-industry core discipline.
High workloads in IT are straining the capacity to handle them
Ensuring their IT can cope with the high and constantly growing demand for software development is crucial for companies. But tackling it poses significant problems for many companies. In the past, for various reasons, software was often not developed by internal IT but outsourced. Consequently, over the years, existing expertise was lost, and no new expertise replaced it internally. Despite the widespread acknowledgment that software development must become a core competency, external partners must continue to be brought in. But even here, bottlenecks and problems can come up if partner companies are busy, turn down small projects, or lack the necessary expertise in the client's market. As a consequence, critical time is lost while innovative ideas and long-planned measures remain "on hold." The result: Less efficiency within the company, less innovation, and less success in the market.
The numbers confirm what the practice has long been showing: A new software development concept must be found
I know this problem from our users. They are often aware of the adjusting screws they would have to turn to work more efficiently, and they know what digital products or services are currently in demand. But the lack of IT specialists and budget restrictions often make digitalization projects unfeasible. Current studies and surveys reinforce this view of the underlying problem. A recent article published in the Economist reveals that only about one in 125 people in the workforce is proficient in programming languages. According to the authors of the article, the result is a shortfall of 1.4 million programmers – and the number is rising. McKinsey has drawn the consequences: Companies often take months to launch products or services, and executives have trouble bringing new business ideas to market readiness.
Citizen Development ensures the democratization of the code
But what if it were no longer just a limited specialist elite but all employees who could develop software? That's exactly the idea the Economist headlines in the cited article "What if all workers wrote software, not just the geek elite?" The strong equation linking available developers to success in business would no longer apply so reliably when it comes to efficiency and managing innovation. The Citizen Developer trend is now actually making this democratization of code possible – at least in part. I first encountered the term in my previous employment at Pivotal. For us, it was pretty clear that companies must again build up competence in software development if they are to remain competitive in the long term. In my current positions at mimacom, I am again focusing on that topic, especially when working with Flowable, our technology partner and provider of a Low-Code Business Process Automation Platform.
The concept behind Citizen Development is straightforward. On so-called low-code or no-code platforms (LC/NC), IT-savvy staff can develop software themselves with little or no programming knowledge. Drag-and-drop tools let them put building blocks together to create an application. The elements are translated in the background into software code. Through these platforms, Citizen Development, i.e. the development of software by an IT-savvy employee of the business department, brings a new variable into our equation. The concept opens up new opportunities for companies to quickly implement and test ideas from the business departments.
Citizen Development as the shared language of business and IT
For me, low-code or no-code development is a language that both business and IT can speak. And that's central when it comes to developing applications, as I often realize myself. If I'm a decision-maker in a business and I want to test a new business idea using an MVP, or if I'm a team lead and want to model a process that will help my employees work more efficiently, I don't have to lose valuable time waiting for our IT colleagues. I can start myself and, if tests are successful, have the application revised or rebuilt by our specialists. This helps us ensure that IT resources do not flow into projects that, in the end, fail to add the value we need, but only into projects that have already been tested and found to be viable. At the same time, we are much more agile and pick up speed on the business side.
Advantages of the Citizen Developer: More output, less code
The concept of the Citizen Developer offers many benefits:
- Quicker results: On LC/NC platforms, business professionals can model applications quickly, which helps them test ideas, optimize processes, and bring products to market faster. They earn a lot of benefits this way.
- Easier to implement: LC/NC platforms provide a user-friendly interface that significantly simplifies software development. As a Citizen Developer, you can develop the applications without calling on the profound IT knowledge of IT professionals.
- Market-specific solutions: Citizen Developers in your business departments know your market-specific requirements and create solutions that best meet them. Lengthy coordination cycles between IT and the business department are left behind.
- More planning security, less risk: A lot of money is often invested in big software projects. The disappointment is huge if the expected benefit fails to materialize or is smaller than expected. After-the-fact improvements are then often bound up with costly extra work. With little effort, Citizen Developers can test innovative ideas as MVPs at an early stage. If the feedback/test result is negative, initial adjustments/decisions to halt further development can be made before IT's already stretched resources are called upon.
- More spirit of innovation: Lessening the risk of wasting time and raising costs lowers the inhibition against "trying out" innovative ideas and promotes more creative energy in the company.
Is the future of programming no more programming?
A few years ago, one of the co-founders of GitHub predicted that the future of programming would consist of not programming at all, and I agree that programming without programming will become much more critical in the future. But not exclusively. We will, of course, still need IT experts with profound programming skills to develop complex software products in the future. I see the applications developed by Citizen Developers more as a first iteration stage, which in many cases may very well need to be "perfected" by IT experts in the later iteration stages. I'm not a proponent of the idea that we don't need programmers anymore, but I do find the idea of using Citizen Development to ensure more speed and agility in the business department interesting.
From my experience and from talking with our users and partners, I can say that in the future, very few companies will be able to avoid grappling intensively with the concept of Citizen Development if they want to remain competitive, even if the concept does bring challenges with it. Companies can counter the growing shortage of programmers only if they make better use of the potential for creating developers in the business departments themselves. The concept of the Citizen Developer offers concrete help here.