Skip to content
Business Needs More Apps but IT has No Resources to Spare?
Business Needs More Apps but IT has No Resources to Spare?

In IT, there is always a shortage of developers, be the reason tight budgets or lack of skilled experts. Citizen development, the practice of empowering non-IT professionals to build applications and automate processes, is offered as a potential solution. But is it truly worth the investment? Are there alternatives?

In this article I discuss approaches to enabling citizen development and real-world challenges these initiatives may face. I propose three alternative approaches that might produce better results for your organization if citizen development isn’t for you, and share some ways to understand the Return on Investment. I will mainly focus on low-code as an example, but these insights can be applied to citizen development in other areas such as Business Intelligence and Analytics.

But first, let’s take a look at the history of citizen development.

The rise of the citizen developer

The search for a solution to make app creation easier for non-programmers or tech-savvy users (aka citizen developers) has existed ever since the invention of the computer.

BASIC was invented in the 1960s to allow students in non-scientific fields to use computers and to write apps.  Another example is COBOL (Common Business-Oriented Language), which was designed in 1959 – that is 65 years ago. How do you program in COBOL? You write English-like code. COBOL consists of structural components such as verbs, clauses and sentences and is considered very readable. Along with its rigid hierarchical structure, this syntax makes it easy to learn.

Later, as graphical user interfaces became more common, BASIC was developed further into programming tools like Visual Basic. Now you could draw the UI and attach code to the user interface elements to handle events like clicking on a button or writing text into a text field.

Today, low-code tooling can be seen as a continuum on this ever-lasting hunt for easier app creation. What current low-code platforms have brought with them are the addition of an efficient, managed distribution mechanism, portfolio management for managing and assessing the value of initiatives, integrated measurement of user experience with features like app insights, collaborative project spaces, agile project management, AI-helpers, and the list goes on.

But what is the business reasoning for having citizen developers? Why is it so compelling today?

Knowledge of the business problem, quicker turn-over time on app development

In my experience, the reasoning behind advocating citizen development is based on three assumptions:

  • The person working in the business team knows best the problems and issues they face and has the best ideas on how to use technology to fix them.
  • Enabling a person working in the business team to create the apps that solve their problems provides a quicker turn-around time in the typical iterative cycle of “develop-test-and-deploy”.
  • Introducing even a basic level of development competency to a large number of employees can together with the right tools significantly mitigate the need for professional developers.

Again, in my experience, this logic is sound and true in general. If a person has a problem and the means to fix it, they usually do a pretty good job at it and are happy with the results. And output increases with numbers.

Reflecting this to the larger context of software development, it is about shortening the lines of communication between development, testing and giving feedback to the developer. Agile methodologies like Scrum have been doing this with the daily standups and short sprints with reviews. In case of citizen development, this feedback-loop has been shortened to the absolute minimum as it all can take place inside the citizen developer’s head.

The real trick, though, is to give the person the best means possible as the solutions we build tend to reflect the toolbox we have available to us.

Artikelinnehåll
Maybe not the best means possible.

Providing the best means possible

We human beings are problem solvers and capable tool users. Training a person to use a tool immediately unlocks several new options for solving their day-to-day problems. In fact, as you are reading this, someone in your organization is likely learning a tool by themselves or already tinkering with an app that could end up becoming critical for their team.

Therefore, in the case of citizen developers, the best results are gained by providing them with training and frameworks that allow them to use tooling like low-code in the best and most secure way possible. If the tooling provides guardrails that guide the citizen developer along the way, the results will be even better.

A simple way to start supporting citizen developers is to do some internal marketing and make everyone aware of the tooling and training that is available. Most low-code tools today have Online Academies where the training doesn’t cost anything more than the time spent completing it. Informing business teams about this training and how they can get started can be the push those who are interested need to get their citizen developer journey going.

Some have used hackathons to great effect. The purpose of the hackathon is to work with volunteers from the business teams, give them quick training and build a few simple use cases. During the hackathon the participants get a hands-on feel on how it is to use the tooling and the opportunity to get support and to ask questions from a trainer. The participants of the hackathon get to experience the joy of successfully completing an app that helps them with some daily chore and they learn to identify the best use cases for the tooling.

Another option is to do “Let’s fix a problem with low-code” workshops with the business teams. Compared to hackathons that are open to everyone in a department or the whole organization, these workshops are focused on a single team. The focus in the workshop is first to identify what are the types of tasks low-code is great at automating. Then the focus shifts to collaborating to build a solution to a problem using low-code. Finally, the built app goes through required tests, reviews and approvals before being deployed. It is good to start first with a simple problem to get everyone introduced to the approaches used and the steps required, and then work together towards more difficult use cases.

In all these cases, the initial interest can bring in a lot of people, but not all of them will continue to become citizen developers.

Nurturing the emerging talent

It is only natural that some of those initially interested will realize development isn’t for them. But there will be some who will love it and keep on finding new ways to use the tooling. It is important that these individuals are supported and trained further so that they can hone their skills and bring even more value to their teams and the organization. Here are some examples of how to do that.

Based on my experience, mentorship models are a great way of giving this support. In a mentorship model, a more experienced developer collaborates with the citizen developer to build apps. The mentors share best practices and ways-of-work that aren’t necessarily available as training. These can be organization specific practices, privacy and security considerations, for example.

Regular citizen developer meetings are also a good way to keep people aboard. The longevity of this practice depends a lot on the citizen developer community, though. If the community is active and willing to share learnings, these meetings will thrive. If not, they will slowly fade away no matter what type of content is offered.

Other types of support can be marketplaces where pre-made components, frameworks and other assets are made available to make the development easier and faster to citizen developers. Giving the citizen developers a possibility to share useful components they have made will also encourage them to learn more and share the results with others.

Celebrating the citizen developers’ achievements will also give them a boost to continue on their learning path. Possibility for rewards like recognition received from top management or even financial rewards can have an incredible effect.

Involvement of management leads us also to one of the most important components ensuring citizen developer’s business productivity: direction.

Artikelinnehåll
Direction will help find the way.

Providing direction

To be as productive and effective as possible, citizen developers will also need direction. Without it, the time and effort of the citizen developer will be used on use cases the citizen developer deems fit which isn’t always the best choice. A simple example of this is a planned decommission of an IT-system. Without direction, several citizen developers could include the system in their use cases only to see their work go down the drain later as the system is no longer available.

Direction can also help an organization to harness the collective power of citizen developers to solve an organization wide problem. One extreme example is the case of Wesco, which might have been one of the cases that has inspired you to learn more about citizen development. Wesco has over 50,000 suppliers, each with unique supplier portals. To enable more real-time tracking for their orders they needed to automate data collection from these portals. Instead of using full-time developers to do this, they created a framework that divisional developers could use to automate the task.

I’ve been involved in a similar use case on a smaller scale. Even so, this same approach of creating a framework (or a template in our case) worked wonders. Using the template, much less experienced developers could quickly help automate most of the portals leading to a significant productivity boost and shorter development time.

Leading low-code platforms provide portfolio management features to aid in providing direction. Such features help share information with citizen developers and business stakeholders, and can ensure that the projects citizen developers undertake are aligned with business goals.

However, it is not a given that a citizen developer will have the opportunity to participate even if they are willing and eager to learn more and have all the direction they could need. And this leads us to challenges with citizen development.

Some challenges with citizen development

Supporting and building the citizen developer community and capability takes time and effort. Usually, it is the IT department or a Low-Code Center of Excellence where the time and effort comes from. There are always other initiatives in the backlog and while increasing the number of developers through citizen developer initiatives can increase the overall delivery capability in some cases, it can tie up more senior talent that could be better used elsewhere in others.

The apps citizen developers create might need maintenance if the citizen developers themselves are not able to do it. Anything deployed to production should also be reviewed to ensure the solution is secure, safe to use and doesn’t violate privacy policies or regulations. This may lead the IT department or the Center of Excellence to become overwhelmed, which in turn can lead to the apps citizen developers so lovingly crafted degrading over time or introduce long delays to the deployment process.

In some organizations the jump from the simple use cases to more valuable ones can be too great for the citizen developer to manage. The technical, privacy or security requirements can become overwhelming and the amount of work that needs to be put in to learn everything may become off putting.

The citizen developers themselves may also be redirected back to their earlier routines if there are fires to put out or the business team’s resources are otherwise limited. Any change in leadership, organization or priorities may also force the citizen developer to use their time elsewhere. The time available for development may become sporadic or there just isn’t any available at all. This can cause a promising citizen developer journey to stop in its tracks indefinitely and cause everyone involved to feel they have just wasted their time.

Available budget for licenses can also be restrictive. Depending on the licensing model of the chosen platform it may just not be viable to train a large number of people to use it, especially if they are not using the license full time.

But if citizen development is not a good fit or the challenges too great, what else can be done?

Alternatives to citizen development

One alternative is to go for a “Key Developer” approach, where only selected employees in the business organization would be trained to help their departments or business units. To be included, the employees must complete training and a test that shows they have reached a certain level of competency. When online training is available and employees are aware of it, I’ve seen individuals with the drive and long-term ambition to just start popping up around the organization. These are individuals who are so enthusiastic that they likely have learned the tooling on their own time and are a natural fit for the “Key Developer” role.

Another alternative is to focus on the organization’s competency requirements for the future and to build paths that allow a transition for business-focused employees to those roles through a structured set of training and other activities. The goal of this transformation would be to transition the employee from their current role to a full-time programmer role. I.e. the person would not become a citizen developer with an opportunity to work with app development part-time, but a full-time developer with a deep understanding of the business.

Identifying candidates for this model could use the same hackathon and workshop approach as mentioned for citizen development. But the transition journey would be a true career changing decision made by the employee with their manager. The commitment would be much more serious than we sometimes see with citizen development.

One more alternative is simply not to do it and invest the time, money and effort required for citizen development in building up the development competencies in the IT department or the Center of Excellence. The number of apps developed is very likely lowest with this alternative, but the other side of the coin is that whatever gets developed will likely address the biggest problems in the business and do so with a high quality. And with the support of a low-code platform, the development time will be much shorter than otherwise.

Understanding return over investment and business productivity gains of citizen development

A citizen development program can be a significant investment, so it is important to understand what the organization receives in return for running it.

Each use case (and indeed the entire citizen development program!) should have a clear set of success criteria, and a benefit/effort analysis should always be made to validate the business value of a use case before implementation. For a business, the key questions are how the program will impact growth, revenue and profit, and the questions should be asked about every use case as well. This analysis can then be complemented with additional ways to get a more complete picture of the returns.

When working with citizen developers I’ve noticed they tend to choose use cases that are directly related to their team’s tasks. If possible, they prioritize the slowest, most frequent and most tedious tasks they know. These use cases have one key feature: because they are closely tied to the team’s tasks, they should contribute to the team or unit-level KPI’s (Key Performance Indicators). As a result, the business productivity gains can be measured by first establishing a base value for the KPI’s before the deployment of the citizen developer’s solution and monitoring how the KPI’s change after.

An impactful solution will show its value by creating a clear, positive change to the KPI’s. If no change is observed, the reasons for it should be analyzed together with the citizen developer. This is key to allow learning and better selection of use cases in the future.

ArtikelinnehållA good investment will lead to a great payoff.

Summing it all up

All in all, a citizen developer program can lead to transformative results for an organization. It can unleash creativity, boost productivity, and significantly reduce IT backlogs. Unfortunately, it can also be a volatile endeavor, which can lead to disappointments and wasted effort for everyone involved.

Before starting such a journey, I recommend analyzing and understanding if the idea of “everyone building apps” is truly one of the things that will significantly move the organization towards its goals compared to all the other alternative initiatives available.

Also consider if citizen development is something that will become a part of the organization’s core, and if the organization is able to maintain the required commitment even with changes in top leadership or after organizational changes.

If your answer is “no”, then it is likely better to do some other investment instead.

If your answer is “yes”, you could be starting an exciting journey.

If you want to assess if your organization is ready for citizen development, what model would work best for you, or you need support with your on-going citizen development program or choosing a low-code platform, let’s start a conversation and explore what would be your organization’s path to success.

POST AUTHOR
JARKKO

Jarkko is an experienced leader and expert in digitization and automation, with a solid track record of successfully completed projects for various functions within organizations.He has extensive experience in leading and implementing solutions that streamline and improve operations.

Previously, Jarkko was the head of Intelligent Automation at Capgemini, where he led and supported a team of 30 consultants and the team’s deliverables. Prior to that, he worked at Telenor Sweden as Manager Automation and Automation Tech Lead, as well as at CGI Sweden as the Sweden manager for RPA. In these roles, Jarkko led automation programs and agile projects, established automation strategies and platforms, and digitized a variety of processes and created analytics using Process Mining.

Jarkko’s career in data began back in 2006 at Affecto in Finland, where he worked as Senior Consultant, Team Lead and Senior Manager. He has had assignments as project manager, service manager, ETL engineer, expert in DW and BI.

This broad experience gives Jarkko a deep understanding of different technologies, from data to processes, and how to deliver successful data and digitization projects. He has used his experiences to create the LEAP methodology for digitization.

In his spare time, Jarkko enjoys walking with his Japanese Pointed Setter, playing board games with his son and practicing Argentine tango with his partner.

TELEPHONE

0700 21 46 70

EMAIL

jarkko@iwow.se

LINKEDIN

GO
Back To Top