5 ways to improve collaboration across Salesforce teams
Simon Breslaw on July 2nd 2021
Collaboration in Salesforce teams can be difficult. But making the transition from in-org development to a source-driven DevOps process empowers everyone with a quick and reliable way to move new work down the release pipeline. A complete Salesforce DevOps solution like Gearset builds on the fundamentals of the modern DevOps process to make team collaboration even easier and more efficient. This post highlights five additional ways administrators and developers can stay aligned and up to date with their team's latest changes and development work.
Getting your Salesforce team to collaborate effectively can be fraught with issues if you've not already adopted a streamlined DevOps process. Admins and developers, in particular, commonly end up working in silos, with clicks-based configuration and programmatic development released in isolation from each other.
As your team expands and you scale your process to meet the growing demand for customizations and new features, working together on the same orgs becomes more complex and can cause all sorts of headaches for your team. As we discuss in our State of Salesforce DevOps 2021 report, teams typically face challenges when:
- coordinating changes to both code and configuration;
- managing separate admin and developer workflows;
- dealing with code conflicts and keeping environments in sync;
- troubleshooting failed deployments and issues in releases;
- rolling back unwanted changes and restoring lost data.
Separate dev and admin workflows mesh together seamlessly if you have a single robust and automated DevOps process in place. In fact, 'better collaboration' was among the top three most valued benefits of Salesforce DevOps for the 500 plus Salesforce professionals who completed our industry survey. That's because team collaboration is hugely improved when you integrate the core components of Salesforce DevOps into your process.
As the single source of truth for new customizations and development, version control prevents team members from overwriting each other's work. By creating separate branches within a Git-based version control system, you get the flexibility to manage multiple workstreams at different stages in the release pipeline. Your team can then test, review and integrate new work items or user stories on a continual basis. Using Gearset's friendly UI for deployments to and from branches in version control, everyone has the power to compare any two environments, check changes made by previous deployments and track the status of current work. And if something isn't quite right, Git gives you reliable options for reverting changes.
CI/CD tools that add automation to your release pipeline remove bottlenecks and repetitive manual deployment tasks that slow down team collaboration and the release process. Automated jobs can test, validate and promote work items as they make their way from development to staging and on to production. They integrate the work of other team members for you, allowing for rapid feedback and the resolving of issues and conflicts before the new work hits production. In effect, everyone on the team deploys to their own development branches in Git. Automated deployments then move the combined work of the team along the pipeline while also giving you a reliable way of keeping environments in sync. In Gearset, setting up automated jobs to test, validate and deploy your team's changes can be done in a matter of clicks.
Salesforce orgs are continually being updated by end users, so getting the latest production data into your sandboxes or development environments is essential for debugging and testing new features against those edge cases you only find in real datasets. Gearset's smart data deployment tool lets you migrate records and their dependencies, including complex data hierarchies and configurations, while preserving parent-child relationships. To speed up the deployment process, you can create and share data deployment templates, allowing everyone to re-use the same data deployment configurations. And to help your team with data compliance, you can select and mask records to protect sensitive business data and personally identifiable information.
Backup & restore
When things go wrong and you lose valuable data, your team needs to react quickly and can't wait for that person in charge of your backups to return from a long weekend vacation. If your backup and restore capabilities are integrated with your DevOps tooling, a member of your team can quickly restore data and metadata from a backup using the same familiar tool they use every day for running deployments. Gearset brings backups and DevOps under one roof so it's easy to collaborate on keeping your org secure. Backups are automated but you can assign backup and restore permissions to other members of the team. Backups can also be run on demand just before a risky release, so you can quickly and accurately restore the very latest metadata or datasets if the change doesn't work out or corrupts your data.
A selection of other ways Gearset helps teams collaborate
In addition to giving everyone on your team an easy way to access core DevOps capabilities, Gearset offers you a whole variety of other useful features that can help you oil the wheels of collaboration. Here's a selection:
1. Update tickets and work items associated with deployments
Gearset lets you integrate your issue tracking or project management software with support for Jira, Asana and Azure DevOps, alongside other team collaboration and notification tools like MS Teams, Slack and Chatter. This means everyone on your team can stay up to speed with the latest deployments and changes to your orgs via alerts and notifications. When work gets deployed from one environment to the next, you can update tickets and work items in your project management tool directly from Gearset's UI, making it easier for your team to track and review the progress of user stories.
2. Automatically commit changes from orgs to version control
For admins or developers who aren't familiar with version control or command-line tooling, getting to grips with Git can be a steep learning curve. If your team is making the transition from in-org development to working with version control as part of a maturing DevOps process, it's important to ease that transition by getting buy-in from the whole team.
One approach is to automate daily deployments from sandboxes to an integration branch in Git, so that all changes are automatically committed to version control. Gearset makes it easy for everyone on your team to interact with Git repos, push and pull changes between your orgs and version control, and even open pull requests - all without leaving Gearset.
3. Deploy packages to multiple target environments
Whether you're an admin shipping the same changes to multiple orgs or a developer deploying newly built features from version control to various staging environments, the ability to redeploy the same packages is a huge time-saver. In Gearset, redeploying a package is a simple matter of picking out the original deployment from your deployment history and choosing a new target.
If you want to promote a package through the next stage of your release pipeline, you can choose to clone a deployment, taking the same package of components but selecting a new source and target for the deployment. Teams save time by combining multiple deployments into a single deployment package and sharing their deployment history in Gearset. These options make it easy for you to collaborate by redeploying, cloning and even combining each other's packages to promote along your release pipeline.
4. Get notified of changes made directly in production
Even teams that work with a highly mature DevOps process will occasionally see someone make a change directly in their production org. This might be an urgent hotfix or perhaps a team member modifying a profile. Whatever the case, and especially if the change is unauthorized or unexpected, your team will want to know about it.
Gearset's change monitoring gives you the option to monitor changes across all your orgs and can also give you automated alerts whenever changes are made. You get early warning and can decide to revert the change made in production or else propagate it back through the pipeline. In this way, change monitoring helps teams avoid overwriting each other's hotfixes with the next release, and gives everyone shared insight into the state of their orgs.
5. Set guidelines and monitor the quality of your team's code
Gearset's static code analysis (SCA) tool draws on the well known PMD code analyzer to help teams of developers improve the quality of their code. The SCA tool performs code analysis during manual deployments and in change monitoring jobs to check that new code conforms to the best practice guidelines set for the team. You can build your own SCA rule set by selecting and customizing rules for code style, design, security, performance and best practice. Gearset will alert you to code violations and, over time, you can track trends in the quality of your team's code to monitor improvement and identify areas of the codebase that might require more maintenance work.
Are you getting the most out of Gearset?
For an overview of Gearset's features, see our useful product factsheet. Better still, if you're struggling with any aspect of your current process, get a full, free consultation with one of our experts who will be happy to talk you through any particular challenges your team is facing right now.
To find out more about how Salesforce DevOps is solving teams' problems and transforming releases on the platform for the better, download our State of Salesforce DevOps 2021 report: