RED is an award-winning digital creative agency whose mission is to develop marketing that people love and use. Founded in 1999, RED boasts a team of 100+ people and has collaborated with some of the world’s most renowned brands such as ESPN, Disney, Budweiser and Microsoft.
After years of supporting the marketing needs of its clients across the digital landscape, RED set out on a mission to gain an advantage over its competition by improving the process of building, managing,
approving, and publishing digital ads. To do that they came up with a creative management platform called Velvet. They needed Python experts to make it a reality.
Velvet is a SaaS web-based application focused on modularity and scalability. The entire project consists in one central, monolithic application and a number of smaller microservices. Each part of the system is containerized using Docker in order to achieve reproducible environments, predictable deployments and ease of scalability. The main application backend consists of a web interface, a number of relational databases, a number of non-relational data stores used for caching and brokering messages, a REST API, an asynchronous task worker and a background task scheduler. Every task that is deemed as taking too long to live inside the request-response cycle is queued for a task worker. Similarly, tasks that need to be run at regular intervals (like data ingress for external sources) are queued for a worker by a scheduler service.
The major part of the engineering effort lies in building an open data model for Ad units. The main feature of Velvet allows users to define data schemas using a user-friendly interface and then
populate and manipulate those schemas as easily as if they were defined in a relational manner for fast Ad building, approval, and publishing.
The most challenging part of the backend development is striving for technical excellence and system stability, all the while providing new features that meet the business goals of Velvet users.
Apart from the main monolithic module, there is a number of modules built as microservices and integrated tightly with the entire system. Microservices are used where technologies other than Django are required for performance reasons (like Sanic or Node), and where independent scalability is required because of the amount of traffic those services are handling (up to 10M requests per day), or because some parts of the architecture need to live on machines isolated from the Internet behind a VPN for security reasons.
RED needed an experienced Python engineer to join their existing team and work remotely under the VP of Engineering. We assigned one of our senior full stack engineers who, starting mostly with backend assignments, soon contributed to frontend and infrastructure parts of the project as well. In time, he became the technical leader of Velvet. The platform was officially launched in 2017 and has since then become a huge success among its customers.
Working together non-stop since mid-2016
major brands have used or are currently using the product
Sunscrapers has played a critical role in the development of Velvet, providing us with unmatched talent, support, guidance, and stability over the years. Not only do they complete the work that’s asked of them to the highest standard, they help define what that work should be, how best to approach it.
Let’s talk about your project.
and receive a bespoke proposal in 2 business days
Give us some details.