Epic Web Conf '24 Speakers

Barry McGee

Senior Developer - Shopify

Watch Talk

Talk

  • Wednesday, 7:00 PM7:20 PM
    Building shop.app at scale with Remix and AI

Bio

Barry is a Senior Developer with nearly two decades of experience building web experiences and user interfaces for products and services such as the BBC, Paul Smith, FutureLearn, Kahoot, Unbuntu and currently -- Shopify.

Share

share on twitter

Interview

Hello, everyone. I'm super excited to be joined by Barry McGee. How are you doing, Barry? I'm doing good. Thanks, Kent. What about you? Thank you. I'm doing great, thanks. So, Barry is... Actually, I'll let Barry introduce himself.

This is actually the first time that I've talked, not face-to-face, but, like, synchronously with Barry. And so, we just first interacted on Twitter relatively recently. So, I want to get to know you as well.

So, tell us a little bit about yourself. What do you like to do, and where are you working, and all that stuff? Sure. No worries, Kent. Yeah. Hi, I'm Barry. I'm based in Belfast, and I've been working on the web for almost two decades.

So, primarily on the front end, I've worked for the BBC, I've worked for FutureLearn, QHoot, Ubuntu, and I currently work for Shopify.

I've been working remotely full-time since 2016. So, that was prior to the whole COVID pandemic thing. When it was back in the day, I used to say, I work from home full-time, and people would be like, no way, that can't be done.

Well, yeah, turns out it can be done. So, yeah, I joined Shopify mid-2021. I've been on the shop team the entire time I have been with Shopify.

Although I started off working on the app, so I was working with React Native for the first couple of years. And then about the time that Shopify acquired Remix, we started to think of what shop would look like on the web.

So, I was very excited to move to that project, and even more excited to get stuck in and have a deep dive into Remix.

So, that's what my talk will be about at the Epic Web Conference, about how we built the shop on web using Remix and how we built that scale.

And also, we used a certain amount of AI there as well for the chatbox, which is scoped to Shopify Core, and we'll talk Shopify Core, etc.

So, there's kind of some interesting challenges we had with that and how we keep that synced with the native app. So, that will be largely what my talk will be about.

Personally, I'm based here in Belfast. I have a four-year-old boy and a two-year-old girl. So, I've just pointed to some pictures on my wall. So, they keep me pretty busy outside of work.

When I get time to do some things, which I like to do, I like to cycle. So, I've got a road bike, and if I can get out on the road for two or three hours at a time, that's something that I like to do.

And I'm turning 40 this year, so I have a bit of a fit-for-40 chick going on when I'm trying to just look after myself a little bit better. So, yeah, that's kind of a brief overview of where I've been coming from.

And, yeah, really looking forward to the conference. Awesome. That is super. I've got lots of things I want to ask you about. That's exciting to have a four-year-old and a two-year-old. That's a very fun time of life. It is, yeah.

And I hope that, depending on the way weather goes, we might be able to get you cycling in Utah in April. Oh, wow. We've got really, really good mountain biking and even road biking as well. So, it kind of depends. Part of me hopes that we can do that for you.

The other part of me is hoping we have a lot of snow so that we can do skiing and snowboarding as well. But we might be able to do both. Wow, awesome. Yeah, there could be snow in the mountains and good road biking around too.

So, definitely look around in Park City because that is 100% a very common activity around here. So, super cool. Absolutely, yeah. I've been taking a look. It's right in the foothills of the – I forget the name of the mountains, but they begin with M.

Oh, okay. Yeah, yeah. There's a particular mountain that began with M. Oh, Mount Tipinogas, maybe? Okay. Perhaps, yeah. That sounds like something I would struggle to recall.

Yeah, I can see Mount Tipinogas from my back porch. So, yeah, it's a beautiful, beautiful place. Very cool, very cool.

So, let me try and do my best to describe what the Shop app really does and then you can correct me for what I miss up.

So, it's my understanding that the Shop app is basically almost like an Amazon marketplace type thing where you can go there, you can search for what you're looking for,

and I'm guessing that all the products listed on there are just products that are on Shopify stores wherever, all over the web. And then the AI is there as just a tool that will enable you to find what you're looking for a lot easier than you can with a search.

Like, sometimes you need to solve a problem and you don't know what products you need to solve that problem, and so the AI can help you find that. Did I describe Shop app very well or is that – am I missing anything?

No, I think that's a pretty good overview. Shop is an additional sales channel for merchants to live alongside their already existing Shopify store.

Shop is not in competition with their store and not all of the Shopify merchants are yet part of the Shop sales channel. Is that something they need to turn on, in particular if they have been on Shopify for a while?

And the really fantastic thing about the AI is that it is context aware. So, when you search for something on Shop, like let's say I'm going to Park City, Utah and I need a new pair of ski boots.

When I search for ski boots, the sidebar in Shop web, it is context aware of what you're currently looking at. And as you move through the Shop app, it's kind of a world that, oh, you chose a blue set of boots.

So, it's like, well, maybe I want to show you more blue ski boots. Or you've chosen men's. Okay, so you're looking for men's blue ski boots.

So, Shop can be smarter as you move through to show you more context aware products. And Shopify's main mission is to make commerce better for absolutely everyone.

So, what this does is remove the friction from users to get them to what they want faster. I like that a lot. I think that's a very cool way to use AI.

And an interesting situation where the AI is not just like a chat GPT that's been plugged into your site, but actually connected with your own products and just helps people to find what they're looking for more easily.

And the level of context that you're able to provide as they move through the site is very, very interesting. I don't know how much you can tell me or if you want to spoil any of your talk,

but I wonder whether you're using a service for the AI or is Shopify running the AI itself, like doing something homegrown? Somewhere in the middle. So, it's not entirely Shopify, but it's not entirely using a third party vendor either.

But I will elaborate a lot more on that in my talk. I don't want to give all the spoilers away, so I have to keep a certain amount back. Very good. Yeah, I'm looking forward to hearing about that. So, while we're at the conference, we're going to have extended breaks. That's a big reason why people come to a conference.

Otherwise, they can just watch the videos online later. And so, we do have those extended breaks. And I'm curious to know what are the sorts of things that you're hoping to talk with people about during those breaks or what would you like people to come and talk with you about during those breaks?

Okay, yeah, that's super interesting. One of the things which initially attracted us to Remix is obviously how fast it is. It's server-side rendered. It's fast straight out of the box.

But of course, you don't push to live what you get straight out of the box. You have to then start to build stuff on top of that. And then as you do, things inevitably slow down. So, we're kind of in a battle to keep it fast.

And I've seen that Ryan this week was posting stuff about caching and what the caching strategies are. And that's something which we're constantly taking a look at, constantly reassessing.

I've been, this past month or two, taking a look at benchmarking from a web-perf point of view. You know, how fast we currently are, where we can make improvements.

And that's something which is actually quite tough because all of the typical stuff when you go to take a look at an existing big app, you've got a load of stuff which you can immediately think of.

But because Remix straight out of the box has already thought about a lot of stuff, it's really about getting the last 10% of optimizations in terms of web-perf. So, that's kind of a big interest of mine.

And so, if there's any web performance experts who would be at the conference, I would love to speak to you. Very cool. Yeah, that sounds very interesting.

Caching is a really big topic, and I have plans to put together some material about caching in the coming months, assuming I can get all the other things done that I need to. But yeah, I do a lot of caching on my personal website.

And not just caching, that's just one tool in your tool belt for performance optimization. So, I've got another workshop that works for that too. But a big topic, and definitely looking forward to talking with people about that at the conference. So, Barry, thank you so much for giving us some of your time today.

Not at all, Ken. Thank you. Yeah, it's great to get to know you. Anyway, I'm looking forward to meeting you in person in April at Epic Web Conf. And yeah, we'll look forward to seeing our viewers there as well. See you all later. Fantastic. Looking forward to it. Bye-bye.