We believe fostering a positive environment is about setting positive examples for others to follow. Your complaints include ideas and suggestions on how to fix a problem. You are humble and accept constructive feedback without defensiveness. Staying open to new ideas and suggestions is important along with accepting work assignments with a positive attitude, no matter how small a task it may seem.
Here is how some Sonomans help foster a positive environment:
William “Dibbs” Dibbern – Principal Developer
“Dibbs is one of the most cheerful and helpful people to find when you have a question and is always willing to discuss and help you find your way.”
What advice do you have for others trying to “foster a positive environment”?
Dibbs: I really enjoy solving problems as I see each one as an opportunity for me to learn something new, as well as a puzzle yet to be solved. Mentally framing a problem in a fun way like that helps to keep you energized and on track. One thing I picked up along the way is to be conscious of when I’m voicing a problem by itself. That poor problem is so lonely. Problems like to be paired with solutions. Offering a solution up with a problem will show that you’ve really thought through the problem at hand and cut back on a lot of the back and forth.
Mike Collins – Senior Consultant
“Mike brings ideas to start a conversation or project, but isn’t set on his way being best. He is open to team suggestions and goes with whatever solution makes the most sense, even if it is not necessarily his.”
Why is “foster a positive environment” an important part of the “How to Be Awesome” list for Sonoma?
Mike: I think that having a company culture at Sonoma that focuses on the positives rather negatives is a huge asset because so much more can be accomplished when everyone stays positive and is focused on the same goal.
Today's blog post was written by Kristie Reid, VP of Consulting at Sonoma Partners.
We recently hosted our third annual CRUSH event for professionals in the professional services industry to come together, share best practices, and gather ideas for improving the usage of CRM in their organizations. My favorite session was led by our very own Jim Steger and Ariel Upton where they discussed the different expectations of the Gen X versus Millennials. This discussion sparked a few ah-ha moments for me to keep in mind when designing CRM systems including:
Gen-X wants to have access to the information they want when they need it.
Millennials expect transparency and need to understand how they are adding value.
So how do you take different wants and needs that you will get across your CRM user base and merge them into your CRM system to ensure a successful deployment?
The simple answer is to get them involved with your CRM program. Their involvement could range from participating in interviews during requirements gathering sessions, having them participate in your CRM Steering Committee, or having them act as your CRM Champions. In other words, make sure you focus on them as part of your Change Management strategy. But remember, that strategy cannot just focus on the executives and management for approval (typically your Gen-Xers). You must also identify what your user base wants and needs (and who better to target than the Millennials who are quickly becoming your largest audience).
Some things to ask understand from these different groups include:
What types of actions do you need to take on your mobile device?
What type of information are you expecting to see from your CRM system?
What is the best way to communicate upcoming changes with the system?
How do you learn new technology?
What don’t you have today which would make CRM a no-brainer to use if there?
The answer to these questions can help drive how you communicate, train, and prioritize your CRM program rollout and ongoing enhancements.
Does getting people from your organization from all generations still feel like an overwhelming task, don’t hesitate to ask for help!
Today's blog post was written by Adam Barr, Principal Consultant at Sonoma Partners.
In my experience implementing CRM, I have often been asked by clients, when do we know we are finished? Or, when is the application complete? Better yet, how do we know we’ve optimized our investment in CRM? The answer is relatively simple on both fronts: Never.
You should continue to invest into your CRM platform in perpetuity, defining success by hitting milestones along the way and measuring results.
This focus on building a program in perpetual motion will continue to stretch the optimization target while regularly adding value to your organization.
The key difference I want to focus on is between projects and programs. If we are generally managing CRM in the same manner as a “set-it-and-forget-it” implementation, we are settings ourselves up to become another failed CRM statistic.
Successful CRM programs are designed with a multitude of features supporting the organization cross-functionally which mitigates the risk of becoming stale. These programs focus on automating business processes, extending channels for customer touchpoints, and providing overall structure, efficiency, and consistency in your message. Saying a CRM program is complete is similar to saying, employee development has peaked and we're not expecting any future turnover - or - the way we interact and engage with our customers is working for us and there wont be any need to adjust our approach going forward...and all our competitors agree. Or - even more incredulous - the technology industry has plateaued and we won’t see any new innovations for our industry. Don’t brush these parallels off as just a dramatic ploy to get you to keep reading. Thought, I do want you to keep reading, so I ask you again, hear me out.
Think back for a moment, why did you invest in a CRM solution? A very common answer is to achieve the Utopian goal of obtaining a true 360-degree view of your customer. Why is this so important? Why do organizations dedicate significant resources, both human and financial, to achieve this goal? Why do you strive for consistent messaging, predictable interactions, and ultimately the ability to streamline or deflect non-value added touchpoints?
At the most basic level, it is because the customer is still king. For the foreseeable future, the customer will continue to be king. The challenge you are faced with is finding ways to optimize your customer value in perpetuity. You need to be able to manage process inefficiencies, balance employee turnover, minimize onboarding learning curves, and do so in a manner that is transparent to the customer to ensure they consistently have superior experiences with your brand. Frankly, your customer does not care about your internal processes, nor do they care about internal structure or any cost optimization pressures you may be facing. Your customer cares about having easy access to your product or service. Your ability to deliver said product or service in an environment that fosters a superior customer experience will drive brand loyalty and advocacy in the market.
CRM programs should underpin all initiatives that support these efforts. Internally, business processes should be reinforced through the CRM tool so the desired behavior becomes intrinsic simply through the use of your application. Externally, customers should have simple access to your company, on their schedule and through their desired channel. You need to provide them with a consistent experience regardless of when or how they engage with your organization. Connecting this omni-channel expectation to a shared CRM environment ensures a full understanding of your customer and mitigates any potential for a less-than-desired experience.
Only when your customer relinquishes their purchasing power. Only when technology vendors feel they’ve saturated the innovation market. Only when your employees have mastered every business process and your competitors decide status quo is good enough. Only then, should you consider your CRM program complete.
AppStore revenue grew more than 40% year over year
Sales of apps exceeded 90% growth in China in 2016
App developers received over $20B in revenue last year
Obviously the AppStore represents big business, and a massive revenue opportunity for companies looking to capitalize on the Apple ecosystem! When you consider that iPhone sales actually declined over the last few years, the massive growth of the AppStore becomes even more impressive. Apple continues to grow the value of their AppStore network, which in turns motivates more developers to create apps for the AppStore, which again increases the value of the network! Economists and other really smart people call this concept the network effect which basically states “a phenomenon whereby a product or service gains additional value as more people use it.”
While the AppStore numbers might get your interest, you might wonder what do $0.99 video games have to do with the enterprise CRM market?!?! We think that ISV’s (Independent Software Vendors) in the business software market should sit up and pay close attention to what’s happening in the AppStore…because the same network effects generating 40% year over year growth in the Apple AppStore will create that same growth within the two largest CRM ecosystems:
Salesforce and Microsoft Dynamics 365 represent two of the leading and largest CRM applications in the world. Each of these systems offer their own app stores that work similar to the Apple AppStore, they provide a streamlined and easy way for customers to find and purchase add-ons for their system. Here’s a quick comparison of AppExchange to AppSource:
Microsoft Dynamics 365 for Sales Power BI Office 365
Approximate # of Apps
~380 total apps ~130 for Microsoft Dynamics 365 for Sales apps
Cloud & on-premise offering
In-CRM App Marketplace
Customer reviews and scores
From this chart, you can see that the Salesforce AppExchange owns a longer history and a larger selection of apps compared to Microsoft’s relatively new AppSource. However, we think that the Microsoft AppSource offers great growth potential for ISV’s because its ecosystem extends beyond CRM into Power BI and Office 365…and both of these related Microsoft platforms have large numbers of customers and high growth rates!
He projected that average app in the AppExchange would generate almost $1 million in annual revenue in 2016.
Neeracha Taychakhoonavudh (Salesforce’s SVP of Partner Programs) said Salesforce will boost AppExchange revenues 5X over the next 5 years.
The top-performing apps in the AppExchange like Veeva, Apttus and Docusign each generate hundreds of millions of dollars in revenue.
So what does all of this mean for ISV’s? We think that every single business software company ABSOLUTELY needs to have an integration or offering on the Salesforce AppExchange and Microsoft AppSource. With the continued growth of the CRM market, these CRM app ecosystems will start seeing significant network effects which will generate amazing revenue opportunities for ISV’s.
If your company wants help developing a new app for AppExchange or AppSource, please contact Sonoma Partners. We can help you refresh an old app, or build a brand new one from scratch!
Today's blog post was written by Angel Shishkov, Principal Developer at Sonoma Partners.
CRM field audit data is notoriously hard to retrieve. It is not available through Advanced Find and is not exportable through the Audit view on the CRM record. Going the custom route, it is possible to retrieve audit records through FetchXML queries, but getting to the concrete values that changed becomes harder. The recommended and supported way of getting to the field audit logs then is to use the RetrieveAttributeChangeHistoryRequest message.
I will demonstrate how to use the RetrieveAttributeChangeHistoryRequest message in CRM by setting up a simple feature that requires us to read the Audit logs.
We have a custom currency field on the Account entity called new_revenue. We have an integration or some other process that updates this field periodically with the total revenue on this Account. We would like to plot the value of revenue on the Account over time, so we can visualize the trend.
We will make use of CRM’s native field auditing to track the historical values of the revenue field on Account. We need to enable auditing on the CRM org, on the Account entity, and on the custom new_revenue field. We will use a custom console application to retrieve the field audit data for new_revenue through the RetrieveAttributeChangeHistoryRequest request of the CRM SDK. The data retrieved will be dumped into a CSV file, which can be opened in Excel and the data can be analyzed and plotted on a graph.
The relevant C# code for the console app is below.
This is what it does:
Creates a RetrieveAttributeChangeHistoryRequest and sets the Account record as the Target and the new_revenue field as the AttributeLogicalName. This request will return all the audit history for this field.
Executes the request against the CRM OrgService and receives the response.
Opens a stream to write to a file called output.csv. This file will contain the audit history output in a comma-separated format that is readable by Excel.
The response returns a collection of AttributeAuditDetails, each of which represent a single change in the value of the new_revenue field.
We loop through all AttributeAuditDetails, and for each one we extract the following:
createdon: This is the date and time of the change. We retrieve it from FormattedValues, so that we get the date and time converted in our local time zone, instead of UTC.
new_revenue old value: This is the current value of new_revenue at the time the change occurred.
new_revenue new value: This is the new value that was assigned to new_revenue.
We format these values into a comma-separated line, and write the line to the CSV file.
When we run this code, it produces a file with contents that look like this:
We can open this file in Excel and see the three columns of data we extracted, the date and time of the change, the old value, and the new value of revenue. Now that it is in Excel, we can set up a simple chart to visualize the data. Select columns A and C (the date and the new value), open the Insert tab in Excel, and select a chart, for example a 2D Line. Excel automatically sorts out the axes, plotting the revenue dollar value on the vertical and the date and time values on the horizontal.
Here is what it looks like:
Mining your audit data has lots of uses, and this is just one of them. If you are looking to expand on this, or build something more complex and you need some help, give us a call. Thanks for reading!
Sonoma Partners is no stranger to the food and beverage industry. Even the nameSonoma Partners is inspired by the wine producing region of Northern California!
Our experience in deploying CRM for manufacturers in the food and beverage industry ranges from breweries to hard lemonade. We’ve written summaries on a few of our F&B projects to highlight what we’ve learned along the way about successful CRM implementations for food and beverage manufacturers:
New Belgium Brewing Company Craft brewery located in Fort Collins, Colorado.
When we first started working with New Belgium, they had a CRM system up and running; however, the employees underutilized the system and the data had long grown stale. This ineffective system failed to provide their sales team with a productive tool in the field. In order to provide optimal service to their customers, we built them a touch-based mobile app to access CRM account information wherever, whenever.
“This new application that Sonoma Partners has designed for us has really taken things to the next level for us, in terms of being able to do everything on-the-go. It is a very valuable tool from both a time-saving perspective and the ability to have information at your fingertips with the swipe or click of a button.” – Matt Furlong, Sales Project Manager, New Belgium
With their new application Rangerland, sales reps can manage appointments, conduct surveys, take notes, and even view sales histories using CRM data on-the-go. While on site, sales reps can easily pull up client information to display past transactional information to help the customer repeat orders andlook up previous records. Since deployment, data entry time has dropped by 5 minutes per sales call, giving sales reps more time to sell, meet with clients, and distribute product.
“Working with New Belgium taught us the value of an on-the-go application for food and beverage manufacturers. Their sales reps are constantly in the field, meeting with the locations that sell their product. Having access to critical customer data while in the field along with a simple way to communicate any issues back to the home office has proven instrumental for their team’s efficiency.” – Kristie Reid, VP of Consulting, Sonoma Partners
Mark Anthony Brands U.S. division of Mark Anthony Group, leading distributor of wine, beer, and beverages in Canada. Flagship product: Mike’s Hard Lemonade.
Mark Anthony Brands (MABI) leadership team wanted to provide their sales reps with a more productive method of doing their jobs. Depending on the sales rep and their region, the mechanisms for collecting and storing account information varied. Without a single procedure in place, th quality of the data and data collection suffered. Further, without a defined method for data collection, leadership struggled to track customer engagement and transactions. The outdated procedures and lackluster tools caused the sales team’s morale to suffer.
Sonoma Partners conducted a Mobility Test Drive with the MABI salespeople to learn how they operated in their day-to-day jobs. Based on ride along observations, we created an optimized mobile application that satisfied their unique requirements. Ultimately, the mobile app revitalized the sales team by providing them with a tool to better access customer information in the field.
“The Mobility Test Drive was key for us to get an inside look into how the sales reps operated and to allow us to customize an application accordingly. For an industry that demands detail-oriented focus and customer experience consistency to survive, a customized application that fits into the daily lives of sales reps can be essential for productivity.” – Aaron Robinson, Principal Consultant, Sonoma Partners
Brooklyn Brewery Based in Brooklyn, distributes beer to over 25 states and 17 countries.
Like most breweries, Brooklyn Brewery’s sales reps maintain relationships with their customers (restaurants, bars, stores, etc.). Mostly, this work involves monitoring product quality, building relationships with buyers, and conducting surveys. Previously, Brooklyn Brewery sales reps lacked an outlined process or set of procedures to ensure client interactions were consistent in the field. Without a centralized system to track procedure or historical performance data, leadership struggled to make key business decisions.
“CRM has brought a ton of focus into what we’re doing. A brewery of our size has a lot of brands and items we are trying to sell. That can be a big headache. CRM helps our sellers focus on what they need to do from day to day.” – Greg Donheiser, Sales Analyst, Brooklyn Brewery
With Microsoft Dynamics CRM, Brooklyn Brewery provides their sellers with better support and record keeping that improves both efficiency and process, resulting in faster and more strategic sales. A new Sales Call Template built into CRM provides a survey and list of to-do's for reps to follow each time they visit with customers.
“The responsibilities for sales reps at food and beverage manufacturers can manage hundreds of accounts at a time. CRM can allow this industry to better compete by providing client-specific experiences with data available at their fingertips.” – Tom Demana, Consultant, Sonoma Partners
You can read more customer success stories on our website here.
Looking to take your sales organization to the next level with CRM? Contact us.
Today's blog post was written by Keith Mescha, a Principal Architect at Sonoma Partners.
There's been a bit of buzz recently in the CRM circles around Power BI and how it fits into the overall CRM landscape. There is certainly no shortage of blogs, podcasts and event demos showcasing the power of this toolset. On a personal note, I'm am seeing the same level of interest based on the meetings on my calendar over the past few weeks.
What we're finding at Sonoma is that the topic of Power BI is still very confusing for most customers. In this multi-part series we hope to help demystify some of the confusion through real-life examples and suggest some best practices based on learnings from our internal use as well as implementations with our clients.
Power BI is Microsoft's analytics and dashboard Business Intelligence (BI) suite of tools and solutions. It's made up of a few main offerings:
Power BI Desktop – Free development tool for building data models and dashboards
Power BI Service – Online PaaS offering to host and share Power BI solutions with a monthly licensing per user subscription based model
Power BI Embedded – Online PaaS offering for embedding Power BI solutions into applications for external consumption with a session based subscription model
Power BI Mobile – Free mobile app for consumption of deployed Power BI solutions on a mobile device
For latest and greatest features and release notes, refer to the Power BI site.
Every company I know has data quality issues or challenges to overcome. Unfortunately, we here at Sonoma are not exempt. One of the things we constantly struggle with is incomplete data and stale data. Often times, we will create a record without knowing all of the various data points we typically want to capture. If we do not go back and fill that information in once it becomes known, we are left with an incomplete and potentially inaccurate record. The genesis of the original report request was to provide a means for the data steward team to monitor newly created records.
The original ask was for a custom SSRS report that listed out all Accounts that were missing specific data across a pre-determined list of fields. This report would then be provided to our data steward team on a regular basis to ensure the data is augmented appropriately. When one of my colleagues stopped by to chat about the report, I happened to be in the middle of building a dashboard in Power BI for a customer. He was curious what I was working on, and as we talked and he explained his need, I fired up a new instance of Power BI desktop in an attempt to solve the problem.
Get Your Data
I pulled up the 'Filtered Account' view from the 'Get Data' option in Power BI. My User Account is a System Admin and the Filtered Account view resolves all the option set and lookup fields for us, so this was a quick and easy solution. When getting data for many of the source types, you have an option to Import or Direct connect. I’ll go deeper on that topic in my next post but for this solution I chose to import.
Shape Your Data
Initially Power BI pulls in all the attributes in the table, this can be a bit overwhelming so filtering down the attributes was our next step. My colleague had a list off the fields he wanted to audit and report, so I filtered down the data set to only include those attributes.
Within 15 minutes my colleague and I had a prototype dashboard built with the fields he needed, including a couple charts to use as filters. From there we iterated on a few designs, and ultimately landed on the below look and feel. End to end this entire process took a couple hours to build, including some custom columns to allow linking to our Account Forms on Dynamics and Salesforce.
Deploy Your Solution
Once we had a solid solution built in Power BI Desktop, I created a new O365 group for internal reporting, added a few users to the group and then deployed the Power BI solution to the Power BI service.
One key thing to note here is that we had to assign Power BI licenses to these users before they could login and see our dashboard. The fact that we wanted to schedule this a couple times per day and that we were managing this through our 0365 AD bumped us from the free to the paid license. We had a handful of users requiring access and plenty of licenses available so this was a decent option for us. If you have a different need there are other options, we can consider for staying on the free option.
Manage Your Solution
From there my colleague could interact with the report by logging into PowerBI.com.
After my colleague was happy with the presentation of the data and a few more cleanup steps, I was able to setup the data refresh of the data set in Power BI. We already had a Power BI Enterprise Gateway installed on our SQL Server for another solution, so including my data set in the refresh was very simple with just a few clicks.
Now that our solution was deployed, our data stewards have logged in and subscribed to the dashboards. Every morning they get an email with a snapshot of the dashboard and a link to access the dashboard where they get direct access to the records in Dynamics or Salesforce so they can easily update those with missing data.
In summary, the Power BI platform is a great set of tools that are easy to learn. There is quite a bit of information available through various internet communities, so getting started is easy. As shown here, from idea to solution was less than one day for a very simple deliverable. The toolset can extend into much larger solutions as needed, so please give us a call and let us help you take the next step in your analytics journey within your CRM applications.
In our next Power BI post, we will discuss in more detail the step of getting your data and how to decide on Data Import Vs Direct Query.
Today's blog post was written by Kevin Mech, Senior UX Architect at Sonoma Partners.
A CRM platform is a major investment, and user adoption ultimately determines its success. A user’s experience with the platform is the difference between it being viewed as a useful tool or a mandatory burden. To encourage user adoption, the user’s needs must be fulfilled in an intuitive and simplistic manner.
The K.I.S.S. principle, or Keep It Simple, Stupid, is one of the best approaches for increasing usability and creating exceptional user experiences.
To an inexperienced user, CRM platforms are the antithesis of simple. To create the ideal experience, first consider the user’s needs. A company’s business processes determine an employee’s responsibilities and objectives. Be mindful of these objectives when considering an out-of-the-box CRM solution versus a customized alternative. CRM platforms are powerful but complicated, making it difficult to keep the experience simple.
The "native" option is a CRM platform without custom modifications. CRM platforms are designed to accommodate the majority of business processes and user needs. If these processes align well with native CRM functionality, this solution is a viable option and the most cost-effective. However, the K.I.S.S. principle is most difficult to apply in this scenario, since these systems are also inherently complex.
To alleviate this complexity, understanding the user’s objectives is imperative. Map the objectives to areas in CRM that allow the user to complete them in the quickest and most intuitive manner available. To assist in this process, Sonoma Partners offers “ride-along” sessions where the discovery team identifies user needs through observation and discussion, and recommends the most user-friendly approach.
Custom Needs, Custom Experiences
Advanced business processes require customizations to the functionality and user interfaces within CRM for an optimal user experience. Such processes often require the user to complete multiple steps or redundantly perform a task within the constraints of a native CRM platform. The user may need to view an aggregate summary across multiple records, perform a custom search, or another use case that native CRM solves with a discombobulated or non-existent interface.
Once again, identifying the needs and objectives of the user is crucial. What is the user trying to accomplish? Why? How does the user currently accomplish the objective? Understanding the motivational factors behind a user’s actions reveals which pieces of data and functionality are relevant to a user in a customized interface. Initially, this option is more costly, but that cost is recouped through increased productivity and higher user adoption.
After the business requirements and user needs are understood, a customized user interface is created. Sonoma Partner’s user experience team designs the optimal experience for users to accomplish their objectives faster and more efficiently than in a native CRM environment. These customizations range from a small widget to a full screen design and often exist within the context of the native CRM interface. When native CRM creates a poor user experience, customization is a great way to encourage user adoption.
Custom-Tailored Mobile Apps
CRM has been desktop-centric for decades, however, not all CRM use cases revolve around a stationary computer. These users require a mobile solution that allows them to access and update CRM data while out and about. For example, many outside sales representatives spend time updating CRM records long after their face-to-face visits and calls occurred. If these users were provided with a customized mobile application, they could manage their daily responsibilities immediately without wasting valuable selling time.
CRM platforms have lightweight mobile solutions, but they are holistic and are not tailored to particular use cases. A custom application specifically targets user’s needs and surfaces the perfect amount of data required to manage their objectives. Sonoma Partner’s mobility team works with these users to conceptualize and develop the ideal phone or tablet application. This solution maximizes a user’s productivity, efficiency, and overall experience, immediately justifying the initial investment.
To ensure the user’s needs are met, a Sonoma Partners user experience architect accompanies several users on “ride-alongs” to observe them in their working environments. Ride-alongs result in key insights into a user’s daily objectives, pain points, and challenges. Focusing on these insights and following the K.I.S.S. principle results in an app that provides the user the perfect amount of data and functionality to maximize a user’s experience.
Keep It Simple
Make the most of your CRM platform by keeping the experience simple. Identify the objectives of your users and consider whether a native or customized solution results in the best user experience. This ultimately drives the greatest gauge of CRM success: user adoption.