The Customer is an international US-based marketing agency with over 100 offices and 10,000 employees in 80 countries. The Customer provides their services to such global companies as Samsung, Procter & Gamble Company, McDonalds and more.
One of the Customer’s key clients needed the solution to coordinate their local offices in different countries to improve loyalty and marketing campaign management. The Customer’s IT department lacked the skills required to deliver the needed solution and was looking for a provider to outsource software development and support.
At the beginning of the cooperation with the Customer, our IT consultant and 2 business analysts conducted the analysis of their client’s business and needs and the related business processes. With the gathered info, we prepared the detailed project requirements for building the solution with the functionality for planning marketing campaigns and ensuring real-time visibility into their progress and facilitating budget allocation.
General approach to software development and testing
Considering the complexity of the solution and the need of the Customer’s client to get it as soon as possible, we suggested choosing iterative development and starting with delivering the scalable basic version of the solution.
Scrum was chosen as the development methodology to provide for the flexibility in planning and the possibility to introduce changes. While developing the basic version of the solution, we conducted daily scrum meetings within our team to assess the project progress and identify and remove any stumbling blocks. The project progress was reported to the Customer during weekly status calls.
To shorten the development time and ensure smooth integration of new functionality with the solution in the future, we implemented the DevOps approach.
To guarantee the high quality of the project outcomes, we implemented continuous testing. This way, we could uncover and fix potential quality issues with the solution’s functionality, performance, usability and security.
Marketing solution evolution
After the basic version was delivered, we proceeded with expanding the solution with the functionality for providing real-time visibility into the progress of regional marketing campaigns and the tool for conducting marketing budget allocation in different regions.
Throughout further cooperation, our IT consultant analyzed end users’ feedback on the solution that was gathered during our support activities and offered the solution’s further evolution possibilities, which were welcomed by the Customer. We designed and implemented the features for collecting and analyzing consumers’ personal data and tracking and analyzing consumers’ behavior across multiple channels in different regions. These features helped the Customer’s client to apply data-driven decision-making and thus improve complex marketing campaigns and loyalty management.
Right after the Customer’s client started using the basic version of the solution, we took responsibility for providing the solution’s support. We’ve split the support into 3 levels, each responsible for the issues of different complexity, and appointed corresponding specialists to each level. We also collected end users’ feedback and conducted user satisfaction surveys to identify the ways to improve the solution.
Currently, the Customer’s client uses the solution in more than 60 countries. The solution helps to improve the alignment among their regional offices, enhance loyalty management and manage complex marketing campaigns on a global scale.
Technologies and Tools
Project management: Targetprocess.
Back end: ASP.NET MVC 5, ASP.NET Web API, WCF, ADO.NET Entity Framework, Windows Services.
Front end: HTML, CSS3, jQuery, Backbone.js, Underscore.js, RequireJS.
Messaging/Notifications: AWS SNS, RabbitMQ.
Data storage: Microsoft SQL Server, SQLite, Amazon DynamoDB, AWS S3, AWS Glacier.
DevOps: TeamCity, Jenkins, Chef, AWS CodeDeploy.
Monitoring: Filebeat, Logstash, Amazon CloudWatch, Datadog.