Skip to main content
  1. Blog
  2. Article

Johann Wolf
on 27 April 2026


Hi, I’m Johann! I’m an engineering manager in Canonical’s web team.

For the larger part of my 15 years of work experience as engineer, I’ve been working in web development. Like many software engineers, one of my first software development experiences started with creating my own web page. Since that time almost 25 years ago, a lot has changed in the web landscape. I’d like to take a moment to reflect on what I think makes web great!

Accessibility

One thing I appreciate tremendously about the web is how accessible it is. Almost any device with a screen can be used to consume from the web: blogs, social media, productivity tools, games, media streaming, and everything else. There’s a universe at your hands, requiring only a browser to access. Projects like ChromeOS, which uses the browser as a desktop environment, reflect how wholesome the experience on the web is.

This ease of accessibility is invaluable for everyone: it greatly lowers technical barriers for consumers, and gives developers the most effective way to distribute their work.

Quality is key

One premise for being accessible is that digital products are available in the first place, and this accessibility is closely tied to quality. Web engineering is often not only about what happens in the browser, but also what happens behind the scenes: solutions that are designed with the whole product in mind, systems and processes that ensure consistent delivery and prevent downtimes and vulnerabilities.

That’s why I personally see quality engineering and DevOps as very close if not embedded disciplines. In my view, other software developers can sometimes get away with more forgiving ways of distributing their work: if the current version of a program is buggy, users may simply install an older version. Also unoptimized, unsecure applications often don’t pose a big problem.

With Web Engineering, however, it’s the opposite. The presence of bugs or performance bottlenecks are major concerns for web developers. Users will be stuck with a new buggy version of a web application. The inability to serve web content due to security incidents, high traffic, and/or performance bottlenecks is of great concern and can have tech companies lose face and their revenue. 

Therefore, I see the consistent, frictionless delivery of secure, performant quality software as a core aspect of web engineering. Considerations for scaling large, critical frontend projects led to architectures such as micro-frontends, drawing a parallel to advancements in backend development.

Drive for innovation

In web engineering, there’s a very interesting friction that can be experienced between the core technologies HTML, JS, and CSS, and the tools, libraries, and frameworks that complement it. 

Quite a few years back, the available core browser technologies just weren’t enough to get the job done. Worse, browsers didn’t align much on standards: a web experience on one browser might be different – or even outright fail – on another. To get around these shortcomings, web engineers needed tech like jQuery, SCSS, or Babel to create in-depth, beautiful, and refined web experiences.

Nowadays, the core technologies are powerful enough by themselves for developing complex projects. What’s more, the compatibility of different browsers is normally not a concern anymore, at the worst, browsers may only suffer feature lag.

But what’s most exciting, I feel, is how it’s no longer a case of HTML, JS, and CSS catching up with innovation in web engineering: we’re pushing beyond that, to where the core technologies and web standards we spent years patching up are now intense sites of cutting-edge innovation. For example, web components will likely bring new dynamics on a stage dominated by React, and WebGPU will open the door for new classes of applications in the browser.

Back to basics

Web engineering involves a lot of tech. I know that almost goes without saying, but I find that it’s a very exciting aspect of the field. There’s so much more besides CI/CD and the core technologies, libraries, and frameworks: modern web engineers get to lose themselves in the browsers with their own engines and capabilities, accessibility, REST APIs, networking, cloud, often a good portion of backend development. Often, what the users interact with is just the tip of the iceberg.

I’ve already talked about HTML, JS, and CSS, and how they have played their vital role in advancing web functionality and UX; but they’re even more exciting today because they are so feature rich and flexible to allow for dozens of valid ways to solve a problem. And with new capabilities, we get new ways to entirely re-think or revolutionize existing solutions: ever thought of implementing a nested dropdown menu purely in CSS?

One of my favourite parts of the job is thinking about how to solve a problem in the most elegant, efficient, and user-centered way: just thinking about a solution with the most elegant usage of HTML, JS, and CSS stimulates my engineering mind!

Canonical’s web team

Working as engineering manager in Canonical’s web team brings me also to reflect on what makes web engineering great at our company. Perhaps the most exciting aspect is the diversity and richness of the work we do – a feature that boils down to the design of our team structure.

Our web team is structured in tribes, each working on their own projects. This makes for a great breadth of project types that you get to work on, each with their own unique and refreshing technological challenges. While all tribes work with great focus on their own projects, there’s also plenty of room for interacting with web engineers of other tribes and exchanging experiences and knowledge.

We’ve also struck a great balance between building on top of our tested, proven tech stack and having free space for experimentation with new technologies. This supports us in carrying out great work while doing state-of-the-art web engineering.

If you would like to find out more about the team please read our blog and description of the team. We’re always looking for great new talent!

In short: web engineering is great – and even more so at Canonical. I’m excited to see what the future web landscape holds for us!

Related posts


Lyubomir Popov
23 June 2025

Improving our web page creation workflow: how structured content is slashing design and development time

Ubuntu Article

Co-authored with Julie Muzina A year ago, during our Madrid Engineering Sprint, we challenged ourselves to dramatically reduce, or even eliminate, the need for constant design involvement in the day-to-day creation of web pages. Our strategy for achieving this is based on a smarter, more structured approach to content. The challenge: brid ...


Miguel Divo
22 May 2026

Decoding design: How design and engineering thrive together in open source

Design Article

Open source thrives on engineering-driven processes. Fast feedback loops, terminal tools, Git workflows: they’re the lifeblood of how we build software in the open. But for software to truly excel, we need to create user experiences that empower people to use them. I wanted to bring this conversation into the spotlight as part of Canonica ...


Miguel Divo
13 February 2026

From inspiration to impact: design students from Regent’s University London explore open design for their dissertation projects

Design Article

Last year, we had the opportunity to speak at Regent’s UX Conference (Regent’s University London’s conference to showcase UX work by staff, students, and alumni), where we engaged with students to make them aware of open design and their ability to contribute design skills to open source projects. The talk sparked great discussion, and we ...