Behind the technology: High-growth company, little box, big problems to solve

25 May 2021 | By viviedu

When I joined Vivi, it raised a few eyebrows amongst my friends and former colleagues, not because they doubted I could be successful at a small start-up, but didn’t I want something bigger? After all, I’d been running a department over three times bigger than the entire Vivi business. My response was simple: it was an opportunity to take my first CTO role and it was bigger in a different way; the challenge was bigger and the problems that needed solving were bigger. 

I’m originally from the UK, where I started out life as a software engineer before switching to product management, and then back again. I’ve worked for a global telecommunications provider, a national newspaper, a few startups (including my own), followed by a stint with Amazon. I then relocated to Australia where I very quickly found myself heading up engineering at Hitwise, before taking up my current position at Vivi.   

Vivi is a high-growth wireless screen sharing solution designed for education. The product consists of a cloud backend, a cross-platform app, and hardware that sits in classrooms. It’s about as diverse as a tech stack gets in a single product. 

The big problems that needed to be solved weren’t related to what had already been achieved. The original product and technology team did an incredible job introducing processes and infrastructure that vastly surpassed the size of the team and the maturity of the business.  

The problems that needed solving were scaling the business and adjusting to customer requests, industry trends, and our own foresight into what would create a more social classroom. We approached this by doubling down on a customer-first mentality. By fully understanding the reasons behind issues or customers requesting additional functionality, we were able to simplify our approach to product development. 

My first technical challenge was to immerse myself with hardware – both the box itself and the firmware that it ran. It wasn’t long before I was using a multimeter and various tinker boards to help us plan what the next generation of Vivi hardware might look like. We had soon designed a new box and by my second year at Vivi, we had ported our software to the new device, and it was deployed in classrooms around the world. 

Next was redesigning the interface to our cloud backend. Anyone who has undertaken such a project where you are replacing something that has grown organically will know how difficult it is – no original requirements, both internal and external users who are happy with the existing product who are opposed to change. However, over six months we designed, implemented and deployed a new enterprise-grade system based on a React single page application, and Vivi Central was born.     

Our AWS infrastructure was solid but problematic for cost-efficiency reasons. Because most of the Vivi magic happens between the app and box on the local network, our usage is low, and we also have very defined traffic patterns of school hours. To maintain redundancy, we were running multiple EC2 instances in multiple availability zones, but we couldn’t get them small enough to be cost-effective.  This all changed when AWS launched Fargate and we were able to migrate our entire stack to ECS containers and harness the power and efficiency of server-less computing.     

I’m very proud of our amazing engineering team. Scaling up an engineering team when you have such a diverse and obscure tech stack isn’t easy in a high-growth, ambitious startup setting out to help transform an industry.