Intersection: Improving platform stability through automation

Enhancing internal processes and introducing resilience

Intersection uses digital technology to transform the physical world and help people get the most out of the cities around them. Its best-known products are its award-winning public Wi-Fi network Link and its transit information boards.

21_IMG_Intersection

Outcomes

97%

ad display uptime is steady

94%

tablet uptime

New apps

now available on iOS and Android

About Intersection

Intersection is an experience-driven media & technology company that delivers programming, consumer amenities, and advertising to cities.

Industry
Media
Location
USA

Challenge

Rethinking processes and enhancing automation

Intersection wanted to ensure its major revenue-generating products were embracing the latest processes – in terms of automated testing and releasing, and true Continuous Integration/Delivery – to prevent any potential uptime problems in key components. Even one ad screen going down is too many and has a negative effect on current and potential advertising customers, so it was something Intersection was keen to prevent. The uptime of its tablet app also became a big priority due to the impact it has on customer service.

Without introducing these enhancements, it would have been hard to prevent bugs from leaking into production and implement better practices for production support of the system.

As a result, Equal Experts was brought in to help the internal Intersection team on a stability project (called Summer of Stability). Its goals were to introduce automation across the board – from testing, the release process and test coverage, to failover measures, resiliency measures, logging and metrics.

Solution

Expanding into product

After the stability project was completed, we expanded across Link engineering and became heavily involved with the team delivering product features for both the Link system and the software used to manage it.

We worked across the core technologies behind its platforms – Ubuntu, Android, Scala, React and various Javascript systems – and its consumer-facing mobile apps, and moved into leadership roles to provide technical guidance.

We became involved in three streams:

  1. Device: We worked on the customised Android, Ubuntu and Linaro platforms that run the physical Link structure. The workstreams included adding health metrics throughout the system, adding diagnostic tools for troubleshooting of individual failures and trends and improving resilience by introducing failover and automated healing features.
  2. Portal: We helped build the portal that controls the physical Link device and also acts as an aggregator of data about all the components. This was built from scratch and used React with some Scala.
  3. Mobile: We helped an internal team build native iOS and Android apps that were designed to observe how people navigated and used links within the app. From this, we were able to improve the service for the public.

How did we help?

  • We built a team: As a joint team, we worked with internal peers and stakeholders to define areas of ownership within the organisation, streamlining skills and deliverables. Even though this was a distributed team we spent long periods working in the office and pairing with internal resources.
  • We upskilled quickly: As we were dealing with very specialised technologies (an Android framework) we needed to get up to speed with Android OS architecture and best practices. The fact we were able to contribute quickly is a testament to our team’s ability to hit the ground running.
  • We automated testing and deployments: We increased the amount of automated testing and made a concerted effort to improve unit test coverage across the Android tablet and supporting backend systems. Push button deploys were implemented for all of the Android images and application packages.
  • We introduced Agile best practices: The team focused on Agile best practices to support Intersection’s further internal development: things like providing clean code, increasing test coverage, test-driven development, and continuous integration/delivery. We also instituted a KanBan style of development to gel with the frequent deployments we needed to quickly improve the stability of the Link structures.

Results

Improved platform stability through automation

  • Ad display uptime is steady at 97%
  • Tablet uptime has risen to 94%
  • New ad players rolled out to the entire fleet
  • Push button deploys have removed manual deployments
  • New “pull-style” agile methodology implemented to improve ownership of work through to production, and increase QA knowledge earlier in the life cycle
  • New iOS and Android apps released
  • Holistic management tools for Link and transit assets built

The project was a big success for both Equal Experts and for Intersection, and we were able to help Intersection improve its platform stability through automation, measurement of the system and introduction of resiliency patterns. With this engagement, we demonstrated our ability to quickly provide value on challenging tech stacks and domains, both in performance/resiliency and feature work.

You may also like

Case Study

ESP Group: Putting best practices in place

Case Study

O2 Priority Tickets build a platform to withstand a stampede of superfans

Case Study

Rebuilding the plane mid-air at HMRC

Get in touch

Want to know more?

Are you interested in this project? Or do you have one just like it? Get in touch. We’d love to tell you more about it.