DEV Community

Cover image for Playing the Long Game in Frontend Development: Reflections on Balancing Ambition and Execution
Eran Sakal
Eran Sakal

Posted on • Updated on • Originally published at sakalim.com

Playing the Long Game in Frontend Development: Reflections on Balancing Ambition and Execution

At Kaltura, I wear multiple hats—Frontend Architect, Team Leader, and Tech Lead. Each hat comes with its unique perspective: the Architect dreams big and plans for the future, the Team Leader focuses on immediate results, and the Tech Lead drives innovation and quality. Balancing these viewpoints is giving me a unique position to influence both today's successes and tomorrow's possibilities.

In the fast-paced world of software development, we face a constant challenge: meeting immediate customer needs while simultaneously building for the long term. It's easy to get caught up in the day-to-day, but it's critical to keep that end goal in sight.

Before we start - A Note to Readers

This article was written by me (a human!) and then polished with the assistance of an AI tool. My hope is that it will be read primarily by fellow humans, and not only by AI agents 😆 While AI assistance is valuable, the true magic lies in the human connection.

Two Projects, One Journey

This month marks an exciting landmark for me: the completion of two major projects I've led. The original motivation for this article was to digitally celebrate that achievement. Thus, this article focuses on the stories behind those two projects.

But as my wise colleague, Stas, reminded me, an article without actionable insights is incomplete. So, I've extracted the key takeaways from these projects into a separate article, which I encourage you to read next!

Project #1: A Three-Year Journey to a Modern Frontend

Over three years ago, Kaltura acquired a company with a React-based application that was already handling significant daily user traffic. My mission: lead its frontend development.

Our immediate goals were clear: enhance stability, boost performance, and elevate the team's skills. But the long-term vision was ambitious: a complete replacement of the legacy system with a modern, robust application built on the latest technologies. Unlike a typical MVP (Minimum Viable Product) approach, we couldn't afford gradual iteration; the new application needed to be fully functional and in production quickly.

We set off on a multi-year journey, developing two applications in parallel: the acquired application, which required intensive maintenance and development to ensure a good experience for its hundreds of thousands of daily users, and a brand-new application built from the ground up. We rapidly launched this new application, ensuring it offered complete feature parity with the legacy system right from the start.

This graph illustrates the gradual reduction of dependency on our legacy system over the course of the project from 2021 to 2024. Starting with a fully integrated legacy system, the graph shows how, through strategic milestones and iterative progress, we systematically transitioned to a new application. Key events like creating smart “bridges,” separating codebases, and implementing new features contributed to this decline, culminating in the complete elimination of legacy dependencies by August 2024. This visual journey reflects the careful planning and execution required to achieve a seamless transition.

Visualizing the Transition: Reducing Legacy Dependency Over Time

As seen in the graph, a few days ago, the team— Stas, Tornike, Anna, and Toby—reached a major milestone: deleting 3,000 files of the acquired application from the new application codebase, marking the completion of this transition.

This success was a collaborative effort involving many teams: Product, Designers, UX designers, Quality Assurance, Server, and RTC teams.

Project #2: A Platform Born from the Pandemic

The second project, though still in its early stages, represents a major transformation in how we deliver real-time experiences. The idea for this project came about during the challenges of the COVID-19 pandemic. As the world shifted online, our company saw the need to adapt and help our customers host virtual events that were just as engaging as in-person ones.

In 2020, we responded by creating a new infrastructure specifically for this kind of online collaboration. This allowed our products to include features that were usually only found at physical events - think sponsor booths, parallel tracks, networking lounges, real-time reactions, interactive quizzes, moderated events, and much more.

While our initial solution proved effective, as we continued to add features, it became evident that we needed to expand our vision. We needed to create a comprehensive framework that catered to all stakeholders: customers, end-users, product teams, developers, marketing, and professional services. Two years ago, my manager challenged me to architect and execute such a framework that would enable us to scale rapidly and seamlessly.

This project has been an exciting challenge, with lots of architectural hurdles to overcome and important decisions to make. From redesigning the core infrastructure to making sure it's easy for developers to use, every step has been a chance to learn and innovate.


I'm genuinely excited to see how these two projects will impact our company's offerings and growth in the coming years. If you're curious about the lessons we learned and the strategies we employed, please check out my follow-up article where I delve into the key takeaways from this journey.

Until next time,
Eran

Top comments (1)

Collapse
 
shvekyha profile image
Hadas

Very interesting to read and reflect on your journey! Well done👏🏼