2 Punkte von GN⁺ 2023-09-16 | 1 Kommentare | Auf WhatsApp teilen
  • Der Autor Matt Basta berichtet von seinen Erfahrungen bei der Entwicklung eines Tools für Uber, das Excel ähnelte und ein spezifisches Problem lösen sollte, mit dem die Data Scientists des Unternehmens konfrontiert waren.
  • Ubers Data Scientists nutzten mehrere Notebooks, um über Nacht Data-Science-Modelle auszuführen. Das war ineffizient und führte zu Daten- und Geldverlusten.
  • Basta stieß zum Team „Crystal Ball“, um den Prozess mit einem Tool namens „R-Crusher“ zu automatisieren. Als Frontend-Engineer war er dafür zuständig, die Benutzeroberfläche für dieses Tool zu bauen.
  • Das Tool wurde mit „Bedrock“, Ubers internem Frontend-Framework, innerhalb weniger Wochen fertiggestellt. Danach stellte Basta ein siebenköpfiges Frontend-Team zusammen, um dem Tool stärker nutzerorientierte Funktionen hinzuzufügen.
  • Der Hauptzweck des Tools war die Unterstützung von Ubers Geschäft in China. Das Unternehmen konkurrierte dort mit dem lokalen Ride-Hailing-Dienst Didi. Das Tool wurde verwendet, um prognostizierte Fahrgastzahlen in China zu erzeugen und Fahreranreize festzulegen.
  • Allerdings stand das Tool vor der Herausforderung, die Excel-Tabellen nachzubilden, die das Uber-China-Team nutzte. Diese Tabellen enthielten komplexe Formeln und wurden verwendet, um Fahreranreize zu bestimmen.
  • Basta entschied sich, eine browserbasierte Spreadsheet-Engine zu bauen, die Excel-Formeln lesen und ausführen konnte. Als Ausgangspunkt nutzte er einen Prototyp von „Box Sums“, einem Tool, das er bei seinem vorherigen Arbeitgeber Box entwickelt hatte.
  • Nach der Bewältigung mehrerer technischer Herausforderungen, darunter zirkuläre Referenzen in Excel, wurde das Tool erfolgreich in Wesley integriert, das Frontend von Ubers R-Crusher.
  • Kurz nach dem Launch des Tools wurde Uber China jedoch an Didi verkauft, wodurch das Tool nicht länger benötigt und aus Wesley entfernt wurde.
  • In der Rückschau auf diese Erfahrung sagt Basta, dass jeder Code, den Engineers schreiben, letztlich Legacy-Code wird. Er betont, wie wichtig es ist, sich weniger an die Langlebigkeit der eigenen Arbeit zu klammern und stattdessen darauf zu fokussieren, geschäftlichen Mehrwert zu schaffen.

1 Kommentare

 
GN⁺ 2023-09-16
Hacker-News-Kommentare
  • Ein Artikel über die Entwicklung einer browserbasierten Spreadsheet-Engine für Uber, die ähnlich wie Excel zur Verarbeitung von Daten zu erwarteten Fahrgästen in China gedacht war
  • Der Autor betont die Verbreitung von Wirtschafts- und Industriespionage in China und führt dafür anekdotische Belege aus seiner eigenen Erfahrung in der Tech-Industrie an
  • Der Autor unterstreicht die Bedeutung von Pragmatismus im Software Engineering und argumentiert, Code solle „wie Vieh, nicht wie ein Haustier“ behandelt und entsorgt werden, wenn er nicht mehr nützlich ist
  • Es gibt eine Diskussion über die Eigentümerschaft des für Uber geschriebenen Codes; einige fragen sich, ob er Eigentum von Uber oder des früheren Arbeitgebers des Autors, Box, ist
  • Einige Kommentatoren stellen die Entscheidung infrage, eine komplette Spreadsheet-Engine in JavaScript zu bauen, und schlagen vor, stattdessen bestehende Lösungen wie Apache POI zu verwenden
  • Die Entscheidung des Autors, den Code auf Github öffentlich verfügbar zu machen, wird gelobt; einige meinen, das biete eine Form der Katharsis, auch wenn der Code letztlich nicht von Uber verwendet wurde
  • Einige Kommentatoren schlagen alternative Lösungen für das Problem vor, mit dem Uber konfrontiert war, etwa Excel direkt an die vom Modell ausgegebenen Daten anzubinden
  • Die Sicht des Autors auf die Rolle von Ingenieuren wird hervorgehoben, mit Fokus auf die Bedeutung, Ergebnisse zu liefern, statt „schönen Schmuck“ zu bauen
  • Ubers internes Anwendungssystem wird für Design und Effizienz gelobt; ein Kommentator behauptet, innerhalb von 30 Minuten auf einer Subdomain eine Hello-World-Anwendung zum Laufen gebracht zu haben
  • Der Artikel bietet eine Insiderperspektive auf die Herausforderungen des BI-Teams bei Uber, darunter erhebliche Ressourcen, die für Anreize aufgewendet wurden, und der Druck, etablierte Werkzeuge wie Excel zu replizieren