FARFETCH — eng E-Commerce-App a Produktioun moderniséieren

Android-Ingenieur · August 2021 – Abrëll 2025 · FARFETCH op Google Play

Problem

FARFETCH ass e Marketplace fir Luxusmode, a seng Android-App hëlt Bestellunge vu Clienten aus der ganzer Welt un. Am Joer 2021 huet de Code Joere vun Entscheedunge mat sech gedroen, déi sech ugesammelt haten: MVC an den eelsten Ecranen, MVVM an deene méi neien, an d'Ofhängegkeeten iwwerall mat der Hand verbonnen. Näischt dovun war falsch, wéi et geschriwwe gouf, a genee dat alles huet all nächst Ännerung méi lues gemaach wéi déi virdrun.

D'Pipeline vun der kontinuéierlecher Integratioun huet fofzeng Minutte pro Laf gebraucht. Fofzeng Minutten ass iwwer der Grenz, wou d'Ingenieure se net méi lafe loossen a laang waarden, ier se hir Ännerungen zesummen erasetzen — an esou fënnt een d'Integratiounsproblemer spéit an deier.

Aschränkung

Näischt duerft ophalen. D'App war a Produktioun an huet Suen erabruecht, op engem Release-Zuch, dee fir Architektur-Aarbecht net gestoppt huet. All Ännerung huet Schrëtt fir Schrëtt musse landen, an déi al wéi déi nei Patterns hunn am selwechte Code musse weiderliewen, sou laang wéi d'Migratioun gedauert huet — an dat waren Joeren, keng Sprinten.

Entscheedungen

Resultat

D'Pipeline ass am Duerchschnëtt vu 15 Minutten op 2,5 erofgaang — erëm ënner der Grenz, wou d'Ingenieure se bei all Ännerung lafe loossen, amplaz laang ze waarden.

Compose an Dependency Injection sinn allebéid de Standard fir all nei Aarbecht ginn an net parallel Experimenter. Dat ass dat eenzegt dauerhaft Resultat, dat eng schrëttweis Migratioun ka bréngen: dee neie Wee muss dee liichte Wee sinn, soss gewënnt deen ale Wee duerch d'Gewunnecht.

Wat ech anescht maache géif

Ech géif d'Moduler virun der Migratioun maachen an net zur selwechter Zäit. Mir hunn déi zwou Saache gläichzäiteg gemaach, an dat selwecht Argument, dat ech fir de Build-Cache maachen, gëllt och fir d'Migratioun: et sinn d'Grenzen tëscht de Moduler, déi eng schrëttweis Ännerung bëlleg maachen. Ouni si huet all Ecran, deen op Compose migréiert gouf, nach ëmmer dat ganzt Netz vun Ofhängegkeeten hannert sech hier gezunn, an d'Migratioun huet eng Steier bezuelt, déi net néideg war. D'Aarbecht un der Pipeline huet de Punkt bewisen — ech hunn en nëmmen an der falscher Reiefolleg bewisen.