Defining Standards for Salesforce Citizen Developers

FoF Guest Writer Shamli Nikam

Shamli Nikam

A software engineer with a passion for learning efficient ways of project execution. PMP certified, certified Scrum Master, and 4x Salesforce certified mom who loves canvas art, reading books, hiking, and cooking.

The IT organizations have seen some interesting turns of events in the last 2 years because of the pandemic – remote work, global resignation and shortage of IT professionals. This time calls for citizen developers to feel empowered to be able to provide faster business value to their customers. The Salesforce platform makes it easier for business users to work on some of the functionality using point and click tools – therefore, provides an excellent opportunity for professionals with little to no technical background to be a Salesforce citizen developer.

We will start with understanding what a citizen developer is.

What is a Citizen Developer?

The role of citizen developer lives on the business side and is encouraged to take on IT responsibilities to create useful business applications that may not require them to follow all the usual IT protocols such as code review, unit testing, etc. The citizen developer does not need to be a programmer/coder or does not need to come from a technical background. This role allows business to not depend on IT to create all business applications while ensuring that the integrity of the software application and the data remains intact. The idea is to follow a low-code or no-code strategy and keep things simple.

Salesforce Citizen Developer Best Practices

It is important to approach the strategy to develop this role of citizen developer with an open mind. The IT teams should trust, coach and guide the business users in order for them to learn and grow. And the business should be willing to learn and adopt new processes.

Benefits of having a Citizen Developer role:

1. Not having to depend on IT to implement all processes on the platform

2. Business can be Agile – can respond quickly to business needs

3. Comparatively lower cost

4. Quick ROI

5. Reduced IT backlog items

6. IT can focus on innovative solutions

Factors to Consider while Defining Standards for Salesforce Citizen Developer

Even though the citizen developer role can eliminate the IT bottleneck by working on solutions with a low code/no code approach, it is a good idea to keep IT in loop with all the changes the citizen developer makes. Keeping IT informed of the changes will help in situations where IT needs to act as a backup to support the changes made by business. This knowledge can help IT to build sustainable solutions on top of the changes implemented by the citizen developer. This will also help avoid creation of duplicate functionality. The IT and business teams should work together on defining standards around what a citizen developer can and cannot (should not) do.

1. IT Team Structure 

First, take a look at the team structure of the Salesforce delivery team (IT). The delivery team should have roles that will be able to oversee the changes (if needed) that the citizen developer is making. The citizen developer may run into scenarios where they may have to consult with IT on the best approach to implement a process or make a change.

Salesforce makes it easier to learn about the platform through learning modules in Trailhead. However, based on the existing configuration of a Salesforce org and integrations around it, the most feasible approach may differ. Remember that IT does not have to be a gatekeeper for all the changes, but the IT awareness here is crucial.

2. State of Salesforce Platform

It is important to analyze the current state of the Salesforce platform. This analysis can be done by looking at components, code and data. Things to look at will be - cleanliness of data, percentage of code versus config, number of integrations, number of managed packages. The org health check functionality can help with this analysis. The results of this research will help you determine what areas you need to be strategic about before handing the responsibilities to the citizen developer. 

State of Salesforce Platform

It is important to analyze the current state of the Salesforce platform. This analysis can be done by looking at components, code and data. Things to look at will be - cleanliness of data, percentage of code versus config, number of integrations, number of managed packages. The org health check functionality can help with this analysis. The results of this research will help you determine what areas you need to be strategic about before handing the responsibilities to the citizen developer. 

For defining these standards, one of the things to look at would be the areas or processes where frequent changes are required or possible without impacting the existing running functionality. Or finding the low hanging fruit approach may work best for some teams. That is, citizen developers work on items that are isolated or do not impact the overall org structure and changes that are fairly easy to make.

3. Available Salesforce Sandboxes

You will have to decide the sandbox where the citizen developer will be making the changes first – please make sure the changes are first done in a sandbox, no matter who is making the change. Give a dedicated sandbox to the citizen developer where they can make the changes, ensure the change solves the business problem, merge the change with a common sandbox and test the change. If things work as expected it is important to move the change to a pre-production sandbox before it is released to the production org. Based on the type of the sandbox, the amount of data to test and the frequency of sandbox refresh options will differ. It is possible that the change may pass the test if tested using a smaller set of data and may not pass the test if tested using bulk records.

Other things to check here are the frequency of sandbox refreshes and how in-sync are the sandboxes with production metadata/data.

4. IT Process and Governance

To maintain org security and data management it is important to synchronize citizen developer’s work with IT processes. Make sure the citizen developer’s work is funneled through IT before it is released to production org. As mentioned in the first point, if an architect or a lead developer is looped in as the citizen developer makes changes to the platform, they should know the current state of the work. You can do this by adding the work item as a user story to the work management tool used by the delivery team (Example: MS Azure or Jira). This will help with clear visibility and awareness for everyone. The citizen developer’s work can be deployed to production along with other IT work per the scheduled production release cadence. 

What is a Citizen Developer

But this mostly depends on the complexity of the changes that the citizen developer will be making. If work items or user stories are added to the work management tool make sure to add necessary details about the change – things such as, names of components, names of impacted objects, processes the components are created for, business value, method of deployment, post-deployment steps, etc. Depending on the size and complexity of the changes IT can be kept informed with minimum governance or can be more involved. By harmonizing the process with IT both parties (business and IT) will be assured that the changes will not negatively impact the overall Salesforce instance.

5. Metadata Backup Cadence

The citizen developer may not have any technical background, and they may not be used to using the backup tools. Therefore, they need to understand the cadence of metadata backup. This information will help the citizen developers move their changes timely to the common pre-production sandbox and not lose any metadata during sandbox refreshes.

The IT teams should educate the business or the citizen developer on how the Salesforce refreshes work, what happens after a sandbox refresh. This will help the citizen developer understand the possible repercussions of not taking timely backup of the metadata.

6. Citizen developer’s Salesforce skill sets

The citizen developer will have a better understanding of the business processes and the value of new applications since they are part of it and are familiar with the business background. However, the types of changes the citizen developer would work on should be based on their understanding of Salesforce functionalities. If this is a fresh role in your org with someone who has no experience working on the platform, they can start with simple changes such as adding picklist value or adding help text to fields. As this role grows and learns more about the capabilities of the platform and the Salesforce functionality, they can take ownership of making different, comparatively more complex types of changes. In my past roles I have worked with Salesforce certified citizen developers who created components such as process builders, visual force email templates and even apps for the users.

Conclusion

Creating a shared list of CD (Citizen Developer) Can Do and CD Cannot DO can help all involved team members be on the same page and avoid confusion. If all team members approach this task with open mindset, willingness to grow and trust each other it will be easy to define the standard operating procedure. The IT and business teams members aligning on the process will eventually help the end users tremendously. The team members as well as end users can see quick ROI, enhanced user adoption of the tool and happy end customers. The smaller size of IT backlog can make a significant positive impact on the way software projects are executed, the wellbeing of employees at the workplace, and for the for the business in general.


Shamli Nikam

IT Progress and Governance

What Certification are you studying for now?

Focus on Force currently provides practice exams and study guides for thirteen certifications