Salesforce is arguably the best platform for managing Sales and Service workflows and operations. It is more than an application, it is an ecosystem. It has now developed to a stage where several hundreds of applications are being built using Salesforce as a platform.
Salesforce has two main enterprise level packages – Sales cloud, dealing with the Sales lifecycle and Service cloud that deals with the Service Lifecycle.
Being the ecosystem that it is, Salesforce offers many roles that revolve around its usage and deployment. Development in Salesforce is done in the programming language Force. Being built in the form of an MVC architecture, many kinds of work take place around SFDC. This includes Development, Maintenance, Testing, Deployment and Admin. A Salesforce developer is concerned with coding. Coding for Salesforce is different from the normal coding in that performance of the code is not an option but a necessity in Salesforce. This is because there is a financial for every operation be it fetch, query etc. that touches the Salesforce database. This makes a good performance of the code a mandatory parameter in the success of the code.
Salesforce Administration Salesforce Admin deals with administering the Salesforce instance, in accordance with the rules of business particular to the organization, determining and the user privileges, access levels of various kind etc. Salesforce Admin works closely with the Salesforce developers and also the business team.
Development is all about deriving a solution and any problem and driving it. Even in Salesforce, developers are required for customization, implementing special non-default objects (custom objects), designing the Salesforce infrastructure and landscape. Development activity includes Requirements documentation, Design and Testing to say the least.
Operations is all about maintaining any application that is used in production instances, to make sure their lack of availability does not impact the businesses they support. While the development team is busy developing new features and updates for the current application as also developing new applications, the Operations team is busy making sure the application is available and performing at an optimal level to support the business.
DevOps is a mixture of Development and Operations. In a nutshell, what DevOps does is ensure that when a feature is developed, it makes its way to the production as quickly and smoothly as possible, while making sure it is performing without any bugs and hassles. In case bugs surface after deployment, it goes back to the development stage but DevOps rigor ensures this is done in the least time and in a most efficient manner.
What is Salesforce and DevOps combination?
Salesforce Admins who are working on deployment of code that the developers write, are ensconced in the traditional model of deployment. Precious time is lost in the issues that arise when deploying code using the conventional approach. For this purpose, those Admins who have put in some additional effort in learning Version Control, Jenkins, Docker and some other tools for Automated Testing, save considerable time in deployment. Not only does this help in getting the updates onto production quicker than otherwise, it also helps the entire team (Dev and Ops together) turn out more updates and keep the code current and state-of-the art. This is the niche area that gives the leading edge both to the individual and the organization he works for.