26 Oct 2021
This article describes a classic case of refactoring a search form UI component, a critical part of every e-commerce
platform. In it I’ll explain the precursor of change, analysis process, as well as aspects to pay attention to and
principles to apply while designing a new solution. If you are planning to conduct refactoring of a codebase or just
curious to learn more about frontend internals at Allegro, you might learn a thing or two from
this article. Sounds interesting? Hop on!
11 Feb 2015
Allegro was founded in 1999. As you can imagine, technology was quite different at that time.
Small startup of three developers wrote first version of the platform. There was no problem with scalability as there
were only hundreds of users. We didn’t even used any sql database. All data were stored in the files. This first few
years of Allegro are all almost mythical for current developers as no code or data schema is preserved from these
times. Over all those years we have grown up – a small company hiring a few programmers has changed into a
corporation with dozens of teams and hundreds of programmers. Everything was much easier back then when people were,
literally, working together. But with the growing number of programmers, we faced problems that soon turned into
blockers. Our code and its complexity grew along with the company. After some time, we realized that such uncontrolled
growth would block us one day. Application maintenance would become expensive, and any change of the system
behaviour would be risky. That is why we decided to act and our today’s architecture is the result of that decision.
Here is the story of our transition.