I have quite a few years behind me running companies and also helping out companies to grow the business with some key learnings. One of the key questions that has puzzled me all these years is how to make solutions to support information workers and not the other way around. Solutions are unfortunately still built based on what the company wants, and not what the end users want to use. Humans are lazy and due to this, we avoid doing things that will complicate our daily lives. I am sure you agree with me on this. If you don’t you must be exceptional employee.
I admit, I have failed many times with our internal solutions and typically the failure had to do with too complex thinking and “over engineering” things that in the end might have made sense for the organization, but not for the end user. I did blog about this topic already back in 2011, but 3 years is a long time so I thought to come back with some of the new experiences that I have accumulated during the past 3 years.
I will write about my experiences in multiple blog posts to keep it simple and more easy to consume. When you read these blog entries, you should read them as an extended case study of how a management consulting company runs its business using specific software tools. Some of my views might be biased, but they are based on my personal experiences not only building these solutions, but also using them on a daily basis.
My company serves other software companies in both management consulting as well as field execution such as channel development, so it is important to have solutions that support this type of environment. If you really boil it down to the core, we need a CRM solution, a document management solution and accounting solution. Besides these, we need to have all of the productivity tools to create different types of documents.
The first question that I had was whether I wanted to have my documents saved in our CRM system and it was very quickly evident to me that that was not the way to go. Dynamics CRM 2013 is not meant for document management and the only documents I would suggest you keep are some basic templates or marketing materials that you can attach to your emails. Microsoft’s platform for document management is and will be SharePoint so my logical choice was to have documents to be saved in SharePoint. However, the built-in integration between Dynamics CRM and SharePoint is not optimal and does not let me do things they way I wanted to build my metadata architecture in SharePoint. I used content types and document sets extensively in my information management architecture and there are many reasons for this. The way the current integration has been done between these two solutions would not let me use SharePoint native architecture without having to do custom plugins in Dynamics CRM. Whatever we do in our environment I do not it to be based on custom programming. I also wanted to use SharePoint Term Store that enables us to reuse terms across the entire site collection that I have decided to use.
The question remained for a long time what would be the best way to integrate these two solutions (CRM and SharePoint). My decision was to synchronize entities from CRM with SharePoint lists in a way that the end user could selectively decide what entities should be synchronized (such as customer, contact, project information). Our core IP is really two things: who we know and our skills in our domains. The who we know is maintained in our CRM and the skills are maintained in form of a knowledgebase which is our case is our SharePoint repository. We help software vendors with business modeling and channel execution so we keep making lists and marketing campaigns towards our database of contacts. We have been doing this for almost 10 years, so when we do outreach, some already know what to expect from us like getting information about interesting products on an ongoing basis.
I learned an important lesson from an experienced business owner 15 years ago and this is what he said: “Petri, the only thing I have is what I know, who I know and all of this information is in a central customer relationship management system repository”. I took this statement as the core when building my company and take pride in really maintaining our lists.
The role that Dynamics CRM has in our environment is to be the central hub for all company/contact/lead information. Besides this, I have built a custom entity “projects” that is automatically syncronzied to a SharePoint list. Another customer entity that I have in CRM is “education” that includes all of the educational sessions that I am running either via www.tellusacademy.com or seminars in different parts of the world.
I want our CRM to be the place where people enter and update data and every record that is updated needs to flow whatever other solution needs the information. In our case, I found out software tools that enables us to synchronize information from any CRM entity (also custom entities) to any list in SharePoint. The synchronization happens by the user selecting a radio button on the CRM record and this is the “kicker” for the record to be synchronized to SharePoint lists.
In summary, the two core solutions that we use every day to run our business is Office 365 that includes SharePoint 2013 and Dynamics CRM 2013. Both of these are cloud-based and my company does not own any servers, in fact I made that decision already back in 2005 when I started TELLUS International that we would not invest in servers.
In the next blog I will go in more detail of the integration and the process/workflow we have when we work with these solutions. It might sound simplistic, but in the end of the day, we are not talking about rocket science here, we are talking about solutions that one wants to use every day.