The rise in low-code development platforms (like one of our personal favorites…Power Apps) has blurred the line between business users and software developers.
Should you hop on the low-code bandwagon or stick with professional developers? Or should you forge a third path with a hybrid approach?
Hate to be the one to break it to you, but as usual, there’s no one-size-fits-all answer. But, we do know a lot about which scenario works best, based on years of experiences we’ve had with our own clients at CSG.
So, here are some factors to consider when you’re debating between low-code and pro-code options.
Understanding Your Requirements
Your business, functional, and technical requirements should drive the platform decision. During the project’s planning and requirement phases:
- Identify your business objectives (the “why”).
- Figure out functional parameters, such as business process complexity, scalability, licensing, resourcing, and security requirements (the “what”).
- Then, drill down to technical requirements, such as connection to data sources, performance speed, fault tolerance, and the availability of talent (the “how”).
Analyze the development process and identify the decision points to understand the complexity of the final product. A low-code solution is best for linear procedures (i.e. form approval,) while a pro-code approach is more suitable for workflows with complex rules.
Also, consider if you need to scale the app. A low-code app that works for a few users may run into scalability or licensing and cost issues when you roll it out to the entire organization. If you have specific data authentication and security requirements, a pro-code solution will give you the fine-grain control you need.
We have a whole Power Apps licensing series that covers the best pricing options—based on the size of your organization:
Citizen Developer vs. Low-Code Developer vs. Pro-Code Developer
Who you have available to do the development work may affect your platform choice and vice versa. Here’s the who’s who of app dev, along with the pros and cons associated with each choice.
These subject matter experts have some technical skills and are interested in creating apps to solve their challenges. They’re most affected by the problem and have the deep insights to devise solutions that meet their needs. They use out-of-the-box capabilities from low-code platforms to build apps in just a few hours, giving you the cheapest and fastest path to value.
However, most citizen developers don’t have technical knowledge about the development process. They may get tunnel-visioned into how the solution works for their immediate problem and neglect how it can support the rest of the organization. They also have limited bandwidth and may drop the ball when they get slammed with all of their other job responsibilities.
Citizen developers rely on their knowledge to test these apps manually. They often just cover the “happy path” and neglect to address edge use cases that could lead to maintenance issues down the road.
Deployment and maintenance can also be a challenge since most citizen developers don’t have the DevOps experience required to maintain an app in an enterprise environment. And, if an experienced and prolific citizen developer leaves your organization, you may not be able to find a replacement who can actually pick up the pieces.
These professional coders have expertise in low-code platforms and can take advantage of the standard platform capabilities. They understand the development process to drive business value and platform-specific considerations to help you avoid pitfalls. Overall, using professional developers will yield higher-grade apps with fewer maintenance issues.
However, they may not be familiar with the business problem and how the app fits into other business processes. The perceived cost of a professional low-code is higher compared with citizen developers, but the better quality products often make up for the initial cost.
Whether you use citizen developers or professional low-coders, you might feel limited by the capabilities of low-code platforms. For example, only one person can work on an application at a time. You need more planning to divide responsibilities to avoid conflicts while sustaining momentum.
Building an app from the ground up means you aren’t limited to any platform. Traditional developers have worked with clients in various industries, and they can adapt new solutions to solve your business challenges. They help you create robust applications to address higher rigor use cases and apply their extensive experience to help you navigate bumps on the road.
Professional developers automate testing to ensure that all the i’s are dotted and t’s are crossed, catching edge cases that often escape manual testing.
They use tools such as Azure DevOps to support source control, change management, built-in approval, and more for added control over the development process. They also follow a defensive programming ethos and incorporate various safeguards into the code to make maintenance more cost-efficient.
However, these professional developers may not be familiar with your business problems. The perceived cost of a project is higher because you have to invest in hiring resources upfront to build the app. Also, the development process will take longer than using low-code platforms.
There is so much more to explore when deciding whether to use citizen developers, professional low-coders, or traditional developers. Reach out to us and we’ll help you choose the best path forward.