12 May 2025

“It’s about […] making sure they’re not sitting in two silos” – bridging the gap between creativity and technology

Arkadiusz Kowalski

13 min read

How to help a modern frontend developer work on their skillset? How do technical skills and creative skills come together to produce the most efficient combination for driving business value?

Shell’s Principal Engineer, Billy Stagg, answers these questions and more. His perspective on the interplay of design and engineering will inspire you to rethink how you approach the whole lifecycle of product development.

The CTO vs Status Quo series studies how CTOs challenge the current state of affairs at their company to push it toward a new height … or to save it from doom.

“I'm bypassing Figma directly into code, building stuff and working with the browser as my canvas.”



Today’s guest believes that creativity lies at the heart of both design and engineering, and that you can’t build highly polished products without combining both. Plus, if you mix them well, you’ll be able to ship faster than ever. Find out Billy Stagg’s insights on building well-rounded, successful product teams. You’ll learn:

what skills are necessary in the modern frontend skillset,

how to help designers get into engineering and vice-versa,

why there should be room for both generalists and specialists on product teams,

how to combine design and engineering to speed up product development.


But first, find out more about Billy.


About Billy

With a rare combination of design and engineering experience, Billy bridges the gap between creativity and technology to ensure a balance between customer needs, business goals, and seamless delivery. After spending almost two decades mastering UI and UX at various companies, since 2021 he’s been the Principal Engineer at Shell.

Meet Billy



Arkadiusz Kowalski: Hello Billy. How was your trip to Amsterdam? I heard you were organizing a hackathon, can you tell me a bit more about it?

Billy Stagg: Hi Arek. We arrange hackathons a couple of times a year to give developers a chance to work on something new. For example, last year we used it as a way for developers to learn how to use our new platform. This year, we looked at large language models. We built tools between LLMs and our applications to see how we could use them within our UIs.

Creativity and technology



Your experience is really diverse. It seems that you thrive at the intersection of design and engineering. Combining creativity and technology is what I want to focus on in this interview. In your experience, how do you see creativity and technology influencing each other?

You can't have something that's well engineered but nobody can use, and vice versa. I’m predominantly frontend, and I think it’s a marriage of both creativity and technology. For me, it makes sense to combine the ability to be creative and technical knowledge. You can't choose one over the other. I'd feel like my hands were cut off if I wasn't able to do both, which is ultimately how I got into engineering.

Some people believe that technology is purely logical and creativity is abstract, though. How do you reconcile these different domains in your work?

Design is about communication. If you're building any type of interface, the main thing it's got to do is communicate back to the user the state of the interface. You need creativity to do that.

Take a loader, for example – it’s not just a visual thing. It serves a purpose, which is to inform the user of what's happening within an interface. That’s why I think that logic and creativity go hand in hand.

Especially when we talk about UX design, it's highly logical. If it wasn’t, we’d lose the user somewhere within the application. So we have to combine both, right?

Yes, and I think that design decisions also impact the technical solution. If a designer isn't aware of what's happening technically, then you lose efficiency on the engineering side.

When design is informed on what's feasible technically, your team can deliver more efficiently. I think the opposite is true too – without engineers understanding the design side, they may not empathize with users and build the wrong tool in the first place.



What do you think is the most common misconception people may have about the relationship between creativity and technology in the modern development environment?

I'll happily code just as I design, but I don't think we should expect the same from everybody else. I think it's good to be T-shaped, that is, to combine broad knowledge with deep knowledge in one area. There's always a place within teams for both the generalist as well as the specialist.

When I think about the types of people in my team, some are really good at discovery and empathizing with users. It’s their passion, and if you've got a passion in an area, that's where you tend to shine. Whereas for me, I understand it enough to be able to know what happens in that area, but it's not where my knowledge goes deep.

Having different types of people helps your team to be more well-rounded.

Modern frontend skillset



Modern development requires a wide range of skills. We saw a clear push for full-stack frontend developers in our 2024 State of Frontend report. There’s a shift from specialization to being T-shaped, isn’t it?

Yes, and I think it’s been pushed upon us a little bit. Previously, you had a dedicated backend engineer working in something like PHP or Ruby. We went from that to single-page applications around the time React and Angular came about. You had lots of people doing frontend and building really fluid experiences.

Then, because of the pitfalls of that approach, we started moving slowly back to server-side generation and server-side rendering with frameworks such as Next.js or Gatsby. Suddenly, people that were just doing frontend were moving into the backend because of those frameworks. They started naturally learning more full stack. 

I guess there's still a place for someone that's just doing frontend, but the way that the technology is moving means that even those people are full-stack now. They might not realize it, but it is that way because of how the frameworks we work with have evolved.

Let’s say that a developer is satisfied with their skillset for now. How can they stay relevant or even advance their career as the landscape evolves? Should they rely on their superiors to help them find a path to growth, or should they take more ownership of their career?

I think it's a bit of both. Your superiors have their goals which direct the work you're doing. At the same time, if you want to grow in an area that you’re passionate about, I don't think you should be limited by the direction your superiors have set. You should also make time for what you love doing. That always seemed to work well for me.

If you see value in a technology that you’re passionate about, then learn it. I think that sometimes you need things to come from the ground up, not the top down.

Most new technology comes in from passionate developers working with something in their free time. Managers with a holistic view of the landscape might be missing the stuff that you’re seeing.

When you’re passionate about some kind of technology, should you focus on using it for side-projects or try to inject it into your company?

That depends on the context. In an enterprise setting, you have rules regarding what technology you should and shouldn't be using.  There are lots of considerations that you have to think about when you're bringing a new technology to the table – especially resourcing for it. You need to consider if other people on the team will be able to adapt to that technology.

For example, I was playing with SvelteKit. It was a lovely experience using it on a personal project. But I don’t think I could bring that into the enterprise because few developers actually work with Svelte. By introducing it into the landscape, it could be hard to resource it.

Still, I certainly don't think that you can't change things. You can introduce a new technology and you can show its value. There are opportunities to do so. You just have to consider the wider implications of what it is you're introducing.

I know that you’re experienced with and passionate about design systems – just like us. We even created the design system acceleration sprint to help companies get their systems together. Speaking more generally, is learning about design systems something development teams should prioritize today?

Design systems are a great example of how design and engineering come together. They give boundaries to designers, which ultimately makes whatever they create easier to build when it gets to development. The components, the design, the theming, the rules – everything's there, ready to use. It helps both designers and engineers. You're able to deliver something that’s more delightful, more polished, and nicer as a result.

Billy Stagg

Shell’s Principal Engineer

I think that all teams should have design systems because it's the language that glues the two together.

Managing your developers’ skillset



As an engineer experienced in leadership, how do you think tech leaders can facilitate a culture that fosters both creativity and technical excellence in the team? 

Get engineers involved earlier. The key thing that any product team wants to do is get the product in the hands of the user. To do that, you need to build it, you can't just design it.

The earlier the engineers are working closely with designers, the quicker you're going to get stuff out the door because it's going to be feasible straight away. You're not going to validate a load of designs and prototypes which turn out to be too difficult for engineering to build.



Imagine you’re the leader of Billy Stagg junior, who has potential both in design and engineering. How would you nurture both?

I see it a lot. Whether you're engineering or you're on the design side, you're creating something and solving problems, just in different ways.

A lot of the time, the barrier for designers isn’t that they don't want to learn, or can't. I think they just need to start doing stuff in code. Then, they’ll start to understand the technology, their prototypes will come to life with more conditional thoughts about how they should work and so on.

So, to nurture it, they should just start and then I'd provide mentoring more on the technical side. For example, get them building their prototypes with JavaScript as opposed to just using Figma.

Let’s say that a developer does show a lot of promise in design, but they are needed in a project where they’re going to be doing something completely different, perhaps much less stimulating for them. Is that a problem from the perspective of a good leader? Can you balance the need for immediate project demands with the long-term skill development of your team?

You need dedicated time. Everyone should have time to learn, a dedicated space in their week to progress and build on their professional development. 

Hackathons are probably a good way, you jump in and you can prove your worth, right?

Yeah, we had Python developers jumping into Next.js and learning some of the frontend, which was really cool. Great opportunity to get people to be more cross-functional.

Given your diverse background, would you say that there are some differences in this matter depending on the size of the company? I imagine that in enterprise you have specializations, whereas in a startup you need to be more versatile and do a wider variety of tasks. Is it true, or is it different in your experience?

I feel like I've never really found a place. I'm mainly doing development these days, but I have a design background, so everything I'm doing is like I'm designing with code. Sometimes, I'm bypassing Figma directly into code, building stuff and working with the browser as my canvas. I don't think that a hybrid role like this is well understood or recognized. However, there are a few exceptional design engineers. I think that it's a growing field.

I've always seen massive value from either a designer that can code or an engineer that understands design. It means that you're going to get better decisions at the end of the day.

They can prototype, they can validate ideas, they can get stuff into people's hands. I think pairing design and engineering has always made sense, but I don't know whether many roles exist for that type of person.  When you look at what roles are available, you're either an engineer or a designer and there are very few roles that do both. But those people do exist.

General advice



Given all we've talked about right now, what advice would you give to tech leaders who want to help their developers find the perfect balance between creativity and technology for both their own professional development and the benefit of the organization?

Early involvement – having engineers understand why you're doing something – is key.  Make sure that engineers are involved in discovery. Conversely, have designers understand the technicalities of what it is they're building within.

It's about that collaboration, and making sure they're not sitting in two silos. You don't want a big wall between design and engineering, each concentrating on their own things without collaborating.

I'm a big believer that the team should own a product. Obviously, we have product owners who are the closest to the business and have the final say. But the team as a whole should feel empowered to shape the solution and the product itself.

Resources



Can you also recommend some learning resources, such as books or your favorite influencers, that could help our readers explore this subject further?

I've been a big fan of Wes Bos for ages. He does the Syntax podcast, and I've always pointed people at his courses. The way he approaches frontend is fun. It's very accessible. The Syntax podcast is a great way to discover new frontend technologies and what's happening in that world.

What’s next? 5 strategies to combine creativity and technology for building delightful products



Billy suggests that if you want to build highly-polished products at a quick pace, you should:

Get engineers involved early to increase velocity by ensuring that all designs are technically feasible from the get-go.

Make your whole team well-rounded by including people with generalist skillsets alongside specialists with deep knowledge of key areas.

Allow innovation to come from the ground up by creating dedicated time during the week for people to explore technologies they’re passionate about.

Consider future limitations of new technologies, especially whether you’ll be able to easily find developers who know how to use it in the future.

If you don’t have one yet, create a design system because it’s the common language that glues designers and engineers together.


Neither design, nor engineering is more important than the other. Great products are made from a good compromise of both, with creative thinking and collaboration as the main building blocks.

Authors

  • Arkadiusz Kowalski

    When it comes to business, he strongly favors building long-lasting partnerships and value. Always enjoys meeting new people and coming up with creative ideas. In his free time, he is happy to chat about computer gaming, politics, and social sciences.

Trusted by Saudi leaders. Built to scale with you

free consultation

Build future-ready platforms that align with Vision 2030.

Work with a product development team trusted by Saudi innovators for over 10 years.

Book free consultation

More stories