The Rise of the Citizen Developer
Understand the basis of the citizen developer movement, its downfalls, and what other industries' failures can teach citizen developers to avoid the same mistakes.
Join the DZone community and get the full member experience.Join For Free
Understanding “Citizen Developer”
You’ve likely read the term “Citizen Developer,” or, according to Gartner: “An end user who creates new business applications for consumption by others using development and runtime environments sanctioned by corporate IT.”* Why is this movement taking place? As end users, Citizen Developers better understand the functional requirements for an application. They can specialize to ensure that what’s needed is what’s done.
Pitfalls of Citizen Developers
But Citizen Developers worry IT for three reasons: The potential for lower security standards, poor performance, and a sub-par end-user experience. Still, the Citizen Developer has significant benefits for the enterprise, so the question is: How can IT address the pitfalls?
Learning From Previous Industries
To better answer that question, let’s take a look at a similar situation: desktop publishing. In the old days, all business materials were designed and created by the graphic design group for a particular company. This often moved slowly and couldn’t be tailored to specific business units, so some units started to create their own marketing materials. While this improved turnaround times and marketing specificity, it also caused a major issue: the resulting materials didn’t follow brand guidelines. The solution was to bring graphic design back in to supervise and oversee the process. By providing a framework with templates, the graphic design team made it easier for the citizen artist as well as more compliant from an enterprise perspective. There are lessons from that transition that apply to today’s Citizen Developer movement. If companies lean on the current DevOps and enterprise framework, they can gain the benefits of Citizen Developer while lowering the associated risks. Let’s examine the role that each organization should play to ensure success.
DevOps and Enterprise Frameworks: A Two-Part Solution
The DevOps process plays an important role in enterprise application development. The process and teams working on the development workflow can provide expertise early and often to ensure quality, performance, and reliability. If we expand DevOps to work with the security team to create a secure product, then this can fit into the relatively new DevSecOps movement.
An enterprise application development framework allows for a supervised development environment within which Citizen Developers can work. A key component of this framework is the isolation of development environments for each group of Citizen Developers. This framework will also make the Citizen Developer’s job easier. They can better learn a new system by using templates created by the existing framework, which lowers the risk of poor performance, reliability or end-user experience. Further, a good framework gives a way for unit, functional, and user experience testing to progress from sandbox to release. Finally, a good framework provides simple access to all enterprise data and processes across departments.
A controlled environment also provides IT with the ability to change the development freedoms of Citizen Developers - maybe the Citizen Developers use simple applications at first and more complex applications once they are more experienced. Citizen Developers often come from legal, HR, manufacturing, security, and other teams, and this interconnectivity enables them to deliver quality output.
So, with the pairing of currently existing DevOps teams and a strong enterprise framework, the potential downsides of Citizen Developers (security, performance, and end-user experience) can be avoided while fostering true greater business agility.
*Gartner Glossary, Citizen Developer, https://www.gartner.com/it-glossary/citizen-developer/
Opinions expressed by DZone contributors are their own.