Film2Home

Fullstack Developer, DevOps

Context

Film2Home was a Video-on-Demand company and a subsidiary of Bonver. After Film2Home went bankrupt it was acquired by Magine TV, which kept running the platform under both the Film2Home and Plejmo brands.

From 2014 to 2017 I worked on these services as a fullstack developer and also did the DevOps work. The platform was ASP.NET MVC applications with EPiServer for content, plus backend services for catalog, payments, user accounts and content metadata.

Problem

  • A traditional n-tier architecture that struggled under load
  • Manual deployments that took about an hour and were error-prone
  • Third-party integrations for payments and metadata that were getting harder to manage
  • No API for the new clients that were on the way

Approach

Architecture

  • Introduced CQRS to separate reads from writes
  • Moved parts of the system to a service bus architecture on Azure Service Bus
  • Moved third-party integrations into separate services

Backend development

  • Built and maintained ASP.NET MVC and ASP.NET Web API applications with C#, NHibernate and SQL Server
  • Designed and implemented version 1 of Plejmo's REST API
  • Built a gamification proof of concept (levels and achievements) on top of the service bus

Frontend development

  • Built UI features in JavaScript, jQuery and KnockoutJS
  • Worked with the designers and editors using EPiServer

System integration

  • Built and maintained integrations with metadata and payment providers
  • Built REST and WCF services for internal and external consumers

Automation & DevOps

  • Set up automated builds and deployments with Octopus Deploy
  • Managed IIS configuration across environments

Results

  • Deployment time went from about an hour to under two minutes, with virtually no deployment errors
  • Better performance under load after moving from n-tier to the service bus architecture