Mews R&D Check-In with Petr Bambušek

In this episode of the R&D Check-in at Mews, host Jan Meissner speaks with Petr Bambušek, Senior Staff Frontend Engineer, about how frontend engineering and the Staff Engineer role have evolved in a fast-scaling tech company. Petr reflects on his path from early startup “do-everything” work to frontend specialization and later engineering leadership roles, including […]
Mews R&D Check-In with Markéta Willis

In this episode, Jan Meissner sits down with Markéta Willis, our Software Engineer and content creator, to explore her shift from languages into IT, and what she learned along the way. They discuss how breaking into tech is not just about learning to code, but managing the mental and emotional challenges that come with a […]
Mews R&D Check-In with Alex Ratman

In this episode, our host Jan Meissner sits down with Alex Ratman, Senior Software Engineer at Mews and a self-proclaimed observability enthusiast. Alex shares the story of how a performance gap on the customer side led his team to build the first true observability solution for frontend engineering at Mews—moving from being “blind” to having […]
From idea to app in hours: how Windsurf builds full-stack apps with you

I’ll be honest, with so many AI tools, editors, and chatbots launching every day, it can quickly get overwhelming. Sometimes, I just feel like sticking with Copilot and Claude and calling it a day.
The T-Shaped Engineer: Balancing Depth, Breadth, and Burnout

At the time, the term “T-shaped” was starting to become more common in product and engineering conversations. The idea? Someone with deep expertise in one area (say frontend), but with broad working knowledge across many (such as backend, product thinking, security, threat modeling, performance, deployment, etc.). In practice? It meant stepping into ambiguity, learning fast, and finding your own path through it.
Building a reliable design system adoption metric from production data

Struggling to measure design system adoption? Discover how we built a clear, data-driven metric that really works — with practical tips and code snippets you can use too!
Scaling GuestPortal: from monolithic backend to microservices

Discover how scaling GuestPortal from a monolithic backend to microservices unlocks greater scalability, domain independence, and operational efficiency.
The power of observability & monitoring: boost performance, security, and UX

Explore the potential of Observability & Monitoring beyond their traditional role in application development.
Scaling React for Delivery and Performance

At Mews, most of our Web UI is built with React, styled-components, and love. While shipping these UIs, we’ve built a robust component library and application architecture that can be adapted to scale well as Mews continues to grow. Scaling a large application like the frontend of our PMS shares a lot of similarities with […]
The benefits of shifting from technology-driven to product-driven development

Introduction I am a backend developer with 20 years of development experience, starting when .net 1.0 was released. But throughout the years, I have been working full stack one way or another. Back then, there was no difference between backend, frontend, or QA engineers. You were just a developer. You were expected to know and […]
Mastering legacy browser support: How core-js, browserslist, and babel work together

Introduction As developers, we love to use the latest and greatest technology available. At the same time, we need to make sure everything will work smoothly for our users. In the frontend world, there’s a huge difference between the code we write and what eventually gets to our users. Let’s have a look at the […]
Accessibility in design systems: Easy wins and lessons learned

Introduction Based on my talk at Design Systems London earlier this year, this post explores the valuable insights I have gained on how to make design systems more accessible (and why we should make this happen). At Mews we want to build the most accessible possible products and in an effort on doing so we […]
On the way to TypeScript

Avoid the bugs with TypeScript and read about the pros and cons of type systems as well as migration strategies. Researched, experienced, and shared.
Compile-time functional programming in TypeScript

Can you run your code without actually running it? This post will show you how to sort arrays and find Fibonacci numbers using TypeScript’s type system alone.
How to write custom ESLint rules

Let’s look into how to write custom ESLint rules. Creating these isn’t hard once you have the framework in place.
Bookmarklets: Automate boring web tasks

If you think creating an extension to automate your web tasks is an overkill, you might be looking for bookmarklets…
Guest journey: Get ready for zoomers

What’s the future of travelling from the guests’ perspective? Are we there yet?
Frontend Performance Monitoring with New Relic

Performance is always an important thing to think about when developing an application. It has a great impact on user satisfaction—the faster the code, the smoother the experience. But, as we all know, not all code is written perfectly from the start, and even small inefficiencies pile up over time. So, once this happens and […]
Adopting accessibility: this is how we do it

Adopting accessibility in a product can be quite an overwhelming task. There are a lot of different sources out there on the topic. We did some internal research to come up with action points we could put on roadmap, and now we want to share it publicly. This might be useful in case you have […]
Custom Neural Networks in a Browser

Neural Networks can do a lot of things. Personally, the way they find patterns in a set of complex data always felt like magic to me, even after I started understanding how they work. They have a lot of potential uses and being able to run them in a browser opens a lot more doors. […]
Intro to Graph Databases: More than just GraphQL

Nowadays, you’ll see GraphQL used in a lot of production and high load projects—and for good reason. The technology provides a simple and elegant method of implementing to APIs. I’m sure there are a lot articles giving a great overview of GraphQL APIs and comparing them to REST/SOAP and/or RPC (continue the list with your […]
Delivering payment requests: one of our killer features

In this article, I would like to reveal how software development works at MEWS. The development team is product-oriented, meaning that we focus on a single product and do not build applications on demand. We provide multiple applications for hoteliers and other providers whose services can be booked for certain time periods. I will use […]
How to get your cross-references in redux straight

Here at Mews, we have, as any other diligent react/redux developers, followed the redux documentation’s recommendations on shaping the redux store. Thus, our state ended up being (somewhat) shaped in such a manner that it references data from one (sub)state to another. While the documentation has good reasoning behind this structure, we were left to […]
Anatomy of Failure or: How to Deploy the Same Bug Four Times

Setting the scene, meeting the players All frontend code produced by Mews is being continuously integrated and delivered via automated build steps powered by custom build Azure Pipeline workflows. The deployment process begins with a pull request merge into the master branch. Pipeline runs the usual build steps, code analysis, and tests, then emits source […]
Classic cliché: computer nerds. If you thought they were extinct, think again….

For the first time in the short history of the Meet MewsDevs interview series, I decided it would be a good idea to interview two people at once. Alexander (frontend dev) and Vaclav (backend dev) have a lot in common. They both study at Charles University Faculty of Mathematics and Physics (Matfyz), live in the […]
Meet the MewsDevs – Daria

The second edition of Meet the MewsDevs is here! After Backend dev (and DOTA lover) Jarda, it’s time for Daria and the story of one Russian’s struggle to buy sunflower seeds in Prague and going from chemical engineer to Frontend developer at Mews. Hey, Daria, you’ve been with us for about 2 years, right? No, […]
Taming Redux state at scale

Everyone familiar with the Redux state management library is probably also familiar with its basic example of a todo list application. While this example illustrates some of the strengths and patterns associated with Redux quite nicely, it’s a bit overwhelming for such a simple use-case. It makes you wonder… how does Redux scale for big […]
Path to Continuous Deployment

As our company and (especially) tech teams grow, our need for better deployment processes increases too. We started with tedious, manual tasks and through a process of continuous improvement over the course of the past 6 years, reached full automation. Watch the talk I gave at ReactiveConf about how we have achieved it: You can […]