Salesforce, Inc. (CRM) Earnings Call Transcript & Summary

November 7, 2024

New York Stock Exchange US Information Technology Software special 57 min

Earnings Call Speaker Segments

Amin Rehman

executive
#1

Hello, everyone. My name is Amin, Amin Rehman. I'm part of Salesforce Platform Solution Engineering team. There has been a slight technical difficulty that we were facing and [ Samer ] is not able to join us today because of that. But I will be driving the session. I hope you have an informative session. Having said that, let me just get it started. The topic for today is an idea to an app. We will be discussing about the core Heroku capabilities that help you create apps quickly or translate your ideas into app fast. Having said that, let me just quickly get into this. Just a quick forward-looking statement. We might be mentioning a few things, which are in road map, and we will flag them out as we speak. However, please make all your purchasing decisions based on currently available features. Today, Samer and I will be driving this. Samer would try to join shortly, and he will be addressing the Q&As. Meanwhile, I'll take it up the presentation and the webinar. I will try to answer questions as I speak. If there are any critical questions, I would like to take up at the end, right? Thank you so much. All right. Let's talk about Heroku. But before -- oftentimes, when we talk about Heroku, the first question that comes through is what is Heroku. Now Heroku is -- can be defined as a fully managed container-based cloud platform, right? And it is available through the Salesforce ecosystem, it is available for running a modern apps, specifically bespoke app, right? So you will ask that Salesforce has a pretty established and a decent CRM platform, what is the need of Heroku. A lot of times, we have seen customers struggling to introduce their own custom logics in Salesforce when they want to extend the capabilities of Salesforce by, let's say, leveraging some open source libraries or catering to a wide, wide range of users, right? Not every time there is an option to provide a user-based license or a login-based license to customers or, let's say, partners because of the huge volume and commercial impact of it. In those scenarios, oftentimes, customers choose to go with the bespoke applications, which are seamlessly connected with Salesforce, and that's where the Heroku comes in. It allows to -- allows you to host, run, deploy your React Native .NET Core, Java apps with the seamless access to the Salesforce data and functionality, right? That's what the Heroku does. Now what is the main difference? You will say the same thing that we can do in AWS or Azure or Google Cloud for that matters. Yes, technically, you can. The main difference is that Heroku is designed for developers. When I say Heroku is designed for developers, that means that it does not require a lot of infra management or administration efforts. Basically, Heroku, out of the box provide you all the capabilities, all the functionalities, all the automation that you typically expect from a system administrator or a DevOps administrator or security administrators, right? So your manpower, your focus, your approach are own apps rather than infrastructure. So you can focus on your business use cases, you can focus on the functionalities you want to deliver to your stakeholders rather than worrying about managing and upkeeping the infrastructure, how do I host this app, how do I make sure this app is secure? How do I make sure that the security patch is installed? You don't have to worry about it. Heroku takes care of all those mundane jobs and administrative activities, and you can dedicate your manpower to developing and developing the business functionality to your users. Now typically, when you have an idea, so let's say you have an idea, let's take an example. Let's say, you are a manufacturing company, and you want to develop an influencer app. Let's say you're a paint company, right, and you want to create an influencer app that the painters and workers will use and you want your business to flourish through your influencers. The same app could be used by architects for choosing the right colors and shades, getting knowledge about your platform, getting knowledge about your offerings, right? And in that case, that idea, these functionalities that you have to deliver to your stakeholders, whether it's painters and architects, contractors, from there -- from this idea to delivering an app requires a lot of work. You would think about how do I set up this application on servers? How do I deploy that? How do I make sure it's highly scalable? How do I make sure it's highly available. There is an encryption at rest I need, encryption in transit I need. I also make sure that it is safe and secure from intrusions and brute force attacks. I also want extensive monitoring and logging capabilities. I want to kind of have micro services architecture into it. Now all those things is kind of in the forefront of your mind before you scale and deploy an app of that size, right? But what Heroku basically does is that takes all these responsibilities on itself, allowing you to focus solely on the app development part [indiscernible], right? So when you use Heroku rather than worrying about scalability and load balancing and containerizations and DevOps, you majorly focus on developing your app. Heroku takes care of deployment. It has automatic capabilities of GitHub-based deployment, container-based deployment, code-based deployment. And then it takes responsibility of managing that app. That means, if there is a need of a patching or there is a need of an upgrade or version updates, it takes all those responsibilities. It also takes responsibilities in terms of scaling. For example, I want to make sure that with a variable route, I'm delivering an app for customers, some days there might be 100 users. Some days, I will see thousands of users coming out of my platform, or even lakhs of user. I want to have that auto scaling enabled. But I don't want to worry about how do I configure a software load, hardware load balancer on top of it. So scaling also is taken care by Heroku. And that's why your app gets delivered quickly. Heroku is by itself a polyglot platform. And I say that, that means it can understand multiple languages. We already have support for 1,200-plus different build packs. And there are roughly 8 build packs, which are officially available from Heroku itself. And there's a very large community, which is contributing to these custom build packs as well. And by the end of this year, we will also have official support for .NET Core. There is already a buildpack. So what is a buildpack, people often ask is, buildpack is basically set of scripts, which will pick your code, package it and deploy it in Heroku. So you don't have to kind of create your own build pipelines or deployment pipelines. It automatically understand the code you have, the dependency it has and it packages automatically and deploys it into a Heroku platform, right? Now what are the key building blocks of Heroku. So when we talk about Heroku, there are a lot of things that have to consider. And unlike other platforms where you have to specifically know exactly what needs to be done and what needs to be procured, for example, if I'm working with AWS, whether I need RDS or Aurora, how much core I need to factor, how much compute I need to factor or how much RAM there should be if I'm using a 2 terabytes of database, what should be the high availability option I choose? How do I manage that? A lot of questions come to your mind. When we talk from the Heroku perspective, we have -- we know that, since we were developing this platform for developers, we don't want them to go into those worries, and we want to take care of those responsibilities through the [Technical Difficulty] practice configurations as we call it. So when you say that I want to run minimum, what you need is, first, you will need where you can run your web applications, which becomes Heroku Dynos. Heroku Dynos are nothing, but you can consider them as a container run time, right? Much like Dockers or Kubernetes, it has a capability of running Linux containers. And when you deploy your app, it runs whether it's a web API or, let's say, batch process or a schedule job, it runs into Heroku Dynos, which comes into two types: Web Dynos, which takes care of your web applications and API or worker Dynos, which take care of background jobs and schedule jobs, right? Also, Heroku Dynos comes in various sizes. We have various options available. For example, we do have a Dyno which is good enough for like 0.5 GB RAM, 1 GB RAM, 2GB RAM. So depending on your memory requirement, you will choose which Dynos that you use. And then it also has automatic scaling into it, so you can decide that if the load -- so let's say, I will configure it something like this, my response time goes below 5 seconds, I want to scale up. And that's why you can scale up as you want. It will also scale down automatically. Then the next component we have is we call Heroku Data. Data contains a lot of data services. And all of these are fully managed services. That means you do not have to worry about their upkeep and maintenance and configuration and networking and security. And these services include your Postgres, Redis, Apache Kafka, these are provided by Heroku. And then we have multiple partner data add-ons as well, which could be I want to have Microsoft SQL database or I want to have MySQL database or I want to have Cassandra DB. All of these are available. These data services also include capabilities like logging, I want New Relic. I want Sumo Logic. I want very extensive Papertrail logs. All these capabilities are part of Heroku Data. Furthermore, you might think of any integration plug-ins that you need. You might need, let's say, I want messaging capabilities. I want to have IoT capabilities. All these are part of Heroku Data through managed services. Now the third component we have is called Heroku Connect. This is the kind of a differentiator that we have, which other platforms does not have. None other platform has this capability. And this is the capability which allows you to sync data between your Salesforce and the Postgres database that you're going to configure in Heroku Data. So what it does is basically that, say for example, I'm creating influencer app for my painters and architects and contractors, and they will be accessing my product information, which is there in Salesforce. They will be probably capturing a lead, which is also going to go in Salesforce. They will also be raising tickets and request which is also going to go in Salesforce. They're going to also be kind of scanning coupons, leveraging the loyalty provisions that I have provided and that loyalty calculation is also helping in Salesforce. So there's a very tight dependency on Salesforce for this influencer app. And it needs a lot of its data that is residing in Salesforce, a lot of those functionalities that are residing in Salesforce. So what we typically do is we set up a Heroku Connect to bring that data, account, contacts, lead, opportunities, cases, loyalty points, all these things get synced with the database in Heroku sites. All you have to do is pick, okay, these are the objects. These are the fields that I want. I want a one directional sync that means from Salesforce to database or bidirectional sync between vice versa exchange. And that's it. And now all your influencer app has to do is interact with the database. It doesn't have to call Salesforce API. It doesn't have to specifically push data to Salesforce. It just have to read and write data to database. So when you write a data to database, Heroku Connect syncs the data back in Salesforce. If the Salesforce, for example, influencer, painter raise the case. You will create an entry in database table. The database table will sync the data directly into Salesforce, the case gets created in Salesforce. Somebody is working on that case, they update the case status, it's going to get pushed back into database. And when you query, again, and when you show that data from database on the influencer app, you will see the updated case. So you do not have to worry about any integrations with Salesforce and just use Heroku Connect and read, write from database and you will always get latest information of the Salesforce. Furthermore, it also reduces the load in Salesforce. Heroku Connect calls best APIs, bulk APIs of Salesforce. However, it doesn't consume others into your orgs limit. So if you're worried, when I'm reading the skills data 10,000 times a day, I'm creating 5,000 tickets in a day, how many APIs of Salesforce I'm going to consume? Zero, to be honest. Since you're using Heroku Connect, you will always have a data in database, you will read the data from database, not from Salesforce. So you will not be putting any pressure, any consumption of your orgs API capabilities. And then finally, we also have what we call is Heroku Private Space. Heroku Private Space. So when you take Heroku, it comes into 2 additions. One we call as common run time and second is called private space. Common run time is a shared infrastructure. Typically, those common runtime assets are created in U.S. and Europe. So you have a low security footprint app, which you can -- doesn't care about data residency and you are okay to leverage shared infrastructure. Let's say, I just want to do some testing and trying the features. Yes, sure, use common run time. But if you want to say that, okay, I have a -- I'm creating a loan origination system for my NBFC customers, and I want to make sure my data never leaves India boundaries, I would go with the private space because private space will provide the India data residency. It also provides dedicated infrastructure for me. So Dynos and DBs I'm creating are dedicated for me, right? And they are created inside the private space, ensuring better security, isolated network and India data residency. So that's how the private space work. Now, the same thing is also applied in terms of commercial. So when you procure in Heroku, you procure certain Dynos units, certain data credits, certain Heroku credit packs and a private space, 1 or 2 maybe private space. Now when you buy Dynos units, it doesn't matter whether you create a Web Dynos or Worker Dynos. You have a flexibility to do that. Let's say, you have bought or procure 1,000 Heroku data credits. It's totally up to you whether you want to deploy a Postgres database or a SQL server database. So that flexibility is there. We do not dictate what assets you should procure or asset you buy. You just buy credits and then you use the credits the way you want. You can architect your application the way you want. Now what are the advantages of Heroku or why just why I use Heroku? First thing first is it extends your Salesforce capabilities. That means your Salesforce data and functionality that you love is getting extended through connected apps, through seamless integration with Salesforce data. So those workloads that you think that I cannot do it in Salesforce because I cannot give licenses to my 1 lakh customers, yes, then let them run on Heroku. Or let's say, I have a batch process that is going to run like crazy, it's going to run every second and going to create a lot of load on Salesforce by calling those APIs, yes, run on Heroku. So those kind of extensibility and flexibilities that you get in Heroku. Furthermore, your data never leaves the Salesforce trust boundary because Heroku are natively connected with Salesforce. So when you use Heroku with Salesforce, you still remain the part of Salesforce trust boundary. And then Heroku provides scale as you grow. You can very well have a configuration where you say, I want minimum 2 Dynos running, and maximum, I'm running 100 Dynos. So it auto scales based on your load. So when the load increases and response time goes down, it will add more Dynos, add more Dynos, add more Dynos without you ever worrying about load balancing and configurations and all those things. And then when the load comes down, automatically, Dynos are released and it will come down [Technical Difficulty] that you have set, you can focus on innovation. You don't have to worry about deployments, how to scale administration, security administration. All these responsibilities are taken by Heroku. Now of course, when you talk to your customers, they will have very increasing expectation from the mobile apps today. You want to leverage all those capabilities which are available, modern technologies, like I want a real-time personalization. I want connected experience. That means whatever the data is out there about me should be available to me. I want more dedicated and connected relationships with my partners. So let's say -- let's consider a scenario that you have a dealership scenario. So you're a manufacturing automotive customer, you are an OEM, right? And then you are working with 10,000 dealers and then your customers reach out to dealership. So your customers need to have access to not only the data that you have and functionalities and services that you provide, they will also need access to the functionality, data and services that your partners provide. So by bringing all this together, you can develop a very seamless experience. And for that, I'm going to take an example of Lamborghini. I believe you must have seen or heard the story of Lamborghini. Lamborghini is -- it was born as a challenge. When we say born as a challenge, it was a challenge that Lamborghini took, which were originally a tractor manufacturer to say that we're going to create a supercar. We're going to create something sort of Ferrari. So this legend says that Lamborghini was not happy with the customer experience or issues which were there in the supercars at the time and they went ahead and talked to those prominent manufacturers of those supercars, they were hit with a brick wall. And to address those customer experience challenge, they took up creating a supercar or race cars as a challenge. And that's how the Lamborghini brand was born. From the tractor, they became a supercar manufacturer brand. And since the inception somewhere back in 1960s and '50s, they started creating these iconic models from the very first 350 GT to Temerario that we have now. It's like every car is a story. Every car is an icon. Now so what they focuses, from the very beginning, the focus has already always been customer experience because they were driven by delivering those or addressing those issues, which were experienced in other race cars, other supercars. So for them, their motor was one hero of a kind. Every customer, so it's not like customer is a hero. Yes, everybody says that customer is a hero. For them, every customer is a unique hero, hero of a kind. And they wanted to treat their customers not like drivers. They should feel like pilots because they are driving Lamborghini. They are not driving any normal cars. So they wanted to be a part of a very exclusive group. They want to provide the specific customization, won't call it personalization, I will call it as individualization for every customer. They want to deliver the pilot-like feeling, feeling that you get in a cockpit, right? And they want to deliver that exclusive experience and community experience to their customers. And for that, they came up with an idea. So when they started, they started with -- basically, they had 3 building blocks with them. They wanted to have a very personalized app experience, which we call -- which they call as UNICA. They also already have a dealer management systems for all the dealer services and offerings. And they also wanted to have accelerating pilot like connected car experience. So you can control your cars, you can control your movements with all the smart technologies available out there. And the future, they were thinking of let's -- we might want to have a very immersive AR/VR experience for sales. And then we also want to expose all these services and capabilities through my car dashboard itself. So if I need to, let's say, I just want to schedule the service, I can do it from a car dashboard. I don't have to use a mobile or web or desktop for that matter. So this is what they have planning to do, and they have already delivered the first 3 parts. They already have an experience connected pilot. They already have a dealer management system, and they already have the UNICA app. I'm going to talk about the UNICA app more because that's where they have chosen Heroku as a platform of their choice. Now what they do offer, what Lamborghini offer in a UNICA app, first and foremost, the feature they wanted to provide to their pilots is to customize their next car, that means ability to choose the colors and trends and models and accessories and all the trims and offerings that a car manufacturing of Lamborghini kind of provides and then provide a very personalized, individualized customer care as assistance. They also wanted to manage the waiting time, whether it is from the car delivery point of view, at the time of sales or at the time of service. They wanted to provide live streaming of the workshops that where my car is, it's getting clean, it's getting paint job, it's getting accessories installed. I want to see real time. So I know exactly what is being done. And they wanted to connect with the Lamborghini world. That means I want to explore the products and services. I want to explore the dealerships which are available. I want to know which dealerships I can go to, what are the services the dealerships are providing? Are there any events being organized, latest news, any exclusive campaigns that are being run. Lamborghini pilot events are being organized. I want access to that, and that's what the UNICA app provides. Now -- so this is all done through Heroku, the power of Heroku platform. As of now, we need to talk about Heroku, let me just go back a little and just give you more brief on this. To explain the overall architecture of UNICA app, the UNICA app sits on Heroku. The dealer management system is more in the Experience Cloud and sales and services process are being handled in the Salesforce platform. But there is one key element which goes unnoticed and still provide all these capabilities is a data cloud. So data cloud also sits with the Salesforce, and it is used to create that individualized experience to generate insights from the data that they already have and to bring about all the capabilities which are being offered by dealers and DMS, by Lamborghini through their OEM services and also connected experience. So they have a connected car platform. So if I want to start my car, turn on the AC, check my headlights, from the mobile app, I should be able to do that. And with the help of this connected app, ever connected app of UNICA, they are able to connect to all these ecosystems and deliver that seamless functionality as well, right? Now so when we talk about Heroku, people say that, okay, it's a new platform, niche platform. Nobody knows much about it, but that's not true. We cater 60-plus billion requests per day. We have more than 13 million apps in deploy. There are roughly 38 million data services, which we manage every day, and there are more than 500 add-on services that we provide that our customers can leverage. So it's not a new platform. It's not a -- I would say, it's not something which is in works in progress. And the key ROI that Heroku delivers, can I do all these things? Okay, let's say, okay, Heroku Connect is a differentiator. I can deliver the same thing through AppFlow. You can. Technically, you can. But let's say, in Salesforce, you have 10 objects that you want to kind of sync and get access to. In AppFlow, you'll probably have to write 10 or maybe 20 AppFlows to sync the data bidirectionally with the objects. So all of that worry of integrating with data is taken away by Heroku. So it leads to at least 40% increase in developers' productivity and to 85% time faster return of investment, right, unlike others because what often we have seen is that -- so let's say, if you -- I take any other cloud platform, it will take at least a month to set up that landing zone. And you are first and you are onboarding on any cloud platform, the 1 month is a good amount of time that you will need to just create a landing zone and host your first app, just a Hello world! page -- even the Hello World! page. With Heroku, you can do the same thing in 10 minutes. Literally in 10 minutes, you can just make your app live. That's how fast it is, right? And then the major difference we see is the reduced DevOps experience because oftentimes, customers, when they have an app ready, they are ready to deploy that app. I just want to do a beta testing, just deployed my staging service. That itself requires a lot of packaging, writing scripts, setting up Jenkins Pipeline and then posting this application and then set up the connectivity between database and Kubernetes services, making sure that APIs are visible. I want to have service discovery. All those things are taken care by Heroku. So your DevOps expenses, DevOps efforts get reduced by 30% at least. Now, coming back to the UNICA. So when we talk about UNICA, and we talk about high-resolution AppFlow. So when we say high resolution, what does that mean? We have been talking about personalized app, right, forever. We were talking about connected apps that same app can provide experience and services delivered across the ecosystem. Now we are talking about high-resolution apps. The high resolution app basically means they have a granular access to the value coming out of data. Your data might be spread across multiple systems. I have -- let's say, I have an -- again, same example, let's say, Lamborghini, then I will have an ERP where all my enterprise resource planning happens. I have sales management in Salesforce. I have service management of job card management in Salesforce. I have dealer portals in Experience Cloud. So my data is spread across at least ERP, at least Salesforce, then I have a couple of data warehouses as well. And then I have a product management software where I manage my product life cycles. All of these combined together, if I get an access to all this data and the insight coming out of the data in an app that becomes a high-resolution app for me. The things that you have to worry about variety of a data. You will have a variety of systems that you want to connect to. And of course, in today's world, the velocity of data is very huge. When I say, variety means different type of systems, some handle structured data, some handle unstructured data, some handles data in the form of batches, some handle in form of files, some handle in the form of streams, even streams. Velocity is speed at which I get a data. I'm getting pings from connected cars. I'm getting 100,000 requests per second. I'm getting data coming from our dealerships, cases are being updated, services, job cards are being closed. And then the veracity of this data, the data could be hierarchical in nature, data could be time series data, for example, I'm getting a ping of locations or it could be identity data. It could be data in the form of unstructured data, chat transcripts, call transcripts I'm getting. And then the volume of data, the sheer size of the data, the huge amount of data I'm getting. And then comes the last part, value of a data that I can derive for you. So I have to have a system where I can take care of a variety of data sources. I should be able to ingest huge amount of data, which could be of different, different types, which could be in different volumes. And then I have to ingest, digest the data and produce a value of all of it. When I'm able to do that, I will be able to create this high-resolution app. And that is being done through Salesforce ecosystem in Lamborghini as well. The data cloud is the one which has the ability to ingest all this variety of data at different velocity, of different veracities and at the large volume and then churn the data in real time in the form of a batch insight or a real-time insights to deliver that value out of it. What is the differentiator about this individual pilot that I have? What are the things that he needs, based on last usage of its car, what is the next thing that he's probably likely to do? And of course, couple it with the AI capabilities. When you have so much data to digest and when you couple it with the machine learning capabilities and of course, the generative AI capabilities, you can deliver so much value out of it. And that value is something that's going to create this high-resolution app for you, right? And when you do that, you have a high-resolution app in mind. So before Heroku or before Data Cloud in picture, what -- how Lamborghini will look like, they had a very complex app integration to talk to the data, which is sitting in their connected car platform, data which is sitting in their Experience Cloud and DMS system and ERP, all then those have to be manually or at times done through ETL processes to kind of combine together, ingest and then generate dashboards or insight out of it. There were no real-time insights since they were using ETL. Oftentimes, the insights are at least 1 day old. With Heroku and Data Cloud, they were able to deliver that experience with real-time insights. They are able to understand the customer demands on the go and deliver those personalized needs or individualized needs in a very hyperpersonalized environment and deliver the offerings and services in a more -- much more contextual way. This is how the Heroku delivers it. So with Heroku, they were able to deliver the app fast. They were able to deliver this app at a breadth taking speed. They were able to build a very secure app with a trusted Salesforce platform with in-build security, data residency, all those things that they want. And they want to simplify the integrations and tap off. They don't want to write APIs and consume APIs and then write scripts to deploy those apps, scale up by writing YAML file for Kubernetes uptime and scaling, no. And then elastic scale, that means I might have a variable load coming into my platform. I would need the capabilities of scaling up and down as I want. And then finally, accelerated connected personal experience is the final thing. It relies on Heroku Events, Data Cloud and Heroku next-gen capabilities. Point of time, I just want to highlight next gen app. Heroku is -- you already might be aware of Heroku change events, which kind of publish events whenever the data changes in Heroku database. We are also introducing now the capabilities of Heroku Events. With those events, you are able to listen to the CDC and platform events, which are happening in Salesforce. So you're getting events, let's say, from connected car platform into Salesforce, some issue with the car. You got an event in Salesforce. Salesforce can process it. At the same time, Heroku can listen to it, inform the customer and start taking necessary actions on top of it. So with Heroku Events, you are now able to listen to and subscribe to Salesforce CDC or platform events as well. You can also react to the Salesforce monitoring events as well to take care of all the actions that you need. And furthermore, a lot of our customers have given a feedback about Heroku Connect and they want to -- you must already know that streaming API is going to -- in the long term is going to roll out. So it's going to get decommissioned, to be honest. And so we are moving everything to the event-driven architecture and same thing happens with now with Heroku Connect as well. Now it has -- in the future releases, we will have the capabilities to use the CDC events for syncing the changes from Salesforce into Heroku database. So it will be more connected experience, better response times and better syncing of data through event-driven architecture. So that's what we are looking for. So with Heroku Data Cloud and Salesforce platform, what do we get? We get a stronger customer relationship because you are providing the right amount of information at the right time and you are getting right insights to take care of that individualized demands, right? And that leads to better customer trust, that pilot experience that Lamborghini want to deliver and which leads to better customer loyalty and retentions. You're also trying to deliver an omnichannel engagement. That means all your services and offering across your ecosystem, whether through the OEM itself or whether through your partners and contractors and dealers, you are able to deliver all that a customer expects from Lamborghini at one place, right? You are also able to interact with your various stakeholders better to resolve the issues and problem faced by customers. And you are allowing those stakeholders to have that insights and data, so they have a better understanding and visibility of customers' needs, customer issues and demands. And then finally, you are also delivering an exciting brand community, that unique experience that brand like Lamborghini wants to provide, which makes the customer your advocate. That means customer will gladly speak about the experience they have in the events or their workshops or how they felt when they purchased the first Lamborghini or how they felt when they went for a service for the Lamborghini. And that's the experience that it delivers, right? And then, of course, it provides that competitive edge as compared to your other competitions, and it makes you stand out because you are delivering that experience and services that customer needs, right? And that's a differentiating customer experience. Yes, that's all I have for today. I'm going to quickly go through Q&A and try to answer these questions.

Amin Rehman

executive
#2

So let me start at the bottom. Dynos provides both scaling vertical and horizontal? Yes, we do provide both kind of scaling. Vertical scaling, that means choosing a larger Dyno is still a manual process or you can do it through APIs and trigger it. Horizontal scaling is pretty kind of metric driven. For example, you can decide that if I have 95% of my request, I have getting a response time more than 5 seconds, I want to scale up, right? So you can define those thresholds and have the scaling up of your Dynos. That's both vertical and horizontal scaling is possible. Can you explain in detail how connected app car experience got delivered? I believe I have done it. If not, please just drop me another question, I'll try to reiterate that. Which one is better comparison between privacy backup or Heroku in case of DB storage concern? Okay. Interesting questions. I see when you say privacy backup. I think you're talking about Salesforce Privacy Center, Salesforce Backup and Heroku. So if you have a storage concerns, that means I'm assuming that you're talking about I'm running out of Salesforce storage. In that case, if you are an existing Heroku customer and the data is already there and getting synced in Heroku, Heroku is a very good platform where you can just move the data to an alternate schema or a database so that your data size in Salesforce goes on. So let's say, this is getting sync in Heroku. So in Heroku, what you can simply do is move the table from this table, let's say, Salesforce.case to archive.case' table. And when you do that, data gets deleted from Salesforce case and get inserted into archive.case. When this happens, data get automatically deleted from Salesforce as well because of bad additional sync. So now the data is there in Heroku, but data is gone from the Salesforce. So your storage goes down, your Heroku connect requirements or number of packs that you need also goes down. And what you can further do is just add a Salesforce Connect on top of it to access this archived data back in Salesforce. Heroku Connect, apart from bidirectional sync, it also provides you capability of exposing old data APIs, right? So you will see external data option in Heroku Connect through which you can expose old data. And you can consume those old data APIs in Salesforce Connect and visualize that data that you have archived into another table of Heroku that you can do very easily. So if you are a Heroku customer, most of your data is already in Heroku, it's easy to switch that. But a lot of our customers does not use Heroku. They do use Salesforce. And in this case, privacy center is a better option because in those cases, you don't have to -- you don't need that Heroku expertise. So let's say, if you do not have Heroku capabilities in your organization, you can just -- a simple admin can write what we call as data management policies in privacy center to move your data from main storage to retention storage, right? So again, it's a matter of skills. You have skills, you have capabilities in Heroku. Heroku would be a better option, more scalable options. If you don't go ahead with privacy center, very simple, easy to use, no coding experience required, no code completely policy-based. Backup on the other hand, will not address your data storage issues. Backup is only going to take a snapshot of your data and create a version of it. Every time it runs, you might run it hourly basis. Salesforce backup does support hourly backup. So every hour it runs or every day it runs, it'll take a snapshot of your data and store it into your backup storage. It doesn't deletes or remove data from your data storages. So it does not solve your storage problems. It just helps you in the restore and recovery point of view. I hope I have answered your questions. We need a seamless mobile application that can help our business. Who are the competitors of Salesforce Heroku? How different is it from its competition? Yes. So I think I that answered some of the questions -- some part of this question already. Heroku, you can compare it with AWS of this world, Azure, GCP. Just for your knowledge, Heroku is on AWS data centers. So it is built on top of AWS. So if you compare -- so let's say, if you say that, okay, EC2 is going to cost me this much and Dynos are going to cost me this much, this is not going to be an apple-to-apple comparison because we are not providing you EC2. We are not providing you service. We are providing you services, highly scalable, auto scalable, fully managed services. You can say that -- you can compare Dynos with Azure App Service or container instance because it provides full DevOps, full managed, full scalability, but you cannot compare apple-to-apple comparison with infrastructure services. So I would put it this way. All of these cloud providers are competitors. If you have an extensive team of AWS architects, system administrators, network administrators, security administrator, you might not value the Heroku, because for you, like, oh, my administrator can do that. But if you're a company who rather spend time and energy on innovation and app development rather than infra management part, then you will love Heroku, because Heroku does not need a system administrator. It does not need a DevOps admin. It does not need a security admin. It does not need a DB admin, network admin, Kubernetes admin, no, we don't need that. That's the main differentiator for Heroku. All right. So let me just quickly go through what application are not -- okay. I do not know coding, then how can I use? So if you do not know coding, probably Heroku is not the best choice for you because it's specifically made for bespoke custom applications, you would rather go with Salesforce platform because it provides you all those low-code capabilities that it offers. So you can drag drop design screens, design forms, design reports on the go. So if you do not know coding, just use Salesforce platform plus SFX licensing structure. So SFX Salesforce is either user-based licensing. So you will have per user license or a log-in-based license, which is there in community and now lighting platform also has this license. And Heroku, it's more from the capacity base. So you will say that I want to buy 100 Dynos units. Based on 100 Dynos units, you can run any kind of a workload. So especially in a scenario where you have huge customer base or huge stakeholders you want to address and you do not want to give per user license, Heroku would be a better option for you, right? Heroku, again, as I said, is a capacity base. You estimate how much capacity you need. Now you do not need to factor the peak capacity. So you will -- for example, let's say, on an average, I see 100 users coming through. Someday, I might see 1,000, 10x of 100. An architecture that can handle 1,000 customers, but in a normal scenario, we will only run a compute enough for handling 100. So you build that auto scaling, right? And you provision according to that. You don't have to provision for 1,000 customers because 1,000 probably will come 5x in a year, 5x in a month. You have that scaling. So you can plan your capacity based on 100 users with the auto scaling capabilities sometimes like, let's say, 5x times in a year for 1,000 workload, totally capacity based. What is the application is not written to support the horizontal scale? Application does not need any capabilities to support Heroku horizontal scaling. Only challenge oftentimes that we see is sometimes applications are written in such a way that they, for example, they are using a lot of in-memory data, right? I'm maintaining session information in memory -- in RAM. When this happens, so let's say, you have -- when I deploy application of 1 single server and it is having in-memory session management, then the problem occurs. So if I make another horizontal scaling, another Dyno, 2 applications now running, and then when the request come to second Dynos rather than the first Dynos, initiated on first now coming to second, the session information is lost. So we do suggest to follow what we call as a twelve-factor app, which has the best practices into it. So if all you have to do is make sure that you are not using in-memory session management. You're relying on something like Redis cache or a client site session management and you are more on a disconnected architecture rather than connected. When you do that, your application should be easy to have the horizontal scaling in. And so we would suggest you to follow the best practices. So only in this scenario, I see a challenge where you will not be able to do horizontal scaling. How often the data is getting synced with Salesforce Data Cloud? It's totally up to you. We do have both options. In Salesforce -- sorry, in Heroku, we do have a connector, which automatically sends the data to data cloud. How do you want to configure it? Do you want to do it on batch or a real time on a streaming basis? It's totally up to you. All these options are available. Do you provide connected and disconnection rates per day on platform? Connected and disconnection rate? I'm not clear. [ Pramod Jagtap ]. If you can rewrite this with a little more clarity. You will be able to monitor every connection, every operations through login. Disconnection, I'm not clear what you mean by disconnection rates. Anyhow let's move on, help us in achieving this. I would request you please reach out to your AE. We do have a lot of pharma customers that we work with. We have a lot of Heroku apps we have delivered for our pharma customers. Please do reach out to your AE, they can get in touch with us. A large portion of the question is on the horizontal scaling. See, okay, horizontal scaling is a DB replications are 2 separate things. So horizontal scaling is more to do with the applications, right? Now when you use relational database, they are not horizontally scalable. That means you cannot have 2 instances or 3 instances unless you go in a master-slave kind of configuration. In a MongoDB, NoSQL, Columnar database, you do have an option of segmenting your data across multiple databases and have multiple databases running simultaneously, right? When I say database, I mean different, different servers. But in Rdb, you typically have 1 as a read write server and other could be read-only server, master-slave configuration, right, or follower as we call them Postgres. So it doesn't require a lot of changes in your applications to do that. So let's say, if you want to have that, I want to route my read, write traffic to this server and read traffic to this server, probably you will have to do changes in 1 class itself where you are making those DB connections and identify which connection should go to A server and which connection should go to B server. That's all it is, right? However, if you choose to go with MongoDB or NoSQL kind of databases, which, by the way, are available on Heroku as well, you don't have to worry about it. The database engine will take care of distributing the data across multiple servers, which we call [indiscernible] and you can just connect to one single server. So if you have -- so you have to make the choice. There are a lot of pros and cons of using RDBMS and NoSQL databases. And probably we would like to have much deeper discussion on how to achieve this because there are a lot of pros and cons, trade-offs. So please reach out to us. We can definitely help you plan the better strategy for this. Can I query data in a Heroku database from a Salesforce report? Can I query data in a Heroku database from a Salesforce? From a report, no, but objects, yes, because when you have sales -- reports are typically on objects, standard or custom objects. When you sync that custom objects in Heroku, you automatically get the data and then you can do all your inner joins and outer joins and left joins, whatever you want to do in Heroku signs and get the same report, which you are getting in Salesforce. Now if you want to -- if you say no, I just want to access the data in my report. You can, but in that case, you have to write an API, right? Sorry about that. I lost the tracking. Yes, this is an interesting question. Can we use Heroku as a core storage for Salesforce because Salesforce storage comes in cost. So Salesforce storage does come at a cost. And there is a reason for that because Salesforce storage does provide a lot of capabilities. But let's say, if you are doing -- you do have an option of what we call as an external objects. When data stays in other systems like Heroku or any system that support OData vs GraphQL APIs and you bring the data virtually through certain Salesforce, you can do that. But you will not be able to run lead management or case management. So all these great features that you get with Sales Cloud and Service Cloud, they're not going to run on external data, right? So to have those capabilities, data needs to be there in Salesforce. Technically, it is possible to store the data in Heroku and access it in Salesforce. When I say access, read it, write it, update it, yes. But then you will not be able to run your lead management workflows or case management workflows from data, which is sitting outside Salesforce. You will not be able to try triggers on that data because the data is not in Salesforce. Salesforce will not know when the data gets updated, right? So there are a lot of pros and cons of this. But I would suggest keep your active data in Salesforce. A lot of times, it happens that my data is coming from a Heroku app and then getting pushed into Salesforce. That could very well be a case. But if your data is not stored in Salesforce, you lose to run that out-of-the-box CRM and service cloud capabilities on that data. Does Heroku have a free tier? We do. We don't have a free tier per se, but we do have free services or free options in each component. For example, there are different types of Dynos and different type of DB services. You can always go and register with your credit card and start using it. Can Heroku handle unstructured data? Yes. We do have capabilities of storing files and attachments. We do have a vector capabilities, each vector in Postgres database. So yes, we can do that. Can Heroku best fit if we want to reduce processing cycle of bulk processing? Yes, good option. Yes. Oftentimes, people struggle with the bulk processing, which happens in -- so Heroku is -- would be the very good option for doing that. You could use Heroku to do this. So if you are running into limits of bulk APIs and bulk batchable Epics or schedulable Epics, all these kind of things, then Heroku could be a good option for that. No doubt about it. How Heroku secure the app? Okay. That's a very good question. So Heroku by default, as I said, is a common runtime environment in the private space. There is also a shield private space with more advanced security, which provides a lot of compliance. You have all the ISOs and SOC compliances that you want. We do have it. Private space further adds to more dedicated infrastructure, private network, firewalls and all those things. So all these capabilities are there. If you want to say, I want to express it at a WAF, that is also available in data services. So we have banks running highly secure applications that are only connected to their on-premise network. So we do have that kind of setup as well. Public sector bank, having an app running on Heroku, which is only accessible through the private network. So just imagine how much kind of a regulation and security check that has to do, right? How does Heroku support DevOps practices? Heroku has these capabilities called Heroku Flow, which allows you to automatically build, test and deploy. We have components like Loadmill, which can run the load test to sanity tests. So you can orchestrate all the DevOps journey from integration of code to testing of a code to review of a code to deployment of the code to scaling of the code, everything is part of it. So -- and you have an option of automatic deployments, you have an option of review apps. Automatic deployments is every time the code gets checked in into a particular branch in GitHub, it gets deployed. Review app is a concept where every time the code gets checked in, a small staging apps get automatically created for review and testing. So all these capabilities are already there. And again, these are capabilities which are part of Heroku services. We don't have to explicitly procure them. Even if you take a single Dyno, 1 Dyno unit, you get all these capabilities. How about the detailed data security in say Heroku? Yes, Heroku has all the data security. So let's say, you have to choose the right plan. So when you choose Heroku Postgres for storing your data, you have plans which are -- which provides a high availability, encryption at rest. You have an option of a field-level encryption to be implemented as well. You can enable multiple follow-up databases, backups are always encrypted. You can also set up private databases, which are not accessible through any other common run time resources, only private space apps can access it. All those security mechanisms and features are available. So we do have -- and also right now, we support TLS 1.2, a lot of services, internal communication also support TLS 1.3. We are migrating to SFTP3 and TLS 1.3 pretty soon. So all those things are -- so it has very, very strong security features. What is AE? AE is account executive. If you are working with Salesforce, you would have an account executive aligned to you or your customers. If you are not aware of this, just reach out to any Salesforce site and drop a note over there. Just reach out to the team over here as well, they will connect with you in the right spot. AE, account executive dedicated to certain set of customers. In vertical scaling up, will it be possible to scale up without making the instances? Yes, of course. It doesn't require a scaling down. When you do a scaling up, the way we work is we first provision -- so let's say, you are scaling up, vertical scaling, not horizontal. That means I want to upgrade from 2 GB RAM to 16 GB RAM. When you do that, first, the 16GB RAM instance or a Dyno gets created for you. Once it's up and running, your application is running, there is load balancing that happens automatically. Traffic started routing to this new DB and then this Dyno starts shutting down. So it doesn't require a downtime for this. Does it Heroku also follow masking and PII data handling similar to how SF managed? See, masking, when you say masking, okay, I'm assuming that you're talking about masking from the UI part of like exfil encrypted or formula fields, right? Again, Heroku does not provide you functionality. It is providing you services, cloud services and infrastructure. Those masking capabilities is something you would have to handle manually. Same goes for the PII data handling. You do have the encryption capabilities. Like I want to encrypt my data. I want to have monitoring of every data access. I want to monitor every query we find, every API access. You can very well have security and monitoring capabilities. But if I want to say that I want to do RTBF, you can, but you have to build that functionality on Heroku. However, if you have Heroku connected with Salesforce, rather do it from Salesforce. For example, I have customer profile, which is getting synced in Heroku. Now use privacy center to run RTBF. When you run an RTBF in Salesforce, it will automatically get synced with Heroku. So you don't have to worry about it. If you're doing DSR or data management or any of the privacy policies, if the data is -- so if you're using Heroku with Salesforce, whatever happens through data in Salesforce automatically gets reflected in Heroku as well. So yes, so to manage by masking and PII capability, use privacy centers, use data masks in Salesforce, and you will see those things getting percolated automatically into Heroku as well. How Heroku Shield helps in terms of security? Heroku Shield provides much granular, better encryption, more restrictive access. So there's a lot of documentation available in this, search for Heroku Shield, you will know. So I think I got the -- I gave you a question, account executive is the dedicated spot which are aligned to some customers in the need. Please reach out to your account executive if you don't know who that is. Just drop us a note, we will get you in touch with the right person. Could you please reshare all sites. Okay. On relation to regulation to get easy report extraction with [indiscernible]. Yes, yes. Okay. So you want to generate reports from data in Heroku, I totally skip my -- so you just go to elements.heroku.com, right, and just look at the add-ons which are available. Look into the reporting section, there are tools available which can allow you to drag drop reporting on your Postgres database, creating dashboards, even exposing APIs to access that data, right? So these capabilities are available there. We are almost out of the time. I think I have answered all the questions. I'm just checking again for any -- can we use Heroku for data archive access data as and when required? Yes, as I explained, you can archive the data by moving the data into a separate table and using Salesforce Connect to access the data back in Salesforce. Yes, you can do Heroku for data archival as well. Does Heroku have data masking capabilities by itself? No. If you want to permanently mask the data and database, you would probably run some scripts or update scripts. If you want to mask the data in UI, you have to do that in the app, in the Heroku app, whatever the custom app that you are building. All right. Yes, I think that's it. I have answered all the questions. I hope it was informative session. Please do share your feedback. Please reach out to us. You will have a contact in place. Please drop a note if you don't know what to do. We will come back and we'll get back to you. Thanks for sparing this time with us. I hope you found the session useful. Thank you so much.

This call discussed

For developers and AI pipelines

Programmatic access to Salesforce, Inc. earnings transcripts and 32,000+ others is available through the EarningsCalls.dev REST API. Plans from $24.99/month — full transcripts, speaker segments, full-text search, and the recently-added /api/v1/transcripts/recent polling endpoint for ETL pipelines.