December 9th, 2022 × #Internal Tools#UX#GraphQL#React
Supper Club × Coding at Disney with Vu Le
Vu Le shares insights into building internal CMS and tools at Disney to manage massive amounts of content and enable complex workflows for Disney Plus, ABC News, National Geographic and more.
- Vu Le works at Disney building internal CMS and tools
- Vu transitioned from marketing to coding via online resources and projects
- Vu was recruited by Disney for a contract role initially
- Vu works on tools for direct to consumer products like Disney Plus
- Vu builds CMS tools on legacy systems using modern stacks
- They use federated GraphQL APIs
- UX focused on usability for complex workflows
- Frontend built in React with component library
- Focus on testing for reliability
- Distributed team working remotely
- Flexible work policies up to teams and managers
- Employees get Disney Plus bundle
- Vu uses MacBook Pro and custom mechanical keyboard
Transcript
Announcer
I sure hope you're hungry.
Announcer
Oh, I'm starving.
Announcer
Wash those hands, pull up a chair, and secure that feed bag, because it's time to listen to Scott Tolinski and Wes Bos attempt to use human language to converse with and pick the brains of other developers. I thought there was gonna be food, so buckle up and grab that old handle because this ride is going to get wild.
Announcer
This is the Syntax supper club.
Guest 1
Welcome to Syntax, the podcast with the tastiest web of moment Today, we've got an awesome show. We've got Vu Lee on today who, works at Disney. Yes. That Disney, and we're gonna chat about All kinds of stuff that goes on in Disney. I know he works on a bunch of internal tooling, and I'm curious about, like I'm always curious about, like, that half of Businesses, which is like behind the scenes, how does all of that work? And and what are what tools are you using? How do you make decisions? And like, what browsers do you have to support? Things like that. So We're gonna dig on into that. This episode is sponsored by [email protected],
Guest 2
and Tuple is the remote Pair programming tool for developers who are tired of pairing over Zoom.
Guest 2
This is just an incredible pair programming
Guest 1
Tool to share your code with a lot of really, really desirable features. More on them later on in the episode. So, Vu, thank you so much for coming on. I really appreciate it. Yeah. Thanks for having me on. Excited to chat about, what's it like working at Disney and and, specifically, why I worked on. Awesome. Well, why don't you give us It's a rundown, doesn't have to be quick, of who you are, what you do, where you're from, all that good stuff. Yeah. For sure. So, my name is Vu. I'm a senior software engineer at Disney, specifically
Guest 3
for the Disney media and entertainment distribution segment. So it's, like, I believe, one of Either 4 or 5 segments that operate within Disney.
Guest 3
Been with the company for about 4 years, and my focus has been primarily Building internal tools, with a focus on it seems to be, like, content management systems.
Guest 3
And then prior to that, I was working on, like, A digital search marketing company for landing pages. And, actually before that, I was actually I've been programming. I was a I was in, sales and marketing. So I have a Oh, well. Cool. Yeah. Different backgrounds, and here I am now, working for Disney. How how did you make the switch from sales and marketing to coding? Because we get a lot of people ask that. It's like, If you don't do it from, like, right out of school, like, how do you hop ship from one to another? Yeah. That's a good question. I mean, I it's weird. Like, Throughout my whole life, I have been very tech savvy. Like, I really enjoyed working on peers, but it's I've just never really put the 2 together. Like, I could do a career in this in, like, in different tech.
Vu Le works at Disney building internal CMS and tools
Guest 3
It wasn't until, I think the last non programming job I had, I had to kind of be the project manager, like, the liaison for, Setting up, like, an ecommerce website for one of the companies I worked for. And that kind of, like, opened my eyes, to web development because, you know, they were trying to get, A website up for for ecommerce, and I was talking to the the team that I was working with to kind of coordinate all that, and they said, oh, yeah. You should probably look into it. I kind of spent some time, and It was actually part of my job. Also, I had dabbled a little bit into it and finally realized it's something I wanted to pivot towards. So I end up switching, careers and then yeah. So and then
Vu transitioned from marketing to coding via online resources and projects
Guest 2
Where did you pick up, like, the skills from? Like, so where did you,
Guest 3
what what kind of re learning resources did you pick up? I was trying to decide between, like, should I do a self taught route, or should I do something boot camp or go back So I ended up ultimately deciding going to south top route. But, I mean, at the time, there's I feel like starting out is just so overwhelming for anyone who's new To learning. So for me, it was a lot of, like, documentation.
Guest 3
I did, like, I did a little bit of I think, like, I think freeCodeCamp had, like, their own curriculum, so I kinda used off of that. And from there, it's it's just a rabbit hole, really, from, like, I think building projects and, like, figuring out, like, what you need to do. And, there was also a lot of good YouTube resources at the time, or at least that I was using. So and then from there, it's just,
Guest 1
You know, working, doing some freelance work, and eventually getting more experience and eventually getting my foot in the door. So, yeah, it's it's always it's ongoing process for us in terms of learning. I love hearing that because a lot of people ask, like, at what point do I know if I have enough code coding resources? And it's like, well, this kind of a, Like a ongoing resource. But, like like, what was that 1st job like? Like, where were you at? How do you how do you even get that 1st job? It's it's, I think your portfolio I think
Guest 3
I think personal projects go a long way, and I think you're pretty passionate about what you're working on. It it helps you kind of keep wanting to learn and apply new,
Guest 2
like, skill sets towards that. Nice. Yeah. So so you worked you you you got your 1st gig. You grinded a little bit, and then You got a job at at Disney.
Guest 2
Yeah. How,
Guest 1
how does that process
Guest 2
happen? Yeah. Did that, did you find a job posting? Were you recruited?
Vu was recruited by Disney for a contract role initially
Guest 3
Yeah. That's a good that's a very good question.
Guest 3
So I think the one of the first jobs I got was, you know, I was working for this, This digital marketing company building landing pages, and then I think take 6 months 6 to 8 months into it, I was reached out from a recruiter, for a contract gig, for Disney. And, so I was a good I wasn't really looking, and they're saying, hey. We're looking for this role. If you're interested, you know, it's it's a contract role. And I thought, hey. You know, might as well try it if if it looks good on the resume, and then see where it goes from there. And, yeah, that was pretty much it. So I got a contract Rolled as a contractor for Disney, for about 6 months, and then it was a and then eventually got, converted into a full time position Wow. As part of, as another team. So it just so happened I was just kinda at the right time and right place. And fortunately, I I had
Guest 1
at least The skill sets and and interviewed well, it worked out. So sometimes that's just how it happens. So just really fortunate. Oh, it's amazing. It As people always ask us, like, how do I get job at these amazing big companies? They answered your answer was they came to me.
Guest 1
Yeah.
Guest 3
Yeah.
Guest 2
Hey. My my best job, I got that too. And, you know, Ford Ford came to me. I just had a portfolio or whatever. I got a LinkedIn recruiter message, and Typically, you think about, like, a LinkedIn or recruiter messages, and you think they're pretty low value. But at the end of the day, some big ones come in. You take the interview. You You get picked up, and then, you know, it's pretty, pretty amazing life transition. Right? Yeah. It's,
Guest 3
it's kinda great. I don't looking back, if I were to, Ask myself, like, as I started this journey, would I be working at Disney? I'd I'd say, it'd probably take a lot longer. Maybe it's it's it is so I couldn't even think, yeah,
Guest 1
Think of that being possible. So So you said sorry. You say you worked at a specific, like, team inside of Disney. What what was that team again or or Area of Disney? Yeah. So I work for the Disney media and entertainment distribution,
Guest 3
segment of Disney, and that's Primarily focused on and that's where, like, Disney plus is part of, Disney Streaming. Like, they're kind of under the umbrella. And the real the focus is really kind of all these, products, digital products are kind of directly to the consumer. So you can think of, like, abcnews.com, National Geographic, those are websites and or products that are kind of immediate direct to the consumer, versus something like a theater or where it has to go through, like, a theater like, the the the content to the theater to the consumer. So you can kinda think of it more, like, direct to consumer, in terms of what, that entails.
Guest 1
So Okay. That that makes sense. And that's there's, like, different areas of the company for, like, Disneyland and Disney World and things like that. That's a whole is that is that totally separate? Do you ever have to talk to the weirdos from Disneyland?
Vu works on tools for direct to consumer products like Disney Plus
Guest 3
No. It's it's totally separate. Yeah. It's it's a huge company. I mean, I I could feel like what I'm working on is barely the tip of the iceberg. And, Mhmm. Right. There's definitely people in parks in the Disney parks and consumer side of things that focus on, like, building the apps for Allowing, you know, the guests to order their food or ticket reservation, or even, like, cruises. And you have another segment that's focused on, Like Disney studio, like, all the technology that allows creatives to kind of the workflows.
Guest 2
Yeah. A good friend of mine actually was on the sound stage Therefore, while she did audio, for she did kind of internationalization, but she was a mixer for for films.
Guest 2
And she was telling me about, like, internal tools and stuff. And it all just seems like, it is a big, big system. I I can't imagine The kind of structure that it would take to manage that many employees and that many, different goals that a company could have.
Vu builds CMS tools on legacy systems using modern stacks
Guest 2
So you you work on an an internal
Guest 3
CMS. Is that is that correct? Yeah. I I do. So my focus has been at least on the 2nd team that I've been working on for Majority of my time at Disney has been since pretty much focused on CMS. So, like, we Like, you know, the fur one of the first tools that we was working on was, like, a plan a tool for managing, kind of OTV. You know, like, if you have, like, a Roku or you have, like, those, smart TV devices. You know, we there's apps like ABC News app.
Guest 3
So the Mhmm. A lot of the producers need a way to kind of program that content, so we have We kinda build the interface and work with, other teams to allow them to kind of manage, kind of, like, the the The carousel and the what you can choose and what's what's a featured, content.
Guest 3
And then from there, it's, Yeah. That's so that's kind of where that's been a primary focus in my work. And then, you know, National Geographic is part of the Disney portfolio. And, You know, when we acquired them, we had to move them off of
Guest 2
their existing platform and kind of, like, get them to use our our current tools. So Wow. Yeah. And I'm sure it's a massive amount of content. You know? It's a massive massive MCMS. It's a massive CMS. This is a amount of content. Yeah. So, like, let's talk a little bit about, like, the, the tools that you used to build this thing. Is this all custom? Is it based on something?
Guest 3
Okay. What types of languages we working with here? Yeah. It's it's all custom. So I think one of the things that, like, work I found, like, working at their company, you know, you're When you're coming on board, you know, some of the decisions and especially with technology that's kind of been decided before. So we're using a like, our own proprietary, CMS, for managing content, which I think it's at least at least it was it existed before I joined.
Guest 3
And then we, you know, we have, like, our own UI that's built, just with React.
Guest 3
And we also use GraphQL. So, like, the CMS portion, like, of that we the service. You know, that's old, but we also you know, Disney has been at least in our team, we use, like, a GraphQL as a layer over it. So we're able to kind of interact with existing APIs, but also we're able to u utilize, some of the newer technologies. So the GradKey Audit portion has been super beneficial, just for all the different teams, especially with all the different services that we interact with.
Guest 3
But at the same time because the CMS that we're interacting with is, You're used by so many different other services. We can't fundamentally change something, like, overnight just because they're other you can have some downstream effects that are being used by other
Guest 2
other products. So I'm glad you said that the GraphQL implementation is beneficial because we've talked a little bit on here about, you know, GraphQL feeling like Overhead in some situations, but the situations that I'm I'm personally feeling like GraphQL is overhead and are small projects. We're just straight up doesn't need it. But it feels like in something where you have so many different UIs consuming the data, you have so many different inputs and outputs there. GraphQL Well, probably seems like the like, that seems like the ideal use case for GraphQL in a system like that. Do you have, like, a a Do do you know if you have, like, a federated GraphQL API? Is there, like, 1 GraphQL API? Is there many different GraphQL APIs? We have, many GraphQL APIs, but we use a fed we have, that that federated. So we have, like, another team that handles, like, federation.
Guest 3
So we're able to, Like, interact with other services, hydrate.
They use federated GraphQL APIs
Guest 3
So that's been, like, super helpful, especially since the CMS interacts with different services, like, you know, taxonomy, image.
Guest 3
We're able to kind of, have that all federated.
Guest 3
So that's been, like, super helpful, especially for a lot of the back end teams. Yeah. That's wild because we had,
Guest 1
Philippe Ferreira who works at Sky, which is another large media company that has lots of streaming platforms. And he said the exact same thing, like, we have so many different things, and they all need to be put into 1, and that's why we use GraphQL. We don't use GraphQL because, like, obviously, it's good that we get. You can request only the data that you need, and it's it's a single request and you can send mutations and and whatnot, but we just need a single layer that is Sort of standardize on it.
Guest 1
So it's it's kind of cool because we did not book these interviews knowing that they Both were doing this. We booked them totally separate.
Guest 3
It seems like 2 large media companies are are doing kind of the same thing In terms of a a single federated GraphQL API. Yeah. As I've mentioned before, like, you know, just because we're working with such older tools and APIs, it's It's kind of one of the things where you can't, you know, we can't make this these decisions that have been made prior to us, you know, where we can't easily change it. So it's super helpful just be able to, like, have that layer, for for our, for the products and future requests. Yeah.
Guest 1
And what about, so the the CMS itself, what is what is that built in? Like, what's the stack of that? So I believe that's built in Java. So it's a Java
Guest 3
Service. Okay. And that that's the thing that's been around for forever much way before you came. Right? Yes. Yeah. I can't put a number to it, but I think it's been for a long time.
Guest 1
It's been it's been used to power a lot of the Five sides. So what is it that you're building then? Are you building, like, in React? Are you building an actual UI to talk to that CMS, or are you like, what are you building with React? Yeah. So we're building a UI that interacts with
Guest 3
that CMS.
Guest 3
I think more More recently, I think what we're working on now is, you know, I've been focused or at least the team I'm on now focuses on editorial tools for ABC News.
Guest 3
So we're building kind of a new UI for them. Because right now, they're they're currently using an existing system that interacts existing UI that interacts with the CMS, We're trying to get them, on more of an updated, like, newer, UI. So, that's what our team works on. So billing's, Like, allowing, you know, the producers or editors to kinda update content, publish, upload images. It's all that sorts that comes with the CMS.
Guest 2
Oh, that's cool. Wow. So, like, for, like, your design system and elements types of things, that you're working with, Are are you guys using anything specifically? You have your own internal design system? Since it is like a CMS, it's not like it it has to be user focused.
UX focused on usability for complex workflows
Guest 2
Is is it on brand, so to say, or is it just something that looks generally nice or bootstrappy or whatever? I think Whereas we do, like, it looks
Guest 3
it's nothing like I mean, if you were to use a tool, I don't think anyone would, at first glance, would immediately recognize it. Oh, this is a Disney tool because You'd see, like, Disney icons and such. It's it looks more of, like, what you imagine most Goofy's hanging from the the net menu or something like that. Yeah. Yeah. Yeah. They like that much. Bread bread Breadcrumbs system.
Guest 2
Yeah. You know, mice, they like breadcrumbs.
Guest 3
Yeah. Oh, that's a good one. There's so many things that could be done there. Yep. Yeah. Yeah. You think that'd be the case. At least I mean, maybe it could be totally different on some other portion of Disney. But for us, it's very more simple, kind of very clean interface as as for designs.
Guest 3
But the focus, at least with building internal tools, is, you know, we're trying to Straddle you know, allowing the user to do something complex, but at the same time, keeping it simple, but not you know, you don't want the user to kinda also trip on themselves. So we're also Having to design these tools, keeping in mind that, you know, we wanna build stuff that's very similar to how users use other tools or Navigate the web. You know, there's a lot of patterns that are kind of preexisting that they're kind of used to. So we have to kinda keep that in mind, with the you know, that's what the designers are kind of keeping in mind when we're working with, designing such systems. Yeah. One time I I've, like, recently been working reworking a lot of my CMS, like admin
Guest 2
forms and tools and content tables and stuff like that for our platform.
Guest 2
And the the first thing I did when I was redesigning them was I went to WordPress's back end, and I just started looking at what am Not doing that. WordPress is doing because everybody knows how to use WordPress.
Guest 2
Are those the types of thing do you do you have somebody giving you Design inspiration. Do you have designers for this CMS, or is it sort of like there are just patterns that you
Guest 3
are All working within. We have designers. So, fortunately, you know, we work with a really great product team, and then we have a part of the product team has we have some a designer we work with, and, you know, they're, you know, able to provide us with, like, mocks for, like, different workflows and trying to figure out, like, what the user is Trying to, like, what their pain points might be and how we can improve it.
Guest 3
So that's yeah. Luckily, we're able to work with them closely and try to figure out, like, really open, solutions.
Guest 1
What about like, let's talk more about the react stack that you have. So these components that you're building, people ABC News, they can Slide and drag or whatever and and decide what goes into the carousel. Like, I'm picturing it for me, and I sit down, I turn my TV on, and I I see the featured things that are up, and I I I often think about that. I'm like like, who this in somewhere, there's a room When somebody logged into a CMS and they're saying, alright. We need to, I don't know. What what's a ABC News show? They wanna do this on whatever show that this good morning, America. So good morning, America.
Guest 1
There's some guy in a room somewhere with the actual CMS.
Guest 1
Is that in the Java CMS, or have you built an entire UI that just talks to the CMS behind it? And and if so, what is that entire thing built in? Yeah. So it's an entire UI that interacts with that Java,
Guest 3
CMS. And, that's built Yeah. It's like built in React. You know, that's the you know, we use React.
Frontend built in React with component library
Guest 3
We have our own component library that we, use for the kind of to manage all the components, to build the the the tools. But it's pretty simple. Yeah. We, you know, we keep it's And it's a static asset that's been pushing up. So nothing we're not running anything server side. You know, for us, we don't necessarily need to worry about, you know, SEO or being able to, like, especially that's where the kinda differentiates, you know, if you're talking to some or the teams that work on The client sites, like abcnews.com or, like, national journal or disney.com, you know, SEO, there's a big significant, focus on that. But for us, that's not the case, so we don't really have to worry
Guest 2
about having, stuff server side rendered. That's actually that seems like great because So it feels like so many of the problems on these UI frameworks come up once you have to get into the server side rendering and hydration and making sure that all matches. And so the the fact that you get to stay in CSR land is, probably advantageous for you guys. What felt like, versions. I I know people who work in React code bases that get pretty large. They have a hard time keeping up with What versions are they're working on so then they end up having to go the micro front end route where, you know, different teams are working in different versions of React. Is that Something that you have all hit, or or do you get to just all stay on 1 version? And if so, like, what kind of version are we working with?
Guest 3
Yeah.
Guest 3
So we are working, I think, the most current version of React. We're actually very our team is very, like, pro or good on staying on top of updating our packages, because, you know, you know, if you're working in jobs, it's like your packages updates, like, every almost every day. So, you know, we put a Pretty big focus on making sure part of the app experience is also maintainability and making sure things are up to date. So, Yeah. We do put we do cut time aside in addition to building features to keep our package updated. So if React, I believe, last time I checked, we should be on the most At least 18.
Guest 3
Definitely, I think it was that the most recent version of React. I think that's 18 something at this point. Yep.
Guest 3
Yeah. So we're on the most recent version and then packages as well. You know, we we try to stay on top of it. Otherwise, you know, if you end up having update, you know, a year later and you haven't done any updates, It becomes
Guest 1
a huge, you know, like, a bigger headache. Yeah. I've I've been there many times where I have to just YOLO update the whole thing, and You spend the next 3 hours going error by error trying to figure out what did change.
Guest 1
What about, Any any TypeScript in the code base as well as well or or JavaScript? What are you using? Yeah. No. No TypeScript.
Guest 3
I think when we started the project, we just Never decided to go that route, and I think I don't know if part of it was maybe and we have, you know, Other, you know, contractors I work with. So I don't know if it's maybe, like, onboarding, if they're not familiar with with TypeScript.
Guest 3
Maybe it's like a learn learning curve. But, yeah, we've Haven't really put the time to do touch screen. Although, for us, you know, one could argue maybe we're putting our time, you know, for testing. So, you know, for us, Yeah. It's really important that what we're shipping is really reliable, especially with these tools.
Guest 3
If we use ABC News as the example, and your editors need to to edit, you know, especially like a breaking news and be able to publish, and they need to be able to No kidding.
Guest 3
Yeah. Have reliable tools. So, we Kind of our focus is really on, you know, keeping our packages updated and having really good well written tests, with all the new features that we push out. This episode is sponsored by 2PL. 2PL is the screen sharing tool dedicated to frictionless
Guest 2
remote pairing.
Guest 2
We all know that the things that are a huge pain when trying to pair over Zoom or or Google Hangouts, like a a high latency sharing or Really bad resolution or just in general clunkiness in the u watch. I just wanna show you this code and have you look at it while we work through this together.
Guest 2
Well, with Tupelo, you get access to 5 k screen sharing without destroying your CPU.
Guest 2
Zap is extremely performant.
Guest 2
Also, you get the ability to have very low latency screen sharing as well. So just without you noticing, you can get five Hey. Screen sharing and low latency.
Guest 2
So that way, you can make sure that everyone's on the exact same page. So if you want to try this tool out, Head on over to tupold.appforward/ syntax. That's tuple.appforward/ syntax, And give it a try today. This thing very well may solve all of your pair programming woes. Do you do you personally get into any of the testing stuff? And if so, look, what kind of Cool tools are you using for testing?
Guest 3
Yeah. We I do. So we do as far testing, you know, we unit test, we use, React testing library. So it's been, like, We're really big fans of using that as a testing library. It's very good. And then we also have some and then tests, you know, using, like, puppeteer to kind of, like, Start up the app and then kinda go around clicking.
Guest 3
And then, you know, we have our, you know, QA team as well that helps that helps us, with additional testing. But as far as writing, like, test, it's, just React testing library. I'm using, Jest as the, I guess the framework is what you call it or the runner.
Focus on testing for reliability
Guest 3
But I'm hearing get some good things about Vite, though. I think we would like to try using Vite test on these days. So Yeah. Yeah. It's fast. It's fast.
Guest 2
And you know what? We we came from we came from a a just land and were able to move over To the v is I think it's v test is how they wanna say it.
Guest 2
Yeah. V test and I didn't have too many issues.
Guest 2
That said, my code base is probably considerably smaller than anything that you all are working with. So, That said, it it's comparable. I mean, you know, you don't really have to switch too much, and you get some perf gains. So who knows, what that might look like The short term for for a large old larger company. What about, like, client side GraphQL stuff? You're using GraphQL. Are you using, Apollo or a different GraphQL client side? You're doing,
Guest 3
something interesting. We're using just Apollo.
Guest 3
I think Apollo client, Billy is what we're using. Yeah. So, yeah,
Guest 2
works really well for us, and, yeah, we like it. Yeah. So so super tried and true. Yeah. Works, works, works. What about,
Guest 1
CSS For writing the actual components, are you doing CSS and JS, Tailwind, something like that? Yeah. We're using CSS and JS. So our, Our component library is based on,
Guest 3
Team UI.
Guest 3
So it's another, like, pretty another, like, comp UI library that And, that just uses CSS and JS. And from there, we each kind of build our components. So that's how we do styling, For a lot of our components.
Guest 1
Oh, why? I don't know if I've I've seen this one before. Yeah. You guys have, like, a whole design framework where you have, like, what, cards and, reusable inputs and things like that.
Guest 1
And then you just Every time you need a piece of UI, you don't go and make your own divs and whatever. You just reach for one of these existing components?
Guest 3
Yeah. We so We have, like, a base foundation components, but, yeah, we kind of build on top of it. So for you know, we might have, more complex components We're rendering, like, a list of results or something or even things like toggles, that, for our custom specifications.
Guest 1
Oh, that's cool.
Guest 2
Yeah. I love that stuff getting into how other people do these types Of design systems and at the end of the day you're just building out like, reusable patterns reusable scoping kinds of things. How Granular does it get? Like do you have a paragraph element so to say? Because like we have a paragraph element or A, a header element. When you want to just do a normal paragraph text, is there a is there Such a thing in your land as using a standard HTML tag, or are you always using
Guest 3
a element from the design system? I think it depends, like, some common I guess for us, like, when it comes to, the key tag we're using, I guess we are using kind of like a component already That's, that hasn't been styling for it.
Guest 3
So, yeah, I think everything we can reach to, it's it's usually derived from
Guest 2
A component. Yeah. I like that kinda system.
Guest 1
I I do that as well. Just like you said, a whole bunch of base CSS. You obviously aren't gonna make a component.
Guest 1
Well, people do do it. Like, what was the what was the, like, React Native web? Was that it? Where, like, you literally don't use Any HTML elements, you use a 100% custom React components for everything. The reasoning behind that is so that You can go to react native really, really easily.
Guest 1
But like if you are using the web, like we have those bases built in. Right. And you you should be able to just use them. Wes, I'm kind of doing that myself.
Guest 2
I hardly use any normal it I have a it's a p it's a capital p tag. Have a capital p. Yeah.
Guest 1
And what does that do?
Guest 2
Just has base styles. That's it. It just it's Scoped base styles to the p tag. That's it. CSS properties. That's it. Yeah. What's the benefit of doing that over just, like, setting a Based font size on your HTML tag? Because it enables us to think outside of the the p tag. Right? You can often use A paragraph tag to do several different types of text, but, yeah, not all p tags are the same types of text. And, really, you could think about it as It could be the exact same as I have 1 p tag and 1 p tag with a class that is, like, you know, Like, bold bold, larger paragraph, whatever you might call that. Right? Like an emphasis paragraph.
Guest 2
But for us, that would just be a different Tag.
Guest 2
So it's like if we wanna have paragraph of text, that's the capital p tag. If we wanna use another Type like a subheading that's not an h tag. That is like a paragraph text. We would use our our subheading tag or whatever.
Guest 1
Oh, yeah. And It's just for scope. Yeah. Another benefit of that would be if you ever have to take those components outside of Your base you your styles come along with that component. Right? You could render that literally, you could probably render it on my website, and it would look the same.
Guest 1
Yeah. Probably. Yeah. Well, what are you using Storybook or anything like that
Guest 3
to to test all those components? Yeah. We are actually using Storybook to kinda help, isolate, when developing the components. So I used Storybook and, a bunch of these, like, the add the plug ins and, super useful.
Guest 3
You know, just the like, really testing is in isolation before,
Guest 2
before, like, kind of, like, using it within the app. You build an isolation at all? Like, are you building in Storybook and then
Guest 3
integrating into the app? We do. It depends. I think in some cases, you know, we can if The component we're building can be worked on independently. Like, if we need, like, a date picker, we could do that independently. And then, as part of, like, another Task, we can kinda integrate it. But sometimes we have to kind of be able to develop, like, side by side. So, like, be able to, like, have, your component library running, you know, with with while you're running your local environment for the app and just being able to see change like, being able to see Just kinda see the integration works. So it just it really just depends, on what you're working on. So, yeah, I think I think sometimes the hardest part is just having like, I mean, it's Our design or sorry. Our UI library is like its own package that we push up. So it's like you have to get to The whole npm link and being able to, like, make sure everything's, like, connected and set up.
Distributed team working remotely
Guest 2
Npm link is, one of those things that It's so easy to go wrong, I think.
Guest 3
Yeah. I don't think we use NPM link. Are you using, like, PNPM or, yarn or or just regular old NPM? I have to see. I've I'm not really sure what we're using for that. I think we might have I know we're using Docker and, like and there's, like, Yeah. We have that's somehow underneath the covers and, like, we have a couple people on our team that kind of really focus on, working on that stuff, enjoy it, so they Allow it. Yeah. Make a home open by the
Guest 1
Somebody else figures it out, and you just run NPM start or whatever. You don't care what it's using.
Guest 2
Exactly. I wish I had that, honestly.
Guest 1
Somebody else could worry about it. Little bit jealous of that. That's nice.
Guest 3
At does Disney let you work from home, or are you in the office, or how does that work? Yeah. I'm remote. You know, I mean, like, some of our It's weird. Like, before the pandemic happened, you know, we were already we're a distributed team already. So, like, yeah, we were already On Zoom calls anyways, so a lot of my teammates could be working. Some of them are on the East Coast.
Guest 3
Some are like, one's in Ohio, one's in Michigan.
Guest 3
Couple of us are here. I guess I didn't say where I'm from. I'm I'm from California, I guess, specifically, like, just the Los Angeles area, but rose mead to be specific.
Guest 3
And then, yeah. We're all distributed. So for us, it it makes kinda sense for us to be remote,
Guest 1
already, so because we're just so distributed. Yeah. Do you do you ever have to go in is there an office in in LA for Disney? Do you ever have to go into that? There is. No. Not at this moment.
Guest 3
There's I think when I was going to office, this is, like, way, you know, before the pandemic. This we have a office, a couple offices in Burbank Glendale. That's the head where the headquarters for Disney is.
Guest 3
But, yeah, I haven't really had to go into office. It's been a while. I think the last I went to office was just to grab My things, since the, you know, lockdown, I think it's the only time I was able to go back with stuff.
Guest 2
Yeah. What what are your feelings on it? Is that gonna change, or is gonna stay the same? I just saw Elon Musk said you got, like, one day to get into the office. Otherwise, you're you're toast.
Guest 3
Yeah. I think you know, I It's I know Disney's official stance, it's it's really you know, they have, like, a flexible work policy, and it really Depends on the team and your manager. So I think it's just it's really gonna really come down to the teams, you know, not you know, some Some work may make more sense to be in person. Other work may not. So I think that having that flexibility and and hopefully I mean, right now, the LA offices, at least The ones I would go in aren't even available to go in.
Guest 3
But I hope for yeah. So it's I mean, Remote is not for everybody, but at the same time, you know, being in person is not for everybody. So, hopefully, that flexibility is, like, a lot it's that flexibility is great for, To accommodate for everybody. Yeah. Yeah. I mean, it
Flexible work policies up to teams and managers
Guest 2
the type of thing that, like, today, you got a sick kid or something or whatever. It could certainly be a huge plus. My kid had to get picked up from school the other day, and my wife was at work. So, you know, working from home gave me the ability to go Go over to schools, pick them up, and it was you know, that that's the kind of thing you think about, like, 5 years ago, whatever. If you're sitting in an office, It'd be a lot harder to organize little life emergencies that just sort of pop up. So, yeah, hopefully, you know, Hopefully, the world stays this way in terms of giving everyone this flexibility.
Guest 1
It stinks to hear that, honestly, that some people are being Totally forced against their their will to come back into the office. So that that's great that you get to do that. Whenever I talk to people that work at cool companies, I'm always just like, like, what is that like? You know, like, I remember before the pandemic, I sent a tweet out and I was like, show me your snacks.
Guest 1
Just I just wanna see the snacks, You know, and somebody who worked at Starbucks posted a photo of their break room, and it's like a freaking entire Starbucks. And then he says, we also have a real Starbucks in the basement where we can get whatever we want. I was like, oh, that is Did you get cake pops? I'll get cake Pop. Yeah. What other other kinds of stuff they have? This it's just so cool. But, like, what what perks do you get at Disney? Do you get do you get free Disney plus?
Employees get Disney Plus bundle
Guest 3
Actually, we do. We we that's actually recently became a thing. We it wasn't, at the time, it was like you could choose as a Disney employee, you could, you could choose either getting, like, the main entrance pass that allows you to go to the parks for free, or you could choose, a Disney The Disney plus bundle, which at the time, it kinda sounds weird. Like, if you're gonna choose, like, one seems to be more valuable in terms of monetary. But, you know, there's some of us that don't work or live Near, like, the parks.
Guest 3
So having that decision makes sense. But as of this coming year, we actually will get, The the bundle is part of,
Guest 2
our my perks. That's awesome. That's neat. Yeah. I know my my friend who work There would get, because she had to be in office all the time. Right? She worked on the soundstage. But in her office, she would get to, like, pick out artwork for her office, and that was all original self self drawings and paintings from the old animations. And she could just go to Some vault within Disney and say, I would like this framed one in from this movie. What movies are you interested in or whatever? And she could Put the stuff that she wanted on her walls. I thought I thought that was pretty neat. That's pretty cool. Yeah. I wonder I feel like there's probably like I said, like, I
Guest 3
Yeah. This is a big company. Someone it'd be interesting to be speaking to somebody else and, like, what, you know, what they're, what they are able what kind of perks they might have. I think people who work at Marvel. I've the Marvel, building must be super interesting, like, just to be in there and see all the The different merchandise and products.
Guest 1
Before we switch into the next section, is there any technical stuff that we didn't touch upon that you like to talk about? Just in terms of, like, demystifying me, it's it's like building
Guest 3
you're just building an a tool, you know, for and it so happens, you know, our Our clients are, like, under other Disney employees. I think I think one of the tricky things about working, at least a big company and building internal tools, is, like, you're, Like, you're you're having to, like, work in a particular environment where, you know, you have different teams that are also, You know, doing different services. So you have to, like, kinda work together.
Guest 3
It's but it's, it's like that's kinda like How it goes. Yeah. So you can't, like, you know, simply just make a huge decision. You know, there's a lot of, like, ripple effects, and you have to be very conscious of of in In terms of, like, what tech stack you go with and, this is a lot of team communication. I think that's what it comes out to you. That makes sense. I I love hearing that because
Guest 1
A lot of times, people think like, oh, you can just literally pick whatever you want. And if you're using some framework that is was popular 6 months ago but no longer is, That's not how real world works, especially the larger the company.
Guest 1
It's neat that you can do things like put it in just Slap an entire GraphQL layer on top of, stuff that has been around, and you're able to move quickly and build modern applications with React while still,
Guest 2
sort of working within the constraints of of what a large company gives you. Totally. Alright. Let's get into the part of the show where we ask you the supper Club questions. These are just kind of in general web dev questions that we ask everybody.
Guest 2
So first and foremost, what kind of computer and what kind of keyboard do you use? Definitely. So I'm using I believe right now, it's a 2018
Vu uses MacBook Pro and custom mechanical keyboard
Guest 3
MacBook Pro. So I haven't made the switch to the, The, AMCHIPS. Although, I'm I'm supposed to do it for a refresh. I actually need to do it. I've just been, been I've been trying to put that off because The setting of a new work machine means new permissions and all of this sort of things. So, eventually, I'll get around to it, but I've heard good things, about the new machines.
Guest 3
And as far as keyboard, I'm using a mechanical keyboard, made by Glorious. It's the Gmmk, Pro.
Guest 3
It's a custom mechanical keyboard. Let me take a look. Yeah. I mean, I I'm not, Like, super into keyboards. Like, this was more of a COVID project. I had a mechanical keyboard from some other brand before, but I decided to, like, Just make my own, use my different switches, and, that was enough for me as far as, like, the customer key. Because that's a huge rabbit hole. I the fact that people own multiple Multiple keyboards is like, I'm 1 keyboard. I I don't know how you own multiple mechanical keyboards, and it's it's expensive Hobby too if you own that machine. No kidding. Works. So Yeah. Yeah. No kidding. Yeah.