Levels.fyi hat sich in den letzten Jahren von einer einfachen Google-Tabelle zu einer Plattform mit Millionen von Nutzern entwickelt, die anspruchsvolle Angebote und Services rund um Gehaltsinformationen bietet. Im Zentrum dieses Wachstums steht nicht nur die Website, sondern zunehmend auch die Mobile App, die einen entscheidenden Beitrag zur Nutzerbindung und zum Erfolg des Unternehmens leistet. Ein wesentlicher Faktor, der das Nutzererlebnis der Levels.fyi App stetig verbessert, sind die sogenannten Over-the-Air Updates (OTA).
Diese ermöglichen es, neue Funktionen und Fehlerbehebungen auf die Geräte der Nutzer zu bringen, ohne dass diese eine neue App-Version aus den App-Stores herunterladen müssen. Dieser Ansatz steigert die Flexibilität und Effizienz der Softwareentwicklung erheblich und reduziert Barrieren für Nutzer, stets mit der aktuellsten Version der App zu arbeiten. Die Geschichte von Levels.fyis mobilen Angeboten begann mit einer sehr limitierten App, die lediglich einen kleinen Teil der umfassenden Website-Funktionalitäten abdeckte. Doch angesichts der wachsenden Bedeutung mobiler Anwendungen – insbesondere in Bezug auf Nutzerbindung und kontinuierliche Verbesserung – wurde der Fokus zunehmend darauf gelegt, die mobile App weiterzuentwickeln und zu einem integralen Bestandteil des Produktangebots zu machen.
Damit verbunden war die Herausforderung, Updates und neue Features schnell und zuverlässig auszurollen, ohne die Nutzer durch häufige App-Store-Downloads zu belasten. Ursprünglich bediente sich Levels.fyi hierzu Microsoft AppCenter und dessen CodePush Dienst, die speziell für React-Native-Anwendungen optimale Bedingungen boten. Doch mit dem angekündigten Ende von AppCenter im Frühjahr 2025 stand das Unternehmen vor einer strategischen Entscheidung: Wie kann die Wartung und Verteilung von OTA-Updates weiterhin sicher, kosteneffizient und skalierbar gestaltet werden? Dies führte dazu, dass verschiedene Alternativen evaluiert wurden, darunter populäre Managed Services wie Expo Application Services (EAS). Trotz der technischen Vorteile von EAS war der Kostenfaktor ein entscheidendes Gegenargument.
Für ein wachsendes Startup wie Levels.fyi ist die Kostenkontrolle essenziell – und EAS hätte mit monatlichen Gebühren von rund 350 US-Dollar sowie zusätzlichen Kosten je 10.000 aktiven Nutzern einen erheblichen Anteil des gesamten AWS-Budgets verschlungen. Die Entscheidung fiel stattdessen zugunsten einer selbstgehosteten, serverlosen Lösung, die auf dem offenen Expo Updates-Protokoll basiert. Dabei verbindet Levels.
fyi die bewährte Praxis, eigene Infrastrukturkomponenten zu betreiben, mit modernen Cloud-Technologien, insbesondere AWS Managed Services wie S3, DynamoDB und CloudFront. Diese Architektur erlaubt es, die Vorteile von Cloud-Storage und verteiltem Caching zu nutzen und gleichzeitig maximale Flexibilität bei Skalierung und Wartung zu bewahren. Der Kern der Lösung liegt im Build-Prozess: Wenn neue App-Versionen oder Updates erstellt werden, generiert das Expo CLI nicht nur die notwendigen JavaScript-Bundles und Assets, sondern auch die zugehörigen Manifest-Dateien. Diese enthalten alle Metadaten der Updates, die für das Übertragen und Installieren durch die Mobile App benötigt werden. Anschließend werden diese Artefakte in einem S3-Bucket gespeichert, der als zentrales Blob-Storage fungiert.
Parallel dazu wird das Manifest zusammen mit weiteren Informationen in DynamoDB abgelegt, wodurch die Update-Metadaten extrem schnell abrufbar sind. Das Backend des OTA-Servers ist auf Serverless-Computing ausgelegt, konkret mit AWS ECS Fargate. Diese Entscheidung stellt sicher, dass die Infrastruktur nur dann Ressourcen verbraucht und somit Kosten verursacht, wenn tatsächlich Nutzer OTA-Updates abfragen oder neue Daten bereitgestellt werden. Ein wesentlicher Mehrwert dieser Architektur ist ihre hervorragende Skalierbarkeit: S3 bietet nahezu unbegrenzte Speicherung, DynamoDB ermöglicht extrem schnelles Lesen der Manifest-Daten, und CloudFront verteilt die Assets weltweit mit geringster Latenz. So bleiben die OTA-Updates nicht nur schnell, sondern auch kosteneffizient.
Ausgehend von den Beweggründen für das Verlassen von Microsoft AppCenter zeigt Levels.fyis Weg eindrucksvoll, wie eigene Infrastruktur nahezu nahtlos in bestehende Cloud-Ökosysteme integriert werden kann, um technische und wirtschaftliche Herausforderungen zu meistern. Die Kombination aus serverlosem Modell und selbstgehosteten Komponenten bietet die nötige Kontrolle und Unabhängigkeit gegenüber Drittanbietern, was nicht nur die Kostenstruktur verbessert, sondern auch die Anpassungsfähigkeit für zukünftige Anforderungen sicherstellt. Neben dem technischen Aufbau steht bei Levels.fyi der Nutzer im Mittelpunkt.
Die Over-the-Air Updates sind darauf ausgelegt, die Nutzererfahrung so angenehm und reibungslos wie möglich zu gestalten. Dadurch können neue Funktionen schneller getestet und ausgerollt werden, Fehlerbehebungen unmittelbar verteilt und kritisch wichtige Änderungen ohne Verzögerung eingespielt werden. Dies fördert eine dynamische und agile Produktentwicklung, die auf Kundenfeedback und Marktanforderungen schnell reagieren kann. Ein weiterer Vorteil des selbstgehosteten OTA-Systems zeigt sich in der Transparenz und Wartbarkeit. Während Microsoft AppCenter nach Einstellung des Dienstes keine aktive Pflege mehr verspricht, kontrolliert Levels.
fyi seine Infrastruktur selbst und kann gezielt auf lokale Anforderungen und Veränderungen reagieren. Zudem bietet der Einsatz von Open-Source-Komponenten die Möglichkeit, maßgeschneiderte Anpassungen vorzunehmen und die Lösung langfristig weiterzuentwickeln. Dieses strategische Vorgehen passt perfekt zu Levels.fyis Unternehmensphilosophie, die auf Eigenverantwortung und Optimierung setzt. Durch das Konzentrieren auf die zentralen, kritischen Infrastrukturkomponenten und das Outsourcen weniger kritischer Teile an bewährte Cloud-Dienste, erzielt Levels.
fyi eine ausgewogene Balance zwischen Flexibilität, Stabilität und Effizienz. Insbesondere im mobilen Bereich, der sich durch hohe Wettbewerbsdichte und dynamische Nutzeranforderungen auszeichnet, sind solche Prinzipien von entscheidender Bedeutung. Zusammenfassend lässt sich sagen, dass Levels.fyis selbstgehosteter, serverloser Over-the-Air Update-Server ein moderner, skalierbarer und kosteneffizienter Lösungsweg für die kontinuierliche Verbesserung mobiler Anwendungen ist. Das System nutzt die Vorteile moderner Cloud-Services optimal aus und bietet gleichzeitig die Kontrolle und Unabhängigkeit, die ein wachsendes Unternehmen braucht.