Podcast
/
Is Agentforce the future of enterprise vibe coding?

Is Agentforce the future of enterprise vibe coding?

By Dan Fernandez
|
Blog_Comprehensive_DORA_Guide_2400x1256_16_8c1d653690

"80% of real development or actual development is extending something or just doing glue between pieces that already exist and you become more like a plumber... An enterprise has years and years of existing code, of hardened APIs, of services, of libraries. How do you reuse that? You don't need to rebuild those."

Vibe coding is a developer's dream, but in the enterprise, it can be a nightmare of risk and shadow IT. So how do you saddle the 'wild horse' of modern AI development? Dan Fernandez, VP of Product Management, Developer Services at Salesforce, joins the conversation to share the answer: a new category his team is pioneering called Enterprise Vibe Coding. This discussion reveals how to move beyond flashy greenfield AI demos and build for the reality of most enterprises, where the goal is to safely reuse existing systems, not reinvent them from scratch.

Dan breaks down the specific guardrails Salesforce has built, from sandboxed environments for safe testing to automated "quality gates" that act as a bouncer for both human and AI-generated code. He shares the powerful lesson that building customer trust through policies like zero data retention is more important than any single feature. He explains why the real work of enterprise AI is more like secure "plumbing"—connecting the hardened systems you already have. This is an essential guide for any leader looking to apply the speed of AI to the complex reality of enterprise software.

Show Notes

Transcript 

(Disclaimer: may contain unintentionally confusing, inaccurate and/or amusing transcription errors)

[00:00:00] Andrew Zigler: Vibe coding. For many developers, it's the dream rapid prototypes, creative freedom building at the speed of thought. But in the enterprise it can sound more like a nightmare. That creative freedom can translate the shadow IT and data leak. And a graveyard of abandoned code. And the question is, how do you get all of that speed without creating a legacy of risk?

[00:00:23] Andrew Zigler: And today we're finding out how to get the best of both worlds with Dan Fernandez, vice President of Product for developer services at Salesforce. And Salesforce is pioneering a new category that they call enterprise Vibe Coding or EVC. Designed to blend that agile creativity with enterprise grade safety.

[00:00:43] Andrew Zigler: And today we're digging into how they make it all possible for the teams that build in the same house as their data and put a saddle on the wild, wild horse of modern development. So Dan, welcome to Dev Interrupted.

[00:00:56] Dan Fernandez: Well, that's a great intro. Thank you

[00:00:57] Andrew Zigler: so much. Really happy to be here. We're [00:01:00] stoked to have you here as well.

[00:01:00] Andrew Zigler: We've been covering how enterprises are using do coding tools and agents that build software, and Salesforce has a massive scope on the amount of users and developers that come in and use this software. So I'm really interested to dig into this today and kind of to kick things off, you know, I called it a wild horse.

[00:01:18] Andrew Zigler: I called it the Wild, wild West. You and I chatted about this a a bit before, and you know that's the truth right now, you know, developers and and engineers, they can spin up prototypes in minutes and everyone's drowning in POCs now. And honestly, leadership starts to worry more about safety and control more than innovation.

[00:01:35] Andrew Zigler: And you've described enterprise vibe coding when we first talked as agentic development with governance. So how do you define enterprise vibe coding? So it really resonates with an enterprise buyer.

[00:01:47] Dan Fernandez: It's a good point. So I think one of the areas uh, my team builds agent force for developers, that's our lang natural language apps, these frontier models, model context protocol.

[00:01:57] Dan Fernandez: It can build specifications [00:02:00] or just like, you know, do it has the rag services, all those capabilities. But there's specific areas that you need for the enterprise and you know, our goal is to democratize development. How do we make every Salesforce user be able to use AI tools to, you know, build, debug these apps and sort of, uh, differentiating 'cause.

[00:02:17] Dan Fernandez: 'cause there people sometimes have that nails on that chalkboard with, uh, vibe coding as a term is really sort of how do we think about taking the, the best of both worlds and some of the challenges that we have, for regular vibe coding and really sort of the differentiation. Is the new apps versus existing apps or existing code.

[00:02:36] Dan Fernandez: So you go into a tool like, you know, lovable rept, uh, verse V zero. These are, you know, awesome tools and it's, kind of fun. You just tell it what to do and you know, you see it one, it's almost always building greenfield, meaning new apps. Everything it's doing is using new as opposed to existing.

[00:02:56] Dan Fernandez: uh, there's some great set where it's like 80% of real [00:03:00] development or, uh, actual development is extending something or just doing glue between pieces that already exist and you become more like a. Plumber, for lack of a better word. So really not just supporting new apps, but also supporting existing apps, brownfield applications.

[00:03:14] Dan Fernandez: You need to support both. I think the other part is, that corollary is that reuse versus reinvent. So all that's really trying to say is, uh, within, company. And again, if you're just a startup and there's no existing code, you know, that's, that's great, but. An enterprise has years and years of existing code of hardened APIs of services, of libraries.

[00:03:37] Dan Fernandez: How do you reuse that? And one of the key things you need to do is have that, retrieval augmented generation system. Having that, that context for this is what our enterprise uses. This is the schema that we're doing. These are the approved, blessed APIs, and things like relational data, semi-structured data, all the data sources that you're getting really optimize that scenario.

[00:03:59] Dan Fernandez: [00:04:00] But that's the, that's the challenge. All those other tools don't have that. So we really need to think about from an enterprise. Perspective focus on reuse versus reinventing your team's built a bunch of this stuff. You're gonna tell me I have to rebuild the, you know, if you just vibe code into some app, it's rebuild the tax calculator, it's rebuilt, you know, the shipping calculator, it rebuilds, our inventory service.

[00:04:19] Dan Fernandez: We already have those components. Right. So you don't need to rebuild those. you really wanna reuse those. And the other part is just all the governance. There's a huge set of tools. You don't necessarily wanna vibe, code, you know, your financial information, your medical history, right? So how do you make sure you have all the governance and things that we, uh, Salesforce specifically does a phenomenal job at.

[00:04:40] Dan Fernandez: So that's HIPAA compliance, Sarbanes Oxley, auditing history, granular access control, audit history, anomaly detection, and so many things around the, the governance. And then lastly is that agentic DevOps in quality, right? So we're doing a number of things where we're like, Hey, you vibe coded this.

[00:04:58] Dan Fernandez: uh, I kid you not, I'm not gonna [00:05:00] say who it was. There was somebody that sent a message today, check out my cool demo. and it was like, almost like a joke. A, they sent a local host link. So clearly they don't have this. We, and it's, uh, the gen DevOps tools are getting great so that you can reuse so much of what you have from a DevOps pipeline.

[00:05:19] Dan Fernandez: And that means Salesforce has things like, uh, pre-production environments, sandboxes. Tools to do things like quality gates, tools to validate code, and that can be genetically built or handbuilt. 'cause you too, uh, I, I know certainly not us on this call, but other developers could have a security issue, a performance issue, a scale issue.

[00:05:39] Dan Fernandez: This is gonna catch it from any source and make sure that you have high performing, high scale code.

[00:05:45] Andrew Zigler: That's a great place to start this out. At the very top is just recognizing the space in which engineers at an enterprise level are working saying it's more like plumbing is a really great metaphor, I think, because you have these parts that are already built largely in whole and it.[00:06:00]

[00:06:00] Andrew Zigler: A lot of times when we attack new problems and build things within the enterprise, we are connecting the dots between the things that already matter to our customers. And it's important in fact that we don't reinvent ourselves because that's how we push ourselves out of a. Out of a fit for our customers, but then also we move away from the, the security, the reliability, and honestly the magic that makes your product what it is.

[00:06:27] Andrew Zigler: If you're reinventing it over and over, that's a luxury only like an AI native startup that's still trying to find product market fit has. And so it's a whole different set of problems and ultimately. It really orients everybody around this idea of reuse and understanding the, like what's already at hand.

[00:06:46] Andrew Zigler: And we're gonna talk about that a bit because that's the great thing about Salesforce and building inside Salesforce is it's where your data lives. It's where your systems already live. And so there's a lot of reusability that you can play with and kind of at the [00:07:00] top too, you know. Because of that, there's a lot of guardrails that you get to be able to set up because Salesforce is, you know, it's, it's the home to their data.

[00:07:09] Andrew Zigler: But it's also where a lot of people in the enterprise, a lot of people at scale are gonna look to get the source of truth and to understand like where the company's going, pull reports, build new products. So what are the kinds of, uh, guardrails that can exist when you take that vibe coding idea, but you supplant it within this firmly like rigid structure of Salesforce.

[00:07:30] Dan Fernandez: Yeah. Uh, it's a, it's a pretty multifaceted question, so I'll try and give like the, the, the quick or, or some of the highlighted things, to go through that, really resounds with everyone. One of the key areas that Salesforce does is makes a great set of tools for pre-production environments.

[00:07:48] Dan Fernandez: Those are called sandboxes. So instead, a lot of times developers have to like, oh man, I have to build a new environment and it's gonna take me all day to build this from scratch, I have to read this code and then write this script. Sandboxes [00:08:00] basically say, start with production. Make a copy of it and you can choose.

[00:08:03] Dan Fernandez: Do you want just the metadata, the structures of the data, or do you want the da, all the data itself? If it's all the data, it's called a full sandbox versus just the metadata, which is sort of like the developer sandbox. Like on a day-to-day perspective, we'd have our own developer sandboxes, and really making that a first class citizen means that I have a safe environment..

[00:08:22] Dan Fernandez: To test my AI on as opposed to, you know, you see some of these examples where the, the, uh, uh, agentic tool literally deleted a production database,

[00:08:32] Andrew Zigler: right? Oh yeah. We've all read that story. We covered. That here on the podcast too.

[00:08:37] Dan Fernandez: You probably don't want that, right? So how that's sort of like, uh, uh, step one.

[00:08:41] Dan Fernandez: And there's just a number of other things too. Uh, the agent force for developers tools, one of the key things we did was, partnered with our friends at Klein, the open source tool that, uh, brought a number of capabilities and we built on top of that our Salesforce capabilities. So that does include one of my favorite features, which is checkpoints.

[00:08:58] Dan Fernandez: This is like the, [00:09:00] Hey, the AI did something and oh my, it just replaced all the CSS that I spent the hour building. What is going on? And you have that checkpoint that you can revert quickly, right? That sort of like, okay, great, I didn't mess up. We talked about like not messing up the production org. Uh Now we haven't messed up our code, if you will. Right? So having that checkpoint is a great area. And I think some of the other things are model context protocol tools that we do. So we are gonna ship our own set of MCP tools that make it really easy to work with Salesforce and make it that much safer so it doesn't randomly guess.

[00:09:33] Dan Fernandez: It's using our pre-built tools. And then the last thing is obviously, uh, a set of agentic rules. And this is really what I think everybody's discovering is sort of the secret sauce. Or how you can tell and really do the governance. So if I'm a team lead, I am telling you everything I wanna do, whether it's those style rules, or we must use this framework, or you know what don't AI.

[00:09:53] Dan Fernandez: Ignore this folder. This is our legacy folder. We don't wanna change this. I don't wanna, you know, rebuild 30 [00:10:00] unit tests for this legacy thing. And you have the, the sort of granular controls, that are cascading as well that you can use there. And then lastly, all the stuff that are in the platform

[00:10:11] Dan Fernandez: fundamentals, field level permissions, audit history, access control, and there's just a ton of stuff, that you can, uh, do within there. And then specifically for, uh, we have a product called DevOps Center that allows us to do a DevOps pipeline. It uses GitHub as the backend. And within these builds, we wanna make sure that we have quality by default, right?

[00:10:31] Dan Fernandez: So when we ask you to build something, it's building unit tests for it. It's suggesting code analysis runs for it, and it's making sure that when the, the output is built, it's built. We're not just, uh, building the artifact, we're building the way to validate the artifact is correct and using agentic reasoning.

[00:10:48] Dan Fernandez: Like, okay, yes, we know it's built. And then the last mile. What we call quality gates, which is you can define you, it's the, uh, the bouncer if you will. You wanna get in, you must be this tall, you must pass this [00:11:00] percent of quality tests There is no sev zero on the code analysis tool. and our code analyzer tool, for example, is actually a, an aggregation

[00:11:09] Dan Fernandez: five different engines, right? Everything from PMD to Es Lynch, some of the best open source tools for Salesforce and web tools that it runs. And you can set like, Hey, no, sev zeros, or you know what, uh, we'll take a SEV two on this one because we really wanna make sure that, or a sev three that all docs must have triple slash comments, right?

[00:11:29] Dan Fernandez: So you wanna make sure that that something is blocking and you can control those at a really granular level with our quality gates and sort of those guardrails from we're going from an individual. Uh, which is build building things, uh, their environment. They can make sure their code is okay and their org is okay.

[00:11:46] Dan Fernandez: Then what we're doing is making sure, hey, how do we set this across a team? And these are some of the things that we're still thinking about how the best way to do this. And AI rules are a great example of where we are codifying what we wanna do for a team perspective. And then, uh, [00:12:00] across all team members, this is, this is the bar that all code needs to get in, whether it's,

[00:12:04] Dan Fernandez: uh, manually built or AI built.

[00:12:07] Andrew Zigler: those are some really great points that kind of frame. What makes it strong. I, I wanna like walk through some of them 'cause there were some, great stuff in there. So one of them being, meeting the developers at the experience that they not only like expect, but they need in order to build these tools.

[00:12:21] Andrew Zigler: And, and that means, you know, providing things like these. We would, you know, many would almost call these sandboxes like ephemeral environments, right? Being able to create clones of production and pull in certain things and scope them out. And we all know that AI is really great at scaffolding out those kinds of things, making the blank page upon which you write.

[00:12:40] Andrew Zigler: And so that's like a, a first class citizen. I think in building in the AI world, you have to have that. Another thing that's like really important is bringing in all of the actual like, experience actually using like the primitives of manipulating the ai.

[00:12:55] Andrew Zigler: Like people have like agent.md, right? You have all your best [00:13:00] practices for what people, for how the agents should do it. Oh, we use this linter, or, oh, we have to have this kind of style or everything. It has this. Preamble in front of it. And those details are small, but in the enterprise, when you're building these tiny little building blocks that build up to be these huge structures, those, uh, are huge force multipliers.

[00:13:19] Andrew Zigler: And you have to have them in a repeatable way. They need to be scoped, you know, so those are two really big, important things is having that, those ephemeral workstations so that you can spin stuff up and when you mess it up, you can roll back to a checkpoint. I can't even tell you how many times I've clicked the restore checkpoint button in cursor.

[00:13:36] Andrew Zigler: And if it, and if it wasn't there, I would not still be using it. Because it's really important to be able to experiment with these tools and to try out new stuff. And when you're working on enterprise grade software, that's really scary. when you start going down this one road, you know it, it can be really easy to over rotate on something or, oh, we'll try to fix this problem.

[00:13:56] Andrew Zigler: And in doing so, you introduce five more. Oh wait, let me just go back. To [00:14:00] when I introduce this problem in the first place and see if I can even prevent it from happening. So these are all the kinds of things that people are already doing. But this last one that you said was really interesting 'cause I haven't heard a lot talk about it, because a lot of organizations don't have this need of almost having this like a.

[00:14:16] Andrew Zigler: Bouncer, like we we're all talking about, the AI and code review tools or the AI agents that work asynchronously and they review your work and they tell you it sucks or doesn't follow the guidelines of what you expect, but like actually having the rigid checklist and then a system in place to enforce it, it helps keep

[00:14:34] Andrew Zigler: all of those, those first two parts, like all in line. So now you have a system that the engineer can work reliably through, and it, it likely saves them a lot of time being able to iterate in that way. Have, have you all been able to kind of experience a rapid, uh, flow of development once everyone's in a locked in on all three of those kinds of controls?

[00:14:54] Dan Fernandez: I, I think so. And remember it is, this is a granular set of controls for imagine we're, we're in an [00:15:00] enterprise. We, the, the finance team is going to have some of the most rigid rules, right? Everything must be an audit history. Everything must have a unit test. You know, we need to do these things every, you know, we need to sign off and yada yada.

[00:15:13] Dan Fernandez: But there's, other categories where there's departmental apps and hey, that's more like just what we're doing for, uh, internal planning, and it is our, uh, we're gonna build a set of tools for sharing specs and it's gonna be doing, and you're gonna allow for upvoting, downloading discovery and all these wonderful things maybe that doesn't need that level, uh, uh, of rigidity that, that you have.

[00:15:36] Dan Fernandez: Then there's other ones where it's more like, uh, it's really is a new sort of category that personalized productivity that I call personal apps. Yeah, which is just building for me, right? I'm just like almost testing just in local hosts. So you can choose how much of a quality get you want on a per app basis.

[00:15:51] Dan Fernandez: And it gives, you know, I call it sometimes the federal, state, local, everything you check in must follow, and some companies do [00:16:00] very high federal set of rules. Some do. Hey, this is gonna be the set of federal rules. Uh, like, uh, the good examples would be like, state, like finance is gonna have state rules, right?

[00:16:10] Dan Fernandez: Like, you must do this for finance. Uh, the personal app is more like local. Hey, we're gonna do whatever we want and we're gonna use this framework. And it's sort of just get the job. Done. So you at a granular level can choose how many of these gates that you want. Is your organization one where everybody decides things as sort of top down on a federal level, or is it more like, Hey, it's actually on the team business, the HR team, finance team, they're gonna have the most, uh, biggest rules that are gonna be more like.

[00:16:38] Dan Fernandez: State driven, if you will, or it's just, hey, uh, anybody can do anything. And then there sort of are no rules. So, but you need those levels of granularity, which is where you stop. Is it all code or is it code for specific applications or specific business processes that you wanna say? And, and what you need to do is just have tools that are flexible to have different DevOps [00:17:00] pipelines and different rules within there as well.

[00:17:02] Andrew Zigler: Recognizing like the impact level of the software you're building is critical in this world that you're, you're talking about like we've talked, uh, uh, quite a bit about like personal software, uh, in the rise of AI coding, uh, here on Dev Interrupted that we recently had, Lee Robinson of Versel talk about V zero in that exact way, how you can submit up that personal software on demand, right?

[00:17:23] Andrew Zigler: That's like that, that. That local level that you described. Right. And then going up one level, you kind of have like the lovable if you're trying to build a business and trying to get like a larger thing on top of it. But up until this conversation, there's not a lot of talking about this like cloud, like up in the clouds layer that we're talking about this like federal, top down and very rigid.

[00:17:42] Andrew Zigler: And, and, and now just ultimately like the core of our conversation and the opportunity that Salesforce is going after and. Something I wanna ask is, 'cause, you know, build, building with these tools as a engineer, it's fun to experiment building a company on top of them. It's fun to [00:18:00] spark up something new, but how does a company as like rigid and high impact as Salesforce and, you know, with a high need for security and compliance and control and safety?

[00:18:13] Andrew Zigler: How do they not, how do you not only recognize. There's a market opportunity, but how do you get over that whole, oh, you know, we're just gonna, we're gonna wait and see a little bit more how it plays out. It's so tempting and, at that scale, I think to do so, to wait and see what the smaller players do, you know, you have all the resources and time, so how did that conversation really begin at Salesforce that, you know, y'all said, okay, we, we really need to bring this to market for our users.

[00:18:42] Dan Fernandez: Yeah, I, uh, that's actually a great question. So it jumps back to some of our team members, Wade Wagner, that, that brought me to Salesforce about five years ago, and they were building Salesforce developer experience. They really wanted to have a first class experience for building on Salesforce platform.

[00:18:59] Dan Fernandez: And [00:19:00] out of that came a number of things which is certainly well positioned us for this, which was we built a browser-based version of VS code. So, uh, much like uh, cursor builds a fork, uh vs code. It's only available on the desktop. We have our own fork of vs Code called Code Builder. We are uh, one of the companies that started, uh, that helped found the Founda Eclipse Foundation for open VSX, which allowed for VS

[00:19:28] Dan Fernandez: code Marketplace, along with like Google and a number of others, uh, so that you could share extensions. Why? ' Because Microsoft closed down that marketplace and said And vs. Everything is a VS. Code extension. We ship, uh, everything we do for our developers within, uh, our Salesforce extensions for VS code. so we had a number of the, the capabilities there.

[00:19:51] Dan Fernandez: We are really doing, and we're really just trying to make developers more productive. And we had the first versions of our code analysis tools, so it became a really logical thing, which is, [00:20:00] hey, what are the things that we can do to increase developer qual uh, productivity and quality? And that's sort of where it started.

[00:20:06] Dan Fernandez: And it was really sort of started with, uh, inline auto complete, which is, Hey, can we just help people, build and complete things, which is, you know, start with a method definition. And, and complete it, if you will. And now it's gone from sort of like single file to multi file, multi app and everything within.

[00:20:23] Dan Fernandez: And even then we're starting to see different trends where it's going from sort of, uh, Dev centric to OP centric, uh, which more like individuals, uh, to teams short running to long running there. Like, we're really just sort of in the process of evolution of this, and we have tools for all of those things.

[00:20:42] Dan Fernandez: we're releasing a preview version of, uh, an a LM agent that allows you to have these sort of natural language questions and do long running tasks as well, and do so in a collaborative, so it's not an individual talking. It's, you know, in a Slack channel. And some of these are gonna be user initiated, some of them are [00:21:00] gonna be event driven.

[00:21:01] Dan Fernandez: So something happened to our site, you know, based on some criteria it thinks it can automatically fix that. So we're talking about like self-healing. It really is sort of the future on what we can enable, even if it's j just sort of like agent to agent or as simple as, hey, there's, uh, when I set the label to do this, the a LM agent knows to fix this and what it's gonna do.

[00:21:23] Dan Fernandez: That, that unit of collaboration is still the pull request. And when we got the pull request it, it summarized what it did and then it tells me did I pass the code analysis tests, did I do all those other things that I'm doing? And it's just kinda One example that we do is also scale tests. We're probably one of the only companies that give you a version and actually take your pre-production environment and basically supercharge it so that you can do geos scaling tests, right?

[00:21:50] Dan Fernandez: My app works great when I have a hundred users, but Cyber Monday is coming. What's gonna happen when I have a hundred thousand? Can it actually scale? We will give you, not the production environment, but [00:22:00] a pre-production environment and a set of tools to, uh, do the measurement and instrumentation on what are the hard things that'll happen within your application.

[00:22:09] Dan Fernandez: So really trying to think through all the developer scenarios, and it very much started from a single file to, wow, what are the use cases? We're thinking about the, the health of the application and making sure that we have the right things for observability and to, that it can scale with our scale test service.

[00:22:25] Dan Fernandez: And then it discovers, you know what, that code, while it's functional and it works, it's actually not a good idea to do under, under, when your user load gets over 500 and you build those and then shift them left. So it's directly in the id. It's going to be able to track and tell you this is the line of code that you need to do.

[00:22:44] Dan Fernandez: We will, again, using ai, suggest a fix for it, right? So instead of, instead of doing things like, uh, queries in a loop, we're gonna tell you to do a batch query, things like that. Yeah. Chunky, chatty.

[00:22:57] Andrew Zigler: Yeah. No, I, I, I love that. I love the idea of the [00:23:00] stress testing tools being built into that same world. I think that's often something so overlooked.

[00:23:05] Andrew Zigler: And even when it comes to like shipping AI generated code or AI software, you know, we still have to rely on kind of like older or traditional DevOps and CI/CD. Pipelines and practices to like actually put it to the test. But being able to roll all of that in very smartly, by the way, as like VS Code extensions play off of this framework and this experience that developers are already used to, that's already really well thought out and well, well developed, and it's, it's interesting to me because I think like going back to the beginning, we talked about like the, you know, if you just throw 10 vibe coders at 10 prob or at one problem, you'll get 10 different solutions to it.

[00:23:43] Andrew Zigler: Uh, and they're all probably around the same level of verbosity and you know, whatever the case. And so, you know, recognizing I think that like one-off code problem is easy. Every, anyone who's done agentic coating has experienced this where it will reinvent the wheel when the wheel is a very popular NPM [00:24:00] package.

[00:24:00] Andrew Zigler: but what principles really guide your engineers in creating this experience so that it actually does extend instead of recreate, because I think that that is, um, an interesting, you know, problem to crack into. And it's largely also a language problem. So, you know, how did y'all think about that problem once you had recognized it.

[00:24:20] Dan Fernandez: Yeah. So, uh, there's, there's a number of things, which is like one, how do you get an understanding of what exists today? So, uh, we have a number of, of tools within there. So, another service rebuilding is sort of what we call our metadata intelligence service. This is actually, uh, something that's, we are talking about at Dreamforce at a really high level.

[00:24:38] Dan Fernandez: It gives you all the information and context so you can do things like ask it natural language questions. How is this designed? If I remove this field, what is the impact? Ooh, there's three things and a workflow that is guided on this or, uh, you know what, you can delete it and you do things like you couldn't do before, which ask natural language impact analysis questions.

[00:24:59] Dan Fernandez: Right? [00:25:00] So, so a deep sort of introspective knowledge of everything that they've. Built for. And that includes, you know, an API catalog, which are the right APIs to do this. And those can be, annotated both by customers or by ai, so you can make sure that you're picking the right thing. And then, uh, then, so all of that stuff is within our metadata and our schema.

[00:25:19] Dan Fernandez: And then also we even do like a vector db, both for our standard, uh, objects, custom objects, and even code. Right? And, and, code vector dbs are, are relatively common. Just just to be fair so that people can know here's what's possible. Here's the code that exists. So, which is like, hey, cancel order already exists and it's within the order management's class, right?

[00:25:43] Dan Fernandez: Let, we don't have to reinvent that. We can suggest that and then somebody can say, actually no, I wanna rebuild this or rebuild, an overload for that method and so on and so forth. But you really get the o opportunity to start with what you have, get the smarts of it. And really what we're doing is the smarts for [00:26:00] you to be able to query, but really the smarts for the ai.

[00:26:03] Dan Fernandez: to do the better understanding, so it's giving you the best possible, uh, responses. And then setting a set of MCP tools that help there as well.

[00:26:11] Andrew Zigler: that's a great way of framing it. And it ultimately boil down to context engineering about being able to take that world that exists.

[00:26:18] Andrew Zigler: You know, use rag, look at the look at, well look at what's already pre-existent, and then smartly and on the fly as it's needed, bring it into the AI's world, make it equipped with that knowledge. Turn it into an expert on what it needs to be. Be an expert on at any given time. And context engineering, as we know, is it's a balancing act.

[00:26:37] Andrew Zigler: It can be really easy to overwhelm versus to underwhelm. And so, uh, actually like tapping into that, it's, you know, a, a magic layer for sure. I think that requires a lot of tweaking and it's really great to hear that that's like the same kind of like lever that y'all are, uh, messing with When we've talked about vibe code and we've talked about how do people get the all the most out of it, it always boils down to this context engineering [00:27:00] and it really helps people kind of like pull back the curtain and understand that it's all about aligning the information that matters most when you need it in that moment.

[00:27:08] Andrew Zigler: And I think that's like a great way of framing. I kind of wanna use that as like a jumping point into how some of the things in vibe coding transform, when you have that contextual engineering, when you have that stuff baked in. So like one of them that you pointed out to me. Uh, for example is like you have schemas and understanding like databases of, of what is the customer cares about, what they track, and all the little details and fields of the things that make Salesforce what it is.

[00:27:39] Andrew Zigler: And so you take that, you pair it with rag and you make it contextually aware of, of their actual organizational shape. And then once you do that, you know, what changes out of the box in your experiences playing with this kind of tool.

[00:27:55] Dan Fernandez: Yeah, so like, uh, let's just say you, you were using a standard schema for an employee.

[00:27:59] Dan Fernandez: [00:28:00] There is sort of like a starting point. This is one of the things that Salesforce, uh, builds a set of, pre-built s schemas called our standard schema. But you can still customize those. Maybe you're adding custom on, or maybe you're adding or removing fields within there. So the challenge is if you're using tools like Cursor or Copilot, they don't know,

[00:28:18] Dan Fernandez: if they know your code, they don't know the exact structure of the, the exact salesforce org that you're connected to, right? If you're a consultant, you're like connecting to 40. So, so that these things may change literally depending on what hour or which project you're working. Yeah. So, uh, really under having that deep understanding of that, and you can do things like even walk on and say, plus for this response, what I want you to do is change this.

[00:28:43] Dan Fernandez: I'm gonna tell you I'm gonna. Manually add the three standard schema object that I want you to do. So what I want you to do is build a way to search for cases and here's our, here's my specific case object, if you will, and you're gonna get the results. So instead of randomly choosing fields. [00:29:00] Or, uh, choosing fields that are generic outta the box, but not specific.

[00:29:03] Dan Fernandez: It is the exact fields that, that are within that schema, because you have the schema and of course the LLM is gonna do its best job to guess. But if you have the schema, it's gonna do exactly what you tell it to do from a schema perspective.

[00:29:17] Andrew Zigler: And that's like a really cool, because I think, so something I always think about whenever people build stuff is, you know, you start in that world like cursor or on your local computer and you put together little tiny bits and you're like, okay, you know, I, it's standing up now I have to go.

[00:29:30] Andrew Zigler: Pull in all this information, right? I need to, I need to hit my Salesforce, API, I need to grab all that and pull it in. I need to go to this other service and pull in all this information. And it becomes like, actually bringing the context and, and the data from those different houses into the little prototype that you're building, because that's what you have to do to make it safe and local and to try it out.

[00:29:48] Andrew Zigler: But in this world, you're describing, you know, your prototype, it lives. In the house of your data. It's, it's, it's a first class citizen alongside of the [00:30:00] data. And so is that like an aha moment for developers and your experiences when they can pick it up and use it? Uh, how, how does that kind of change? Like the rapidity in which people that you see can prototype.

[00:30:12] Dan Fernandez: Yeah, I think it's uh, uh, it's probably more the other way, which is people like, again, if we think about the adoption maturity curve, there's a set of folks that have been using AI tools since the absolute beginner, right? Yeah. Uh, uh, we talked about some of our friends, uh, Martin Woodward is one example, right?

[00:30:30] Dan Fernandez: Yeah. Super cutting edge but then there's sort of the. Light majority in laggards, they try something and if it doesn't have that context, they're like, this is terrible. I'm gonna spend all this time removing fields that don't exist. Like, why am I spending my time cleaning up? So the more it can, you can just sort of have that trust by default or really just taking the uh, the onus or work or the manual changes.

[00:30:55] Dan Fernandez: Out of that layer, the more they start to trust and more to have that that experience where they love, [00:31:00] where they're not spending time doing what is effectively simple, uh, scaffolding of CRUD apps, right? They're not spending time worrying about the infrastructure. Salesforce take care of all that.

[00:31:11] Dan Fernandez: They just describe what it is. That that makes it fun where they're spending time on the more important parts versus, oh geez, I need to copy and paste and remove these HTML components for fields that don't exist. And now the right, oh, the validation thing is now broken because it was the third field and geez, now like, you know, you're just like, almost wanna just give up and, alright, lemme just delete.

[00:31:34] Dan Fernandez: Exactly.

[00:31:36] Andrew Zigler: First of all, I love the Martin Woodward. Shout out, you know, if, if you're listening to this and you haven't listened to our episode with Martin Woodward, he drops a lot of really great advice. Uh, and it's a great pair for this episode because we're talking about using agentic coding. Where your code lives.

[00:31:49] Andrew Zigler: And, and this is the same idea here, building a agentic enterprise applications where your enterprise data lives. So these are a natural pair and I think that, you know, tapping [00:32:00] into that same stuff, what he taught us is the same lines of what you're teaching us now. And, and that is ultimately about providing that safe environment, but also bringing in all of that rich context that makes the platform what it is.

[00:32:14] Andrew Zigler: But I, I wanna take a second there to pause and also, you know. Talk about the, there's a lot of velocity in this adoption. There's a lot of excitement about picking it up, but we're talking about the enterprise and their skeptics, and so when you talk with a customer, and maybe they, you know, are, are trying to wrap their head around how they would use this, or maybe even they say it's flat out unworkable for them until a certain thing changes, you know?

[00:32:41] Andrew Zigler: How does Salesforce attack those problems? And, and, and what are the kinds of frameworks y'all have used to make sure that this is meeting your customers where they need it?

[00:32:50] Dan Fernandez: Yeah. So, this is the, uh, great story that we had or, or just ran into when we originally started agent force for developers, you know, vs code extension we wanna [00:33:00] make, uh, because you're buying Salesforce, we're gonna make the AI credits included and we really want this to be a productive experience.

[00:33:06] Dan Fernandez: And you're gonna do, and obviously we're, we're over the hump now. We have, you know, millions of lines of code. people that use agent force for developers, it's like 20 to 25% of our users is actually agentically built, which is awesome, and that, that we can track this, but that's basically where we stop.

[00:33:22] Dan Fernandez: When we originally started, I was like, we need all of this data. We need because we need to train our model. This was the, uh, Salesforce code gen model, and the enterprise was like, you wanna use our IP that we're paying people for, to train so that somebody else, our competitors can copy our features. Like why would we ever do that?

[00:33:42] Dan Fernandez: Why? Uh, and it really was the, uh, that aha moment, like, that's not gonna realistically fly with our customers. Uh, and what also happened is because they couldn't trust it, they would just use it for like, hello World lorem epsum. So if you do trade, totally. Imagine you've spent all [00:34:00] this time training it and everybody's just building hello world apps now.

[00:34:04] Dan Fernandez: Now the training set in data that you have has its own sort of, uh, implicit bias. So it really was one of our biggest changes was, and our adoption, uh, certainly grew, uh, in, in major ways by removing the, we will not use your IP to train our model. Again, this is also just using, uh, lessons learned, but we also use the agent force trust layer that has like data masking to make sure prompt defense, the toxicity stuff, zero retention, which is really what we're talking about here.

[00:34:34] Dan Fernandez: If we send it to an LLM, it's not sending You know that the LLM can't retain that data and things like an audit trail. So there's just a ton of things that, that, uh, customers were like, okay, this isn't just me calling chat GPT from an API, this is, you know, we have that enterprise level of governance for this data with the agent force trust layer that I can now enable.

[00:34:56] Dan Fernandez: But as, as with all customers, this is what we expect. [00:35:00] They're gonna do a pilot. They're gonna see are they actually successful? Where does it work and not work? And based on that, those things are what really start the snowball effect of, yeah, it works great for this, but it was terrible at that. You know, uh, really we're spending a ton of time building UX screens.

[00:35:15] Dan Fernandez: and this is one feedback that we got from one of our ISVs. Uh, they really wanted figma Show us how you can take Figma so we can reduce our time to market. 'cause that's the, the designer to developer workflow has always been a challenge. Yeah. So the ability to be able to now with MCPs to be able to go from a, uh, figma comp into a working aversion in Salesforce and just minutes is, is a huge, huge benefit to them.

[00:35:44] Andrew Zigler: I love the idea of being able to learn something like that from changing a, like a contract or an agreement or just like the terms of service. I think, you know, in, in this world you're describing trust is the fuel. You can build this amazing rocket ship that can take them all the way to the moon, right?

[00:35:58] Andrew Zigler: But like, no one's gonna get in [00:36:00] it if they don't believe in you and they don't think that they're ultimately gonna be there for the whole ride. Right? And so I think that's a really great acknowledgement. I think that's something that a lot of engineering leaders listening to this can really, uh, take away from it, is that making sure that the AI.

[00:36:13] Andrew Zigler: That you're building and the way that they're serving your customers is really serving them and bringing them along for the ride, protecting their best interests, and recognizing that it's a big, scary world. And we're all kind of like reaching and feeling in the dark in front of us and trying to figure out where it's all gonna go and that you have the most resources and the biggest viewpoint on where it could go.

[00:36:33] Andrew Zigler: And so being in that guiding light , instead of allowing any kind of mistrust is I first and foremost. I think that that is like the. Absolute, uh, base foundation of building anything great in partnership with the customer. So I really love that. Uh, there's another thing I really wanna dig into with you, because when we talked originally, got a glimpse at like a really amazing, like And layered feedback loop between

[00:36:57] Dan Fernandez: Oh yeah. Yeah.

[00:36:58] Andrew Zigler: and how y'all have [00:37:00] learned to build and how you meet your customers where they are. So there are a few things that you've called out, like there's, uh, stuff like internal dog fooding or, you know, drinking your own champagne if you wanna be really bougie about it.

[00:37:10] Andrew Zigler: Uh, there's hundred. There's all of the customer previews that exist. There's all the developer surveys that you send out. And also a really cool thing called DevLog Diaries that I'd really love to learn more about. So, you know, as like a software leader, you're inventing a new category, Dan, how do you roll all of those signals into a concrete roadmap decision?

[00:37:30] Dan Fernandez: Uh, you know, that's always, uh, the challenge, right? Because you, you wanna have that quantitative view, what's happening in the market, how big is this? What is everybody doing? and certainly there are a number of studies, uh, that do like the Stack Overflow Developer survey, jet Brains as their own version as well.

[00:37:46] Dan Fernandez: We can start understanding what people are doing. And even within those, about three outta four customers are already using ai. So it's like, what are they using it for? What works, what doesn't? And uh, again, you sort of start moving from the quant to the [00:38:00] qual when we're releasing, this new version of our enterprise vibe, coding tools for agent force for developers.

[00:38:05] Dan Fernandez: We started, uh, you know, dog fooding doing, you know, customer surveys. Uh, but that's good when people like try it out and just give us feedback and, uh, it's really the. The people that started using and continue using it. That's great. The people that stopped, we wanted to, well, why? And it turns out like some of the use cases, and this is for customers as well, it's like, well, I only code a couple times a month.

[00:38:28] Dan Fernandez: And it's really like, you know, this app is sort of in support mode and you don't realize not all developers are nine to five developers. Right. I support 10 applications, so I wait until somebody files a bug and then I'm gonna use your Agentic app tools. So really think about what are the things they need?

[00:38:44] Dan Fernandez: Well, what does that person need? They actually need the ability to explain what's happening. So if. We do slash explain, explain what does this do? Geez, I wrote this a year ago, or somebody that left the company wrote this three years ago. Yeah. I now need to add the ability [00:39:00] to, validate, you know, don't, don't let 'em submit without this required field.

[00:39:04] Dan Fernandez: I don't even remember how the validation thing works. So you can ask and have that conversation, uh, within code and really just start to get to know developers and really ISVs as well. This is one of the most powerful things that Salesforce does, is we have big. And, you know, uh, uh, they call 'em unicorn ISVs that are built on Salesforce.

[00:39:23] Dan Fernandez: And those are ones that are valued at more than a billion dollars. And really think about the platform for ISVs. And we, you know, will go on site and do events where we ask them, what are the most important things? How can we make you successful? And really think about the customer first for the Dev diary.

[00:39:39] Dan Fernandez: Man, there's just so many, uh, great examples where. You think your feedback is gonna be about the product or feature or, ah, yeah, I like that. They like that you don't realize just how many things that they have to do. So it's like, we always start like our tutorial in our docs, like, well, you've got everything configured.

[00:39:59] Dan Fernandez: [00:40:00] Let's get started. Then you see somebody try and do it, developer wants to go through. It's like, okay, so, uh, NPM installed this package. They hit NPM in a command line and you're just like watching these screenshots and, and listening to them. NPM isn't install and I don't know why. It's like, okay, so, uh, they go check and they have installed it, but they installed it from brew, which did install it on the command line, and then it's like, oh, well I'll go change it and just like, copy, add it into Z.

[00:40:27] Dan Fernandez: But they don't have Zsh on this machine. They have, they have Bash and then they're like, okay, fine. I got this installed and I just, you know, decided to install it. It's the wrong version of note. The library they have doesn't work with that one. And

[00:40:40] Andrew Zigler: Wow. What you're describing is so triggering for all, all JavaScript highs script developers that exist, myself and myself included.

[00:40:46] Dan Fernandez: And it's, it's, you don't realize, it's like, Hey, what we want is the feedback on the person that's like no set up setup, setup. Yeah. It is such a pain to get started with software. I'm not, I'm certainly not picking on no Js, Python and [00:41:00] Python. Virtual environments are,

[00:41:01] Andrew Zigler: They all have their quirks.

[00:41:02] Dan Fernandez: Quirks is, uh, uh, not the, not,

[00:41:05] Andrew Zigler: putting

[00:41:05] Dan Fernandez: yes.

[00:41:06] Dan Fernandez: A nice way of putting it. . So as just kinda one example, how did that feed into some of our feedback? We wanted to build code builder, browser-based Tool Zero install you, you're not installing node. You're not installing Python, you're not installing VS code, you're not installing our Salesforce extensions, you're not installing our CLI, you're not installing Salesforce MCPs.

[00:41:25] Dan Fernandez: It's all just there.

[00:41:27] Andrew Zigler: Then there's no other vibe coding experience that I can think of right now that even compare to that. They all have a some level of like, oh, copy this commander. Oh, get something local. So that's really the cool part about it being in this contained world.

[00:41:39] Dan Fernandez: Yeah, and look the best. And how does that start?

[00:41:42] Dan Fernandez: It starts with talking to customers and getting real world examples, which is. Getting started with stuff and configuring software is just a real pain. How can we make the lives easier? And that absolutely drives adoption and access, which is like, is one button to get this [00:42:00] thing, you know, instantly ready just to make your lives that much easier.

[00:42:04] Andrew Zigler: When you talk about your customer segments and you have folks obviously that don't have a lot of experience using code, they're the more traditional drag and drop or low code users, and you also have folks that are somewhere between that and the engineer. Like they're more aspirational, they're technical and comfortable in a command line.

[00:42:19] Andrew Zigler: And then you have these full fledged unicorn ISVs, you know, billion dollar dollar companies that have built themselves on top of you and are creating value for customers. And those are very three, those are three very distinct segments. But, uh, something that's happening right now is that I think a lot of those lines are starting to blur.

[00:42:38] Andrew Zigler: And what has surprised you about how those groups are adopting these tools?

[00:42:43] Dan Fernandez: Yeah, so, so to give you, an example of one of the ISVs we work with nCino, they, they call themselves the bank operating system. So if you work with like Wells Fargo and US Bank, these are really big banks that, that use nCino for things like, you know, your home loan.

[00:42:58] Dan Fernandez: Your mortgage, [00:43:00] right? Uh uh, great software all built on, on the Salesforce platform. So you would think, and they are absolutely hardcore, amazing developers, but one of the things they wanted to do was, how do we just get feedback? Our new products, features or capabilities. So they partnered with their product folks with a UX designer.

[00:43:20] Dan Fernandez: The UX designer would basically, that was their dream. It's like, look, we're just doing this to get feedback. It just needs to be a prototype. And that's really where some of these vibe coding tools would do, which is start with the Figma, get a click through, you know, they set up a meeting and just ask the person, yeah, the loan officer, is this the right tool?

[00:43:37] Dan Fernandez: Is this the, the right sort of feedback? And those are just examples of how, when you would traditionally think, oh, they must be completely engineer, even within their organization, they're experimenting for ways that they can expedite getting to that product market fit and getting that feedback for customers to make their software that much better.

[00:43:57] Dan Fernandez: So when it is ready to hand off, we're [00:44:00] not handing off something that no customer wants they're like a great example of where they're just so customer focused to get that right feedback in as quickly as possible.

[00:44:09] Andrew Zigler: I love that, of using it as a way to really tighten the feedback loop.

[00:44:13] Andrew Zigler: I think that's critical in, in building software safely, especially for customers and really sensitive, um, you know, industries like, like you just used banking as a really great example of being able to actually vibe code it into this little shared experience and brewing it right to the customer is, uh, it's like that's like.

[00:44:29] Andrew Zigler: The first class experience going to the top of our talk of like what this is all about and a as, as this continues to evolve, do you think that those worlds will continue to blur and those lines will continue to go away because that's the trend I think everyone is seeing, but you know, what do you think the future might hold?

[00:44:49] Dan Fernandez: Yeah, I, I think that, uh, absolutely you are gonna see the sort of democratization of app building and I think some of the other areas that are, are, for lack [00:45:00] of a better word, sometimes neglected too, is just feedback and iteration. which is,

[00:45:04] Dan Fernandez: Hey, I, did I start this to build an app or did I start this to have an outcome?

[00:45:09] Dan Fernandez: What is the outcome we're trying to drive? And maybe there's an easier way to do that. And then how do I measure success with things like product analytics so that I know and can, you know, vibe the next changes based on, on that. Like, ooh, geez, our shopping guards are being abandoned. What are the ways that we can reduce the mean time to learn, uh, uh, within there?

[00:45:31] Dan Fernandez: So really it's sort of like democratizing all those things. You know, sometimes you ask, it's like, well, geez, if you wanna look at analytics, you gotta be a data scientist. Maybe you don't, you can start asking natural language questions of your, your analytics platform. So both the developer and an end user or a product manager or a business line manager can ask questions about their business.

[00:45:52] Dan Fernandez: What would you recommend? What would you do? Here's what our app is doing, and really better understand things that we haven't thought of before as possible as like, [00:46:00] well, you can export all the data into a CSV file and load it in Google Sheets. There's gotta be a better way.

[00:46:06] Andrew Zigler: There's gotta be a better way.

[00:46:07] Andrew Zigler: Right. Exactly. Wow. Dan, this has been an amazing conversation, like a really great view into how Salesforce is approaching this new category of coding. You know, enterprise vibe coding it. It takes two very opposite worlds and it brings them together. And ultimately it makes that wild, wild west experience of agentic coding a little less wild.

[00:46:30] Andrew Zigler: And I'm really excited to see what people are gonna build on top of Salesforce and the tools they're making available. And before we wrap up, where can our listeners, if they've been following along and they're kind of curious, where can they go to learn more about your work and what Salesforce is building?

[00:46:44] Dan Fernandez: So, our agent force for developer tools is now in a preview mode. That means anybody watching this like today can do this. By the time you launch, this will be actually ga so you go into VS. Code Marketplace

[00:46:55] Dan Fernandez: and so the Salesforce extensions for VS code connect to an org. You don't need a credit card, you don't [00:47:00] need anything.

[00:47:00] Dan Fernandez: Again, we include all that stuff to really get you started or just developer.salesforce.com.

[00:47:06] Andrew Zigler: Cool. Well, we're gonna include some links so people can go check it out. And this is, like I said, I've been a really amazing tour through some of the problems y'all are tackling.

[00:47:13] Andrew Zigler: So thank you so much, Dan, for joining us on Dev Interrupted. It's been so fun. And to you listening, uh, thank you for, uh, joining us for the conversation and for tuning in. That's it for this week's Dev Interrupted, but the conversation doesn't stop here. Be sure to find Dan and I on LinkedIn, continue the conversation, ask any questions you might have because we're really curious to know.

[00:47:32] Andrew Zigler: How you've been building and how you might use a tool like this. So we'll see you next time.

Your next listen