24i is a company under Amino Technologies. Their goal is to provide customers with video solutions, typically IPTV (internet television), and VOD (video on demand) applications. Together we worked on the CHL TV (Canadian Hockey League TV) project - an app for streaming Canadian minor league hockey games. As part of the collaboration, we also tapped into a number of libraries developed within 24i and used on dozens of other applications.
Web, Mobile, TV
24i struggled with a lack of quality developers and the resulting slow development and high bugginess. Projects were delayed for a long time and applications were not of sufficient quality.
Right at the beginning of our cooperation, we came up with suggestions on how to solve the problems. First of all, it was necessary to start gradually rewriting critical parts of the libraries into TypeScript. Above all, however, the key was to start working on the overall developer culture within 24i, including a proper agile process: not being afraid to take responsibility and inspire other developers with quality code reviews and a consistent push for code quality.
First, we identified the most important parts of the code. Based on that, we created tasklets for rewriting individual libraries into TypeScript and then other tasklets for refactoring libraries - improving code, writing unit tests and documentation.
As part of our efforts to improve the culture of good code within 24i, we proceeded first through quality code reviews. We were not afraid to openly discuss problematic parts of the code and suggest improvements. We involved as many developers as possible in the discussion and initiated a dialogue with senior management on ways to improve processes within 24i. We also addressed how to transform a primarily marketing company, into a technology company.
Our work is now reflected in the technological basis for most of the applications 24i is working on. The introduction of technologies such as TypeScript and increased attention to code quality dramatically reduces the length of time it takes to develop new functionality. Bugs in applications are now easier to detect and fix, and customer and user satisfaction has increased. But it's not just about technical changes. Our initiative to improve the technology stack and introduce better defined agile processes in the company has also increased the motivation for developers to improve the application in other aspects such as user experience.
One of the biggest changes we helped set in motion was the gradual rebalancing of the company's marketing and technology focus. When we came to 24i, it was primarily a marketing-focused company. It was often the case that marketing was selling functionality without consulting the technical teams, creating misunderstandings about the potential limitations of the functionality. Based on our feedback, major changes were made to the company in this regard. Now the customer is informed exactly what state each application functionality is in and what limitations it has. The customer is always up to date and satisfied.