Tag Archives: salesforce admin

An illustration depicting the different stages in the DevOps lifecycle for Salesforce admins.

DevOps: What Salesforce Admins Need to Know

DevOps is rapidly gaining traction as a way to better manage releases and drive faster innovation in Salesforce. In this blog, we examine how the Salesforce admin can leverage DevOps to better support their team, as well as improve how they manage risk. 

How DevOps Helps You Better Support Your Team

When properly implemented, DevOps is not just a category of interest for developers. It’s rapidly becoming a method that empowers Salesforce admins and other “clicks, not code” developers to effectively manage change in their Salesforce instances. Watch this video to learn more about how it can help you better support your team.

Salesforce Governance Strategy

To implement DevOps, start by defining a Salesforce governance strategy regarding how everyone on your team participates in the flow of change. When you define a strategy for making changes using Salesforce DevOps tools, you can dramatically increase who gets to participate in the ideation process of change management.

For many teams, the process of adoption of these new methodologies causes some anxiety. But without a tool supporting your change management processes, over time, you’re likely to develop a risk-averse, siloed attitude towards Salesforce release management. DevOps aims to break down silos and encourage more people to participate in the management of Salesforce.

Salesforce DevOps Encourages Innovation

DevOps is centered around helping you build and adopt a culture, mentality, and processes that encourage innovation. Because you’re in the driver’s seat, you’re able to introduce ideas that help you sustain your workflows more effectively.

Plus, every member of your team can ideate within a trusted process with the appropriate safeguards. This results in a more robust flow of solutions and opportunities for consistent growth and collaboration.

You’re also able to test those solutions without worrying it will drain your team’s time and resources. As a result, you’ll see a positive impact on your team’s bottom line!

Salesforce Admins Can Better Manage Risk

DevOps has the power to transform your company’s perspective on risk aversion. It makes risk aversion a priority starting in the strategy development phase.

When everyone on the team is engaged in spotting and managing risks, the chances of bottlenecks are significantly reduced. Moreover, the changes that are promoted to production are more thoroughly tested. 

Prodly for Salesforce Admins

Prodly DevOps was designed with the understanding that not just developers, but also Salesforce admins want to accelerate the pace of innovation without sacrificing trust. It enables Salesforce teams to:

  • Foster greater collaboration
  • Create more opportunities for inclusion
  • Develop goals that focus on empowerment
  • Maximize overall growth
  • Clear backlogged projects faster
  • Change your risk stance from risk averse to willing to experiment

To learn more about how Prodly can support you as an admin and help accelerate your change management, contact us.

FAQs

Can Salesforce admins apply DevOps—or is it just for low-code developers?

Yes, Salesforce admins and other low-code/no-code programmers can apply DevOps processes and leverage DevOps automation tools to optimize their change management process. Learn more about why implementing Salesforce is a good idea for admins. 

Why is it important to implement DevOps in Salesforce?

To remain competitive, companies have to innovate how they market and sell things at a rapid pace. DevOps allows businesses to implement streamlined, transparent processes and automate repetitive, error-prone tasks. As a result, businesses can accelerate their change management process, be more innovative, and improve the top line. Learn more about innovation for sales.

An abstract image showing a concept of Salesforce DevOps

Salesforce DevOps: What Took So Long?

Salesforce DevOps has been a long time coming. However, DevOps has long been a popular methodology for IT teams. So what has caused the slow adoption of DevOps by the Salesforce community?

First, Salesforce isn’t a code-first environment. Second, the production org has always been the source of truth. And third, creating reproducible environments has been extremely challenging. 

In this blog, we take a closer look at these factors. Then we explain how Prodly directly addresses each one to facilitate Salesforce DevOps. 

An abstract image showing a concept of Salesforce DevOps

3 Reasons Salesforce Was Slow to Adopt DevOps

We can attribute the Salesforce ecosystem’s slow adoption of DevOps to the following key principles.

1. Salesforce Is Not a Code-First Environment

Salesforce is first and foremost a low-code platform. It’s as much declaratively configured as it’s programmatically configured. That’s why it’s such a great tool for low-code developers such as Salesforce admins and citizen developers.

Often, Salesforce admins, business analysts, and project managers have great ideas. Unfortunately, they’re still excluded from conversations due to their inability to work with code-heavy DevOps tools.

To achieve successful adoption of DevOps for any team, low-code and no-code citizen developers must be first-class citizens from the very beginning. This is why Prodly DevOps is designed with the lowest technical user in mind. 

2. The Production Org Has Historically Been the Source of Truth

Within Salesforce, we think of production as the source of truth. The problem is that production is always evolving—and there’s no real history of changes. 

In DevOps, the code is the source of truth. The code is versioned, and every change is stored in a repository so it’s easy to roll back changes if there’s an error. Think of the “track changes” feature in a document.

For Salesforce DevOps to be successful, we need to version not just the code, but also the declarative configurations. 

This is why Prodly helps you version your Salesforce data with GitHub, Azure, and Bitbucket integrations.

3. Creating Reproducible Environments Has Been Challenging 

One important DevOps principle is to be able to easily create reproducible environments. 

Why? Because by giving each developer their own org, they have a safe place to play around and test new ideas without stepping on each other’s toes. So it’s imperative to be able to quickly spin up and discard new orgs.

Salesforce has sandboxes. However, they’re not truly reproductions of production because they don’t contain all your data. 

Even Full Copies get out of sync with production quickly—plus, they can only be refreshed every 30 days. 

Salesforce data is highly relational, and those data relationships are hard to maintain org to org. That’s why most companies fall into one of two buckets:

  • Everyone shares the Full or Partial Copy sandbox. All the work happens here, and people overwrite each other’s work by mistake. This frequently results in access restriction to certain data. 
  • They work in Developer Pro sandboxes without the right test data, meaning they can’t efficiently build new stuff or test it very well.

To be successful with Salesforce DevOps, you need to be able to create true copies of production. What’s more: You need to be able to do this really quickly.

That’s why Prodly Sandbox Management allows you to select, filter, and seed data into any org in minutes. Check out Maximize Your Salesforce Orgs With Sandbox Management to learn more.

Schedule a demo to discover how to enable Salesforce DevOps with Prodly.

Salesforce admin using version control.

Version Control: What Salesforce Admins Need to Know

Version control is a critical aspect of software development, and it’s becoming increasingly important in Salesforce change management. In this blog, we discuss what version control is and how it can benefit Salesforce admins.

What Is Version Control?

Version control, sometimes called source control, involves tracking and managing changes to software code to ensure developers are always working on the latest version. 

If you only have one software developer writing code, it’s easy for them to keep track of the changes they’re making and how they impact the existing code. However, when multiple developers are working on different parts of the code, it requires much more effort and communication to keep the changes straight. 

A version control system or VCS is a tool that makes tracking and managing changes to the code easier for teams. 

Teams maintaining Salesforce encounter the same challenges as software developers. There are lots of people working on different parts of the Salesforce instance. Some are pro-code developers working in Apex, while others are admins and citizen developers. 

With all these different people working in the same environment, sometimes work is lost or overwritten, and it can be difficult to fix mistakes. 

Clearly, for admins following an agile release management methodology, version control is essential. 

Salesforce admin using version control.

How Can Admins Benefit from Version Control?

The most important advantage to using a VCS is that it becomes the source of truth—instead of the production org. 

This eliminates questions about which version is correct and provides several additional benefits for admins. 

Identify Conflicts as They Occur

When you’re working with multiple versions of your project, a VCS lets you make changes without worrying you’ll overwrite work another member of your team is doing. By enabling source control, you remove the anxiety of creating conflict when you implement changes. 

Track the Revision History of Changes Over Time

Sometimes, when you’re making changes, you need to refer back to a specific change you scrapped previously. A version control system stores a history of all changes made to the code, so you can easily look them up.

With Prodly, you can effectively “move backward in time.” Then you can pluck out the configurations you need and reconfigure your changes as simply as pointing and clicking. 

Work in a Truly Agile Environment

Agile release methodology is based on close collaboration and continuous improvement that you achieve by means of tight feedback cycles. For this methodology to be effective, both developers and admins need to work from the same source code and follow the same process for introducing change. 

To achieve this collaborative efficiency, you must reconfigure your workflow. It should be easy for pro-code developers to follow—plus, it should be easily consumable for admins and other no-code team members. 

Prodly Makes Version Control Simple

Prodly DevOps is designed to work in conjunction with your Salesforce deployment system, so you don’t have to load up on multiple tools to get the benefits of version control. If you’re an admin, you can simply point and click to complete versioning tasks—as well as version both your data and code. 

Request a personalized demo to learn more about implementing Prodly for your team!

The Value of Bidirectional Sandbox Seeding

In this blog, we explore what bidirectional sandbox seeding is and why you need it. We also look at the value of sandbox seeding with Prodly Sandbox Management, as well as why you should be seeding sandboxes in the first place.

What Is Bidirectional Sandbox Seeding?

Bidirectional sandbox seeding involves deploying data from your production org to a sandbox—and from your sandbox to another environment. You can do this with a freshly created org or during an environment refresh.

A photo of a desert with a traffic sign with arrows pointing in opposite directions representing bidirectional sandbox seeding

Why Do You Need Bidirectional Sandbox Seeding?

Bidirectional sandbox seeding allows you to create a fresh sandbox, deploy data to it, and then move data in any direction—up, down, and laterally. You can roll back changes to start all the way at the beginning, or you can change just one tiny detail. 

This makes for a much better auditability of changes in production and deployment results, resulting in better governance.

When you’re only able to work with partial data, the chance of bugs and errors slowing down your progress is immense. Many teams lose steam in the development and QA process when they go the route of manually working with a sandbox test data set. 

In contrast, bidirectional sandbox seeding gives control to anyone who can click through a data management workflow. 

The Value of Bidirectional Sandbox Seeding With Prodly

With the sandbox seeding feature in Prodly Sandbox Management, you have the ability to move data in both directions—with just a few clicks. This allows you to maximize your team’s efficiency, transform your entire workflow, and improve your end-user experience. 

By using this low-code option for DevOps, you’ll soon be handling change requests like clockwork. 

Improve Your Governance Strategy With Prodly

The seamless, automated process for seeding sandboxes Prodly provides enhances your governance strategy

It increases org health, fights errors, and improves efficiency tremendously. Here’s how:

Prodly Sandbox Management can help you move your data up, down, backward and forward between your production org and sandboxes. 

It gives you the power to migrate data from up to five orgs simultaneously. This eliminates the need to depend on a Full Copy sandbox to work from as you advance through changes. 

You can also configure data simulations, meaning that you can make changes without consequences. When you need to deploy complex data from a schema all at once, you don’t have to worry about complications anymore. 

Sandbox Seeding Without Prodly

Without the sandbox seeding feature in Prodly Sandbox Management, you’re literally left to your own devices having to use a barrage of tools to handle what Prodly does seamlessly. 

There’s the tedious process of using a data loader. The difficulty, duration, and mind-numbingness of the project can be compounded based on the size of your project. 

Some companies employ a third-party developer to manage their sandbox, which can become quite costly. 

In contrast, with Prodly, you can populate—and even anonymize— representative test data into as many as five orgs in just a matter of minutes. Prodly gives you more control of your data and processes, as well as a greater probability of aligning your team with the needs of your stakeholders for every project. 

Why Should I Seed Sandboxes?

There are several very good reasons to seed sandboxes. 

Without sandbox seeding, there’s a lack of representative production data in lower-level sandboxes that makes it harder to imagine, configure, and test changes. 

This problem becomes more complicated as changes move up the release pipeline and you need to keep all of the sandboxes in sync with production.  

However, sandbox seeding lets you provide everyone with their own development environment before they promote their changes to a shared QA org and ultimately production. This circumvents the problem of who’s doing what in a shared sandbox—plus, it reduces the odds of overwriting each other’s work.

It lets your team work faster and test more thoroughly. It also gives you more effective use of your expensive sandboxes.

In addition, when everyone has their own development environment with representative data, it’s much easier to find a good window of time to refresh your Full Copy or Partial Copy sandbox. And that in turn reduces the number of errors you encounter during the development process.

See Bidirectional Sandbox Seeding in Action!

Discover how easy and quick it is to seed sandboxes with Prodly Sandbox Management—watch the 25-minute webinar Ask a CSM: Bidirectional Sandbox Seeding.

Three consecutive circles depicting the process of agile app development in Salesforce.

How to Implement Agile App Development in Salesforce

Agile app development enables low-code/no code admins and IT teams to deliver more consistent, reliable, and error-free features and applications in their Salesforce instances. But how do you apply agile in the powerful Salesforce CRM platform? Here, we examine six best practices you can implement to achieve agile app development in Salesforce.

6 Best Practices for Agile App Development in Salesforce

1. Establish a Process for Merging Changes

Adhere to the agile process of merging changes from multiple environments before deploying them up the release pipeline. You’ll preserve critical development steps and facilitate the rapid delivery your users demand. 

Many Salesforce admins rush to push changes from their development environment to production. In their hurry, they forget to test, review, and QA these changes. And that all too often results in bugs in production—which can have a negative impact on sales. 

To establish a robust process for merging changes in Salesforce, begin by taking inventory of all your available orgs. In addition to production, you might have a Full Copy sandbox, a couple of Partial Copy sandboxes, and several Developer Pro sandboxes. You might also have Developer sandboxes and scratch orgs.  

After taking inventory, establish a role for each environment in the overall delivery pipeline.

The workflow might look like this: Have one Developer Pro sandbox for each team member to configure initial changes. Then merge the changes to a Partial Copy that the team shares to ensure the build works with all the other changes in that release. 

From there, promote the changes to a Full Copy sandbox that you use as a staging environment for UAT before promoting them to production. Each pipeline stage gives you the opportunity to review your changes for conflicts and errors. If you find any you can’t resolve, you can pull in IT resources for additional support before rolling the changes out to end users.

2. Divide Continuous Work into Sprints

Three consecutive circles depicting the process of agile app development in Salesforce.

Break work up into sprints so you can release smaller sets of changes on a more frequent basis. A sprint—originally referred to in agile as “iteration”—is a period of time during which you develop a part of an app or feature. Using sprints, you can deliver complex projects in bite-sized increments.

Short sprints, which are at the heart of agile framework, help you ship high-quality apps with fewer headaches. You no longer wait to release a whole new functionality in one go. Instead, you deliver working improvements frequently and regularly—usually in two-week timelines. This helps minimize bugs and provides more frequent feedback opportunities that facilitate faster changes and quicker fixes.

3. Establish a Process for Accepting New Feature Requests

With an agile workflow, you put new feature requests in a backlog—a list of to-do items—where they get prioritized based on well-defined criteria. During sprint planning, your team collaboratively pulls new features from the backlog to work on based on careful estimates regarding each person’s capacity.

By doing so, you can commit to the amount of work you take on and successfully deliver the new builds by the end of the sprint. Consequently, the business gains a clear idea of what to expect at the end of the sprint.

This approach has many advantages. One main benefit is that it gives the business a clear process for requesting new features without interrupting your current development flow. Why? Because you always act according to the priority in the backlog as opposed to reacting to new feature requests immediately.

4. Communicate the Plan Across the Business

Agile is a mindset and philosophy. And to be successful, the whole organization needs to subscribe to this mindset.

You can provide clarity and visibility for your end users by sharing the release process for CRM changes. In addition, you should publish a standard release schedule or cadence and standardize change request processes. 

For a successful shift to agile, the whole company must buy in. That’s why it’s important to emphasize the benefits to the business, which include:

  • Frequent incremental improvements to the CRM without making users wait for the big release
  • Fewer bugs and repercussions for end users
  • Prioritization of the most important features to the business
  • Shorter response times to feature requests

5. Implement Automation to Promote Changes and Drive Testing

Automate the deployment process to both promote changes through the release path and continually sync lower level orgs with production. This minimizes the possibility of bugs resulting from manual processes. It also reduces inconsistencies between different environments in the release path. 

Continuous integration and delivery—or CI/CD as this process is known in development terms—saves your team time and effort in the long run. It allows org owners and admins to quickly and safely move a newly-developed functionality up the release pipeline, resulting in a faster time to value. 

6. Adopt Version Control to Track Changes in Your CRM

A version control system (VCS) tracks the changes you make to an app build, including the date of the change, a full revision history, and the owner of each revision. 

Some release management automation solutions—like Prodly DevOps—offer built-in version control solution integrations. This lets you effortlessly track every configuration change. If you need to roll back a change, you can easily do so—without IT intervention.

A VCS makes it easier to view and manage all your configuration data and metadata from a single location. It lets you more easily resolve conflicts if multiple users are working on the same data. Additionally, it simplifies workflows between user stories and sandbox deployments, dramatically improving your time to market with increased release velocity.

Agile for "Clicks, Not Code"

Salesforce end users continue to drive the demand for customized CRM features as their customers’ demands change and the business evolves. Admins can leverage low-code/no-code apps like Prodly DevOps to implement these best practices for agile that were once reserved for software teams.

Now, your Salesforce team can work independently of IT. You have a simple way to manage changes to Salesforce with the same rigor developers apply to traditional software development. You can automatically maintain an audit trail of every change. You can seamlessly deploy data and metadata across different orgs. And you can continuously implement, test, train, and release Salesforce changes faster, more efficiently, and with fewer errors than ever before.

Do you want to learn more about applying agile best practices to your Salesforce app development efforts? Download our checklist “Getting Started with Agile Release Management” or schedule your free, personalized demo.

FAQs

What is agile app development?

Agile software development comprises a philosophy and methodologies based on tight feedback cycles, as well as continuous improvement and continuous delivery. 

More sequential methodologies require teams to fully develop and deploy software before going back and troubleshooting. In contrast, agile is an iterative process in which teams deliver work in small—but consumable—increments. 

In agile, everything is evaluated continuously and piecemeal. It’s easier for teams to quickly respond to change while at the same time minimizing critical errors. This makes it perfect for Salesforce administrators and operations teams. 

Salesforce admins are rarely trained in software development. Nevertheless, they’re tasked with managing app development efforts for the CRM as though they were. They need to have specific structures, guard rails, and release policies in place. This is where agile comes in.

When applied to Salesforce, agile can break down operational silos. It facilitates better communication and collaboration between teams, eliminating many of the most costly issues.  As a result, your app development brings greater value to your organization—faster. Learn more about agile development.

Why do you need agile app development in Salesforce?

For many companies, Salesforce is the single source of truth for managing sales pipeline, existing and churned customer accounts, and all other revenue-based operations.

But like most out-of-the-box software, Salesforce needs to be right-sized to the specific needs of each business and team that uses it. It requires ongoing—and sometimes expensive—customizations, as well as the development of additional features. 

In many cases, IT initially manages the initial support of Salesforce, as well as general support.

After that, Salesforce admins must step up to the plate to deliver reliable, high-quality new features and functionality in a timely manner. Learn more about agile in Salesforce.