Milestone Systems, founded in 1998 by Danish engineers John Blem and Henrik Friborg Jacobsen, is a leading provider of open-platform video management software (VMS). Headquartered in Brøndby, Denmark, Milestone Systems operates globally with over 30 offices worldwide. It specializes in data-driven video technology solutions that empower organizations across various industries, including government, city surveillance, retail, transportation, finance, gaming, and education.
Milestone approached Eficode with a modern and ambitious technology strategy, facing a multi-faceted challenge spanning software development, security, and compliance. Ensuring that their software deployed with global customers met the highest security standards was essential, which meant avoiding vulnerabilities, particularly those arising from third-party and open-source components requiring robust binary scanning and dependency management. The transformation journey they envisioned included transitioning to a more Agile and scalable architecture, breaking down monolithic infrastructure, and embracing a loosely coupled architecture.
The core of this transformation was migrating to GitHub Enterprise, which required moving from TeamCity and TFS systems and building pipelines, addressing the complexities of the large and complex codebase, and custom configurations. Compliance with the United States Executive Order 14028 on cybersecurity (regarding traceability, data residency, and software supply chain) was at the forefront of Milestone’s goals to unlock new opportunities in the US market and drive revenue growth.
Eficode was tasked with building a new, compliant toolchain to support Milestone’s ambitious growth while migrating the existing infrastructure into the cloud and renewing their extensive codebases. Eficode needed to ensure the products met stringent regulatory requirements. This meant aligning the teams across development, platform engineering, and infrastructure functions to work seamlessly toward this goal. The migration strategy was to foster a culture of continuous integration and delivery while facilitating the reduction and refactoring of technical debt. The aim was to implement container-based, microservice, and trunk-based development practices to enhance Agility and responsiveness.
Eficode’s proposal aimed to modernize the version control and CI/CD processes, enabling a more Agile and scalable architecture. A significant part of this DevOps transformation involved creating a single solution for building all components using trunk-based development. This approach simplified branching and enabled self-service for development and feature branching.
Eficode addressed Milestone’s infrastructure and SCM needs to ensure their on-prem, cloud, and managed services are robust and compliant. It wasn’t just about building for today but for a future where Milestone’s products and processes are market-ready, secure, and scalable, aligning with their core values and long-term vision.
The project faced various challenges in modernizing software development with baked-in security and compliance. The starting point was a venerable and complex version control and build system in TFS that caused significant difficulties across the development organization. Teams struggled with self-service around branching strategies and managing an inefficient CI/CD process in TeamCity.
With one build team supporting this, bottlenecks were common, and test automation was monolithic, creating a large dependency on future efficiency and sustainability. The bulk of test automation was end-to-end, and being UI-dependent led to long execution times, extending the feedback loop back to development. Additionally, ensuring compliance, particularly for the US market, was crucial to unlocking new business opportunities and difficult to achieve using the existing toolchain. Milestone’s developer amount was more than 400 users in total.
To support compliance with the US Executive Order 14028 and drive architectural modernization, Eficode partnered with Milestone Systems to deliver a secure, scalable, and future-proof development environment. The comprehensive toolchain migration, delivered over the span of 8 months, streamlined collaboration, improved software supply chain security, and empowered Milestone’s teams with modern CI/CD capabilities and sustainable development practices.
For Version Control, Eficode focused on trunk-based development, migration to GitHub Enterprise Platform, and self-service enablement:
For CI/CD, we focused on building a unified solution and customer capabilities, as well as a supportive team role and enhanced testing processes:
Additionally, Eficode focused on enhanced testing processes that focused on integrated test automation, which is now gating the new CI/CD pipelines, ensuring continuous testing and quality assurance. Reduced dependency on UI-based tests to shorten execution times and feedback loops, improved overall efficiency.
The implementation of the solution was done in close collaboration between Milestone and Eficode. This enabled Eficode to quickly respond to the challenges and together build the knowledge base on the Milestone side.
“The collaboration with Eficode has been valuable for Milestone, helping to drive significant progress. Their expertise and ability to make decisive calls based on our team's input ensured we chose the right tools and implemented the best possible processes.”
Rahul Yadav, CTO, Milestone Systems
The transformation resulted in several significant improvements:
The collaboration between Eficode and Milestone Systems highlighted the importance of training: Upskilling teams early ensures smoother transitions and better adoption of new tools. Continuous communication between teams and stakeholders is crucial for successful migration and transformation. Lastly, a supportive infrastructure that shifts the build team to a supportive role helps maintain focus on innovation and continuous improvement.