Adstream is a global leader in advertising logistics. They aimed to optimize the development of future iterations of their product and modernize its legacy code. They needed a partner proficient with Scala, as they had only a few specialists onboard.
VirtusLab planned and implemented a series of incremental changes in Adstream’s implementation processes and conducted code refactoring. With the improvements complete, the delivery time of each Adstream software iteration went from three months to two weeks.
Adstream’s product, an advertising management platform, was growing and they aimed to optimize the delivery time of future iterations. They also needed to modernize the legacy code while keeping their platform operational. Any downtime, or service interruptions could affect their clients, such as marketing agencies from Australia, Japan, Europe, and the USA who were using this platform 24/7.
With the limited number of experienced Scala developers onboard, Adstream was unable to achieve their required standard of optimization works. That is why they decided to find a technology partner.
Our engineers already worked with Adstream on a successful project that involved Scala language. Impressed with their expertise and work ethic, Adstream trusted them to lead the optimization efforts.
VirtusLab’s approach was to avoid completely refactoring the functioning platform to maintain service availability for clients and to prevent detachment from user feedback. Instead, their cooperation with Adstream focused on five key areas:
Every live release brought about a series of incremental changes to the Adstream platform. Also, each update was integrated with a continuous feedback loop.
VirtusLab introduced data-driven project management to the implementation process. It added quarterly goals that stakeholders use to measure the progress of each update.
A large monolithic service has been split into smaller ones. Each part has its own defined boundaries to reduce the dependency between different teams. VirtusLab automated and optimized several processes, including:
Now, one team works on their service without waiting for another team. It makes the release process smoother and faster as the smaller services are being updated quicker and more frequently.
In two years VirtusLab transformed the software implementation process at Adstream. Splitting monolithic service into two pieces made the platform easier to manage, faster to update, and less reliant on coordination between multiple teams. It gave Adstream a more efficient release cycle for new software updates.
With each quarter the number of live releases increased, without disrupting clients. The delivery time for releases went from three months to two weeks. Adstream also noticed:
Languages: Scala
Containerization: Docker
Cloud services: AWS
Frontend frameworks: Angular, React
Backend frameworks: NodeJS
Databases: MongoDB, ElasticSearch
Automation: Ansible
Use one or a combination of engagement models to suit your needs.
VirtusLab's work has met the mark several times over, and their latest project is no exception. The team is efficient, hard-working, and trustworthy. Customers can expect a proactive team that drives results.
VirtusLab's engineers are truly Strapi extensions experts. Their knowledge and expertise in the area of Strapi plugins gave us the opportunity to lift our multi-brand CMS implementation to a different level.
VirtusLab has been an incredible partner since the early development of Scala 3, essential to a mature and stable Scala 3 ecosystem.
VirtusLab's strength is its knowledge of the latest trends and technologies for creating UIs and its ability to design complex applications. The VirtusLab team's in-depth knowledge, understanding, and experience of MIS systems have been invaluable to us in developing our product. The team is professional and delivers on time – we greatly appreciated this efficiency when working with them.