[Music] [Surya Lamech] Hello, everyone, and welcome to Adobe Commerce Rockstar. - Whoo-hoo! - Hey. Before we get started. All right.
And thank you for showing up on a Thursday morning right after Bash where you were actually rocking. But thank you for coming here early morning and being with us. I'm Surya. That's Shannon.
There's a QR code up there. Please scan that and it'll get you a Spotify playlist. Once you get that playlist, add your favorite song. Doesn't matter the language, the genre, whatever it is, add your favorite song. I promise you I'll listen to that playlist once a month at least. So please add your song in there. There are also t-shirts at the back over there, so please pick one if you'd like. And with that, let's get started. So this is not about Shannon or me. This session is about our Adobe Commerce Rockstars. And if you're wondering what that means, well, Rockstars is a program that we started three years ago, and it's to recognize technical innovation from our developer community. So each year, we solicit submissions from developers, from our partners, from our customers, and we bring them up here and it's a chance for peer to peer learning for you. So you learn from your own peers. At the same time, it's a stage for our developers from our community to shine. So please, as you see each participant come up, appreciate what they're doing here. Give them a huge round of applause when they start, when they finish, and at the end have a good time. So with that, Shannon. [Shannon Hane] If you could click for me. So first off, I want to thank everyone who submitted an entry for Rockstar Challenge. We had so many. Was a really hard decision. But we had folks who are providing us with apps across the board. Everything from back office integrations to data-driven personalization to shopper experience. So thank you, thank you, thank you for the broader community who participated. And if you weren't picked for this year, we hope you submit next year and come back for more because this is one of our most favorite sessions.
We have an esteemed panel here today to help us judge our three finalists. And let me just quickly introduce them to you. I we have Chanda Dani, who's our Senior Director of Products, Product Marketing and Technical Documentation. New member to the team this year. Her first rock star appearance. We also have a customer who's here today who is a proud user of Adobe Commerce, Dean Bursic. He's Director of Product Ecommerce at Wesco. So thank you, Dean, for joining us today.
And our final panel member is Nicole Cornelson who's VP of Software Development for Adobe Commerce for our team here. She's coming back for I think the second, maybe third year on the panel. Thank you very much for joining us, Nicole.
All right. So I'd like to get us started with our very first finalist. This is Yaroslav and he comes to us from at Atwix. And he has a passion for creating exceptional experiences, and his favorite artist is Heilung. Please welcome Yaroslav.
[Yaroslav Rogoza] So my name is Yaroslav. I'm serving currently as a CTO at Atwix. At daytime, I'm technician. At night time, I'm usually a musician, and I'm proud of two of my passions.
Best in class storefront performance.
No? Not after the party tonight? I see interest in your eyes and it makes sense to me because I would name this topic as most evergreen for every store owner from the beginning of e-commerce days. And this topic is on radars not only with merchants or community or developers but even Adobe. And even we talk about our favorite e-commerce platform, Adobe Commerce.
So we saw attempt from Adobe to introduce best-in-class storefront performance with PWA. And it was good. It was good, but we had some bugs there. And finally, last year we saw EDS or Franklin or Commerce Storefront, name as you like it. And we see finally green Core Web Vitals. We see everything green. We can see this performance. We can feel this performance. And does it mean that everything is good now and we won't dive into this topic anymore? I wish. So basically with every good solution comes some price. And in this case, I want to talk about price that means SEO. And SEO can be a problem with modern implementations that target the best performance and I will explain why. So I want to talk about two different methods of delivering visual part of your website to customer's device. The first one is server-side rendering or SSR. It's like traditional way...
Which was used from the beginning. So it means you have server, and on this server, the visual part is generated, then sent over to device and display on the device.
Then...
After this method, we had another one that's called client-side rendering. And it appears because of the major problem of this method, so the page is generated on the server. The server is one, customers many. And sure, you can scale your server, but you cannot do it indefinitely. And the idea was, let's generate all the content on client's devices. So basically on mobile phone, on tablet, on laptop, and any other device. And it becomes possible because of technical capabilities of the devices. They are powerful basically. The phone currently is as powerful as PC like 10 years ago. So it's possible for all the devices to render this content. But to make it happen, we need to make sure that device or browser or like the software that client use to render to see like the web page, it's capable of rendering the content because if it's not, like both examples when it's not, for example, the device is outdated, it's old or there is some error or it doesn't know how to work with modern JavaScript. And in this case, also in this group of problematic cases, we may say about googlebots or crawlers. So basically googlebots or crawlers, they are clients that visits your website, tries to render the content, and in that way you read what you have there. But if we have a case when googlebot or search board or any crawler cannot retrieve, cannot process all the instruction to render the page. What we got in this case.
Yeah, right. So that's not the wrong slide. We got nothing. So on an attempt to index the page if the error happens, the emptiness will be indexed. And that's a major problem because you have now super performance, but another problem, crawlers cannot scan your website sometimes.
And here I want to present Quantum. It's our system of server-side rendering content. So basically I was talking about two different ways, client-side rendering and server-side rendering. And this system brings top of two worlds. So...
First of all, it ensures that the device is capable of rendering the content. Then if it is, it sends the content in modern format. If not, if the browser cannot, it's old or it's a search crawler, then the content will be pre-generated from server, put in cache and send over to the client.
I want to share with you a short demo...
How it works and what is the difference between quantum and standard EDS implementation. So basically you have EDS store. It's an example from Adobe documentation, it's not a competitor. And if you go to some product detail page...
And, for example, try to disable JavaScript here using some magic. I will show you.
So we have JavaScript disabled and now let's reload the page and see what we see.
Not black but white, but nothing. Still nothing. And that's the problem. Let's try to check the same with Quantum.
So what you will see on the screen now, it's Quantum. It's own theme. So basically it's EDS but with server-side rendering capabilities for unsupported browsers. And if you go to some PDP and perform the same operation, so disable the JavaScript.
I wasn't that fast at that time.
And we reload the page and see all the content is there.
And all the menus, all the links, everything. So once Google scans your page and gets this content, it can like index it and follow the links, done.
All right. So after implementing this solution on our websites, we saw decrease from 15% to 6% of these blank pages. It still happens, but we're working on that. Sometimes...
It's not possible to very accurately detect which user agent is used at the moment. So maybe in the future we want to incorporate AI for detecting the browsers and detecting the capabilities and eliminate the 6%. And also I mentioned the cache. So if the page is pre-generated on the server, it will be put on cache to not regenerate it over and over again all the time and save server resources in that way. And we created a Cache Warmer solution that is stored completely in app builder. So this Cache Warmer has its own configuration and you can configure that and it will visit your website from time to time and generate server-side rendering content. And I have a small demo of this Cache Warmer as well. So as you can see, you have visuals of indexed or cached and uncached page. You can invalidate the cache, you can remove page from the cache and also you can configure the time or how often you want to have your website rescanned.
So that's probably it from my end.
If you have questions. Thank you.
What an in-depth presentation. That was awesome. I appreciate it. I am curious, when in the EDS journey, did you get the opportunity to detect this becoming a problem? Sites were already live or you found it in your testing or how did you discover this? Yeah, that's a good question. Thanks. So basically, this issue was present not only for EDS but for any single-page application. We saw this issue for all the websites we tried to implement with as a single-page application. And we always use server-side rendering method to solve this issue, but this quantum was developed specifically for EDS because we had one for PWA, we had for Vue Storefront, but this one is for EDS, and we are going to use this method further. Thank you. All right. Thank you, Yaroslav. Can we get a big round of applause for Yaroslav? All right. So our next participant, Florian from TechDivision.
[Florian Sydekum] Hello, everybody. Nice to be here today. I want to tell you a little success story which we had in the last couple of weeks, where we created a connector for SAP S/4HANA and Adobe Commerce in just three days while using modern technology which Adobe gives us. And I want to show you today how we did it actually. So our big challenge was that we had two complex, big platforms who are highly individually, each doing their own business operations independently. And of course, everybody knows Adobe Commerce, how it works and so on. And SAP itself is a very big ERP landscape actually mostly operating in finance, automotive, manufacturing, healthcare, and so on. And the big challenge was actually that both systems had to communicate to each other, right? They need to exchange product data, crucial sales order data, customer profiles, and it has to be really scalable and fast. And everybody who has done similar efforts in the past knows what problems actually arise from this. So our pain points, or in general, pain points while integrating those systems are definitely that you always struggle with slow data exports, processes are in transparent or even faulty, and nobody knows what's going on. So you have to pick developers who manually debug those processes. And in general, it's not really stable, right? Because data transformation in general is actually difficult. And this leads to a really big couple of business problems, because if you have inconsistent data in some system, you certainly will have...
Loss of revenue because customers are frustrated and so on. You will certainly do poor decision making because you cannot rely on the data. And of course if you have so much developers debugging bugs and so on, this is certainly a budget problem in the end. Right? And... All in all...
It harms the business actually. So this is compared to what the market potential is because SAP is currently in that migration phase from the old R3 back end, and they migrate everything to S/4HANA into the cloud. And there's not much time left because until the end of 2027, that's almost 2.5 years from now on, they have to be migrated actually. Such migration process takes time, it takes two, three, four years, right? So this complexity added to this short of time is not much room that you can spend a lot of time to integrate other systems, for example Adobe Commerce. Right? So you have to be fast and it has to be stable.
So here I want to tell you actually how we did it. Adobe Barcelona invited us to their office. There are a couple of guys over there maybe? Daniel, is Daniel here? Daniel? Is Daniel here as well? No. But he's the guy who introduced us to Commerce Integration Starter Kit, and this is a very powerful tool. So our connector is built on this Integration Starter kit, which is running on the Adobe Developer App Builder. And with the whole setting, we have an API-First approach, meaning we only take APIs from the systems, official APIs. We are running in a serverless architecture, so we don't even have to care about deployment, infrastructure and so on. So we can directly focus on our implementation, which they call the last mile implementation. And of course, this whole process has a real-time data synchronization because we can directly send events to each other and process them. So in general, the benefits of using Commerce Integration Starter Kit gives you the ability to onboard third-party systems much faster than in a traditional way. You are using a serverless architecture, so you don't even have to care about it. You can directly start with the CLI tools to implement your 50 lines of code and deploy it into the cloud, right? So it's running, immediately you can kick off a project in one minute actually, and you can extend the systems via API from the outside. This, all in all, gives you accelerated development because you're much faster, only focusing on implementation. And of course, we are running in a cloud-native environment, so scalability is not a problem at all.
So here's our approach how we did it.
As I said, this is a three-day sprint. So on day one, we discussed several business requirements, and we made sure that we have a common understanding of it. And once we've done this, we chose the special APIs from both systems, SAP and Adobe Commerce, because we are using them to fulfill the requirements. And once we have chosen the APIs, the task was to actually map the data, because an SKU in Adobe Commerce is a material number in SAP, so we have to map those data so they can communicate actually. On day two, we started development directly. We set up SAP so it can send out events, and it's actually quite easy.
It's just a few clicks, and you can then receive events from SAP. The same for Adobe Commerce. The Integration Starter Kit brings onboarding scripts, and with these onboarding scripts, everything gets set up automatically and you can directly consume events and data from Adobe Commerce. So what our main task was there is data validation, transformation, and transportation. So this is the main task you have to focus on. And on day three, we finalized our product and customer data sync. We started end-to-end testing, so we did go into Adobe Commerce, we did our first orders, created customers, the same on SAP side, we created customers there, and then we tested how they synchronized and it was really fast and also stable. In the end, we also did a couple of fine-tuning of performance metrics.
So let's have a little more detailed view on the architecture, how it works actually.
We see our three systems, and in the middle our connector here. And the whole magic actually, in my opinion, this is a real no-brainer, relies on the eventing functionality as well as the webhook functionality, meaning that you can consume any data out of Adobe Commerce. So everyone who has not tried it before, I highly recommend that you try this because it's really flexible. You do not have to program any PHP line at all. It's highly configurable, and you can get any data you want. So we exchange those data almost real time actually, and then on top of that there are webhooks which were, for example, a headless frontend can actually request data to their webhook. For example, in a B2B case, order history, customer individual prices and so on. And they need to be there on point, also in real time. And this is achievable with webhooks actually. So we request the data out of SAP and deliver it to the frontend.
This whole connector is actually publicly available. We uploaded it to the Adobe Exchange as well to the e-commerce marketplace. So everyone who wants to try it out, feel free to download it. There will be a QR code at the last slide, so you can get a direct link to it. We included documentation, we included onboarding scripts, everything actually works automatically. You have to directly set it up, your own app builder project, and then you can immediately start with it. This connector was awarded with the App Assurance badge as well, meaning that we had scalability and performance during implementation in mind. It was created with excellence.
So... As data integration process is sometimes difficult to explain, I actually made a little demonstration video for you, so you can see how it works. Here we are in a typical commerce store, where we do a little order, and directly jump into App Builder, and we see here the events, the commercial order sync. And there we see that it's attached to a runtime, and this runtime is consuming the event because we got the order data, and you see it here in the journal, and here's the JSON data which you get from commerce. So it's highly flexible, whatever data we want there, we can consume. We process it and export it to SAP, and we get directly an ID back. Once we switch to SAP, we can make sure that it is here. Don't worry, this is German.
Yeah. So this is how it works, and it's actually quite fast.
A little conclusion at the end. So like you saw in the last couple days here from the Adobe presentation slides, there's a really modern approach. Adobe gave us really powerful tools, the App Builder Integration Starter Kit, so we can extend commerce from the outside via API-First approach. This is really very, very easy. We are running on a serverless infrastructure, so that means we can just focus on development. Right? We don't have to care about anything else. We write our 50 lines of code and deploy it in the cloud. It's running immediately and it works fine.
And then I brought a little success story here with you with one of our latest customer, Deutz Engine Company. So they are building engines for not only farming industry but also construction sector industry and so on. And they came to us and said, "Hey, we need a B2B platform for spare parts. We have worldwide customer base. We need to connect it to our SAP." And they are currently in the migration phase from R3 to SAP S/4HANA, and meaning that we have to implement this connector actually for both systems. And they had the requirement that they need customer individual prices.
We needed sales orders. They needed customer documents exchanged to Adobe Commerce and so on. And then we approached them and said, "Hey look, Adobe has this really nice approach to a modern implementation. Would you be open to actually begin this project with it?" And they totally agreed. They are happy. We are happy, because it's actually ridiculously easy to implement this.
So that's it actually. If you have any questions, feel free to ask me. I will be around here in the hall after the talk as well. Just approach me. QR code to download the connector if you want, try it out. And independently from this connector, you should actually try out App Builder Commercial Integration Starter Kit. It really works perfect. Thank you very much.
Thank you so much. That was really impressive. Three days of implementation. That is really good. What makes me curious is if someone has to adopt this, like you said, it's 50 lines of code, if they want to make any changes, like what are some of the things someone has to be cautious about when they adopt it? And tell us a little bit more about-- You said it's very fast, the performance and testing that you did, and what are the numbers? - Like, how fast? - Yes. So this connector, when you install it, it actually already syncs orders, products, customers by the bidirectional, both systems. You can also request order history data and so on. And we tried out delta imports, full imports. And of course, full imports take longer. But what I mean with almost real time, you can request data via webhooks. So for example, if you need customer individual prices in the frontend, they get from outside of SAP directly to the frontend.
Once you install this connector, the only thing left you have to do in your own individual project is actually that you have to map the data because every Adobe Commerce is individual, every SAP is individual. So this is common data, like common SKU, common attributes like image description and so on. But of course, your own next project has individual data. Yeah.
All right. - Thank you so much. Yeah. - Thank you as well.
All right. So thank you. Those are two excellent presentations. We're up to our final finalist here. And let me introduce you to Yuriy. He's a leader from-- Actually, let me move this forward. He's a leader-- Oh, leader from Nomicore.
Let's go. There we go. Hey, so let's welcome Yuriy. He's a leader from Nomicore and he's passionate about e-commerce and AI. And his latest release is AI Shopping Companion. Let's welcome him to the floor here.
[Yuriy Fedoronchuk] Thank you. Good morning.
I hope that you are all feeling refreshed and ready for the last day of Adobe Summit. And I think that for me, that this is one of definitely the biggest events I've ever seen. 15,000 people, that's incredible. Thank you, guys. That's great.
Sorry. So I want to start my presentation with a little story of my life. So once in a while, my wife asks me to buy the school bags for our kids. So sounds easy, right? So I jumped out just immediately online. I bought the best possible school bags for my kids, orthopedical, everything. So it just was perfect, perfect. I felt almost like a hero. But when I came home and presented my purchases to my wife, she just said, "That's all?" So it appears...
She was expecting that meaning by buying school bags for kids means buying pencils, notebooks, lunch boxes, and etcetera, while for me, that was just another item in the list.
So now she doesn't ask me to buy anything.
So this story is really funny, right? But it really starts the...
Really serious question in e-commerce. And to understand this problem that appears...
I want us to go through the five whys.
We will dig a little bit deeper and understand what actually stays behind that.
So why researching is painful? Right? Because it takes time.
It's almost like a waste of time, right? I need to stay closer.
So why is it time consuming? Because the process is inefficient.
And why is there inefficiency? Because there are so many choices and merchants, they just fail to propose the right things to the client.
And why merchants cannot propose the right things to the client? Because they don't know their true intent.
And why intent is not clear? Because no merchant has ever asked this question.
So merchants, they-- Suppose that when I'm buying the backpack, I should already have pencils, notebooks, and etcetera, and of course, PhD in back to school logistics.
So I want to repeat it once again. No merchant has ever asked this question.
It's even more complicated. Have you ever tried to fix the problem something like, what do I need to replace the broken tile in my bathroom? Or what do I need to fix the leaking toilet? Did you try? I tried but-- So let's look at these products. Right? I want you to guess for three seconds what is the true intent. Ready? Yeah. For me, this looks like a set of different products for serial killer, right? But actually this is the DIY made costume for a kids' party.
So those who don't have kids, don't run to the exit. Kids, this is brightening and sunshine.
I can tell you, I can say this to myself...
Every night.
So... We know the problem.
Researching is painful.
But what if shopping was effortless? Let's go to the chapter two and look for the opportunities.
So what do we have at the moment? We all have the personalized...
Recommendation search. Right? It's been already with us for a while.
So if one person buys X, it also will buy Y, based on the history of the purchases...
And based on the history of what the person was buying previously, right? But the truth is that this is not enough anymore.
So we want to buy things...
That will fix our intent, that will fill the problem.
So that's why it led us to the cognitive commerce ecosystem, where something will expect us...
To buy and close...
Our Intents.
But... To understand our intents and have the shopping effortless, we have to do something, right? And the next step is intent-driven assistance.
So this is your personal shopping companion...
That will... help you to fix your problem.
Intent-driven assistance stays on the four pillars.
First pillar is intent recognition. And this is already where it starts shining.
So now...
When you would search, I want to cook the dinner, based on the keywords, you would get just maybe receipts, right? But you want to search when you cook the dinner, not only just receipts, you want to have ingredients, receipts, and sometimes maybe even the wine pairings.
Right? So...
When a person is searching for a plant...
Right now it's getting the plant.
But when person would be searching...
"Start a balcony garden..." This person will get the set of different products to solve the problem.
The next one is really important. It's...
Contextual clarification.
So...
We want contextual clarification to ask, proactively ask...
Questions to understand what is our real, true intent.
And finally...
This is not only about...
Physical. It's not only about online. It's about... Physical world as well. And it will work for pretty much all industries that we have.
So let me introduce you AI Shopping Companion.
This Shopping Companion will help you to...
Find your true intent. It will proactively ask you questions, what actually you need and will find you the solution so you don't have to spend your time.
How it works? So you type your request in the search bar.
It will give you automatically products.
Products will be separated on the different categories...
And it will proactively ask the questions to understand what is your goal.
So how it works from the architectural point of perspective? User made a query that sends it to e-commerce. From e-commerce, it goes to AI Shopping Companion. AI Shopping Companion tries to understand the real intent. It's splitting this intent on lots of smaller requests and sending this to search engine. From the search engine, results are coming back to Shopping Companion and it happens, let's call it magic, and user gets the proper...
Result.
So catalog data from Adobe Commerce is indexed in the search engine. But...
Adobe App Builder generates the metadata. And this metadata...
Travels to our Shopping Companion.
So I want us to look how actually it really works. So this is the search bar.
And...
You're typing different requests. You get different products from the totally different...
Categories...
That are even not connected to each other.
Then it asks you proactive questions, if the weather will be raining or what's your hiking, where are you going, and etcetera. You can add even your request, and finally you said that it will be raining. So that's why it offers you right products. And it's so easy. Now you can just pick your products and add them to cart.
That's all magic.
So remember the problem, that researching is painful and merchant doesn't know the true intent, right? So AI Shopping Companion anticipates this...
And is unlocking new opportunities.
First is uncover hidden customer demands. So finally, merchant understands...
What people are shopping, why people are shopping on his website.
He understands what products are needed.
Second, remember we are splitting...
Query on small requests and sending them to search engine. So we definitely can find what user actually didn't find...
In the database. So not only what was out of stock but also products that could be fit to fix the problems of users that are coming to the web shop.
Third...
The merchant will be the first one who wants to understand the trends because users will come and proactively tell about the trends and the pain points. So feedback will be almost immediate.
And that all will help every merchant to refine his product strategy and build...
On a really solid level.
So I want to finish my presentation with a phrase that basically said by the CEO of the Coca-Cola.
He said "Don't sell to users what you want.
Sell them what they want." So Shopping Companion, this is something that will help you to build this bridge between you and users. And I hope that everybody will be the rockstars with their companies. So thank you so much.
Thank you, Yuriy.
All right, just hold on for a minute. We will take some questions. Yes, questions. Yes, hi. Great job. Fantastic. I mean, I think definitely hitting on a lot of the industry trends at this point. My question is you talked a bit about the benefit side of stuff. Do you have case study and what that uplift comes from this type of technology? So I was just finishing my presentation with something that will really bring the benefit not only for the user but will spend definitely less time on the shopping experience, but also to the merchants. So I believe that this is a really win-win solution for everybody. So if you're asking about the real case study...
We are in the mode where we are open for the case study to start with one of you or everybody.
Awesome, thank you. All right, thank you, Yuriy. Once again, let's hear it for Yuriy.
At this point, I'd like to ask the panel to take five minutes, maybe five to six minutes to determine your choice. And I'd like to ask all the three rockstars to come back on stage and take questions from the audience. If you have a question, please raise your hand. And while you do that, I'd like to thank Tatiana who's there. She's been playing the music. She's been keeping us on track. She's been timing us. So thank you, Tatiana.
All right. So welcome back, panel. Could you come up and-- All right. Hey, guys, really, really nice job today. That was fantastic. Really appreciate the energy, the preparation, it's fantastic. It was hard. I mean, we debated and we got yelled at for the amount of time we were debating. So it was very close in the end. But it is the panel's selection to go with Yuriy with the AI solution based discovery approach. So congratulations.
Great job.
Thank you so much.
[Music]