Film2Home

Fullstack-utvecklare, DevOps

Kontext

Film2Home var ett Video-on-Demand-bolag och dotterbolag till Bonver. Efter Film2Homes konkurs köptes det av Magine TV, som fortsatte driva plattformen under både Film2Home och Plejmo.

Från 2014 till 2017 arbetade jag med tjänsterna som fullstackutvecklare och skötte även DevOps-arbetet. Plattformen bestod av ASP.NET MVC-applikationer med EPiServer för innehåll, plus backendtjänster för katalog, betalningar, användarkonton och metadata.

Problem

  • En traditionell n-skiktsarkitektur som hade svårt att klara belastningen
  • Manuella driftsättningar som tog cirka en timme och var felbenägna
  • Tredjepartsintegrationer för betalningar och metadata som blev allt svårare att hantera
  • Inget API för de nya klienter som var på väg

Tillvägagångssätt

Arkitektur

  • Införde CQRS för att separera läsningar från skrivningar
  • Flyttade delar av systemet till en service bus-arkitektur på Azure Service Bus
  • Bröt ut tredjepartsintegrationer till egna tjänster

Backendutveckling

  • Byggde och förvaltade ASP.NET MVC- och ASP.NET Web API-applikationer med C#, NHibernate och SQL Server
  • Designade och implementerade version 1 av Plejmos REST-API
  • Byggde en proof of concept för gamification (nivåer och prestationer) ovanpå service busen

Frontendutveckling

  • Byggde UI-funktioner i JavaScript, jQuery och KnockoutJS
  • Arbetade med designers och redaktörer som använde EPiServer

Systemintegration

  • Byggde och förvaltade integrationer mot metadata- och betalleverantörer
  • Byggde REST- och WCF-tjänster för interna och externa konsumenter

Automation & DevOps

  • Satte upp automatiserade byggen och driftsättningar med Octopus Deploy
  • Skötte IIS-konfigurationen i alla miljöer

Resultat

  • Driftsättningstiden gick från cirka en timme till under två minuter, med i stort sett inga driftsättningsfel
  • Bättre prestanda under belastning efter bytet från n-skikt till service bus-arkitektur