Technische Anforderungen

Eine der wichtigsten Funktionen für unsere App war ein Echtzeit-Chat. Während unserer Vertragsverhandlungen gaben uns die Entwickler einige SaaS-Empfehlungen, um die Erstellung der Echtzeit-Chat-Funktionalität zu vereinfachen - eine davon war Twilio Chat. Nach Prüfung der verschiedenen Empfehlungen schien Twilio die beste Option zu sein und wir einigten uns darauf, sie zu verwenden.

Stellenmarkt
  1. Experte / Inhouse Consultant Cyber Security Product Governance (m/w/d)
    DRÄXLMAIER Group, Vilsbiburg bei Landshut
  2. IT-Administrator (m/w/d)
    McPaper AG, Berlin
Detailsuche

Als es an die Umsetzung ging, gerieten die Entwickler aber in eine Sackgasse: Sie konnten nicht herausfinden, wie man Twilio Chat mit React Native zum Laufen bringt - obwohl sie es waren, die Twilio Chat und React Native überhaupt erst empfohlen hatten.

Schlimmer noch: Anstatt uns die Wahrheit zu sagen und uns zu erklären, dass sie nicht weiterkamen, sagten sie uns einfach, dass Twilio Chat nicht mit React Native funktioniere - und wollten nun, dass wir zu einem völlig anderen Chat-Dienstleister wechseln (von einer Firma, von der wir noch nie gehört hatten), dass wir noch einmal von vorne anfangen und eine zusätzliche Gebühr für diesen Irrweg bezahlen (obwohl der Preis für das Projekt eigentlich fix sein sollte).

Das Schlimmste aber war, dass ihre Behauptung nicht einmal ansatzweise stimmte: Twilio Chat funktioniert einwandfrei mit React Native - sie wussten nur nicht, wie sie das hinbekommen sollten. Am Ende habe ich, ein Entwickler mit keinerlei React-Native-Erfahrung, viele Stunden mit der Lösungssuche verbracht und den Entwicklern dann beigebracht, wie es funktioniert. Und selbst, nachdem ich ihnen alles gezeigt hatte, brauchten sie mich immer noch, um ihnen Links zu Dokumentationen zu schicken und ihnen zu erklären, wie man die Twilio-APIs verwendet.

Golem Akademie
  1. PowerShell Praxisworkshop: virtueller Vier-Tage-Workshop
    21.–24. Februar 2022, virtuell
  2. Cinema 4D Grundlagen: virtueller Drei-Tage-Workshop
    14.–16. März 2022, Virtuell
Weitere IT-Trainings

Hätte ich nicht herausgefunden, wie ich ihre Arbeit für sie erledigen kann, hätten wir ihre Empfehlung bestimmt befolgt. Wir hätten Twilio komplett aufgegeben und wären zu einem völlig anderen und minderwertigen Dienst gewechselt. Eine Entscheidung, die das Projekt um viele Monate und eine große Menge Geld zurückgeworfen hätte.

Nachlässige Sicherheit

Ich wünschte, ich könnte sagen, dass dies das Ende des Twilio-Debakels war, aber es kam noch schlimmer. Alle Twilio-Chatnachrichten sind Teil eines Channels, der entweder als "privat" oder "öffentlich" markiert werden kann. Wie der Name schon sagt, sind private Kanäle für die spezifischen Benutzer des Kanals gedacht, während öffentliche Kanäle von Nicht-Mitgliedern ''gesehen und ... betreten werden können. Außerdem sind der öffentliche Kanal und seine Mitglieder und Nachrichten für jeden Client-Endpunkt in einem bestimmten Dienst sichtbar.''

Ganz offensichtlich hätten also alle nicht-öffentlichen Nachrichten über private Kanäle implementiert werden müssen. Erstaunlicherweise implementierten unsere Entwickler aber alles über öffentliche Kanäle - was ich beim Durchsuchen der Twilio-Konsole feststellte. Wären wir so live gegangen, hätte jeder, der auch nur minimale Entwicklungserfahrung hat, die privaten Unterhaltungen jedes einzelnen Benutzers in der App belauschen können. Wenn ich das nicht selbst bemerkt hätte ... Die Entwicklungsfirma hätte ganz sicher keine Pen-Tester bezahlt, die solche Sicherheitsprobleme aufdecken.

Handbuch für Softwareentwickler: Das Standardwerk für professionelles Software Engineering

Das war ein grober Fehler. Noch schockierender ist aber, dass die Entwickler, anstatt sich dafür zu entschuldigen, unseren Änderungswunsch zurückgewiesen haben. Offensichtlich ist es einfacher, die Chat-Funktionalität mit öffentlichen Kanälen zu implementieren - und so zog man es vor, es so zu lassen. Erst als wir stark darauf drängten, änderten sie die Implementierung.

Überall Bugs

Einer der Gründe, warum wir unbedingt eine externe Entwicklungsfirma beauftragen wollten (und nicht einzelne Freiberufler), war der Support, der uns versprochen worden war: vor allem ein QA-Team, das die App ausgiebig testen würde, bevor sie uns gezeigt wird.

Bugs sind in jedem Software-Projekt unvermeidlich. Wir wussten also, dass die Firma keine Versprechungen machen konnte. Aber wir haben sie beim Wort genommen, als uns gesagt wurde, dass wir nur mit ein paar wenigen Fehlern rechnen müssten.

Wie wir später herausfanden, war das völliger Unsinn. Jede einzelne ihrer Lieferungen war voll mit Fehlern. Selbst die grundlegendsten Funktionen gingen nicht - ich hatte sogar den Verdacht, dass sie die App nie mit echten Smartphones getestet hatten. Wenn sie sie überhaupt getestet hatten. Meine Mitgründerin und ich mussten eine ganze Woche lang jeden Tag mehrere Stunden damit verbringen, alle Bugs zu dokumentieren und akribisch zu überprüfen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Software-Projekte: Meine Erfahrungen mit einer externen EntwicklerfirmaMinimum Viable Programming 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8.  


NoGoodNicks 01. Jul 2021

Mir sagt der ganze Artikel, dass er vermutlich aus Indien berichtet. Warum? - Lohnniveau...

scrumdideldu 12. Jun 2021

Ich habe nichts zum Preis geschrieben! Ich schriebe nur dass der Firmengründer zahlreiche...

osion 08. Jun 2021

Es ist bekannt das Asiaten alles können, aber alles nur viel blabla ist.

Niaxa 03. Jun 2021

Das verdient man bei 160 Stunden und 25¤ hier aber nicht. Zumindest wenn das Unternehmen...

osion 03. Jun 2021

Ein Asiate mit akademischer Abschluss hat ein Durchschnittverdienst von 200 USD pro...



Aktuell auf der Startseite von Golem.de
Fernwartung
Der Kundenansturm, der Teamviewer nicht gut getan hat

Wie schätzt man die weitere Geschäftsentwicklung ein, wenn die Kunden in der Pandemie plötzlich Panikkäufe machen? Das gelang bei Teamviewer nicht.
Ein Bericht von Achim Sawall

Fernwartung: Der Kundenansturm, der Teamviewer nicht gut getan hat
Artikel
  1. Netzneutralität: Google und Meta verteidigen sich gegen Telekom-Vorwürfe
    Netzneutralität
    Google und Meta verteidigen sich gegen Telekom-Vorwürfe

    Die beiden großen Internetkonzerne Google und Meta verweisen im Gespräch mit Golem.de auf ihren Beitrag zur weltweiten Infrastruktur wie Seekabel und Connectivity.

  2. Pluton in Windows 11: Lenovo will Microsofts Sicherheitschip nicht aktivieren
    Pluton in Windows 11
    Lenovo will Microsofts Sicherheitschip nicht aktivieren

    Die neuen Windows-11-Laptops kommen mit dem Chip Pluton. Lenovo will diesen aber noch nicht selbst aktivieren.

  3. Probefahrt mit BMW-Roller CE 04: Beam me up, BMW
    Probefahrt mit BMW-Roller CE 04
    Beam me up, BMW

    Mit futuristischem Design und elektrischem Antrieb hat BMW ein völlig neues Fahrzeug für den urbanen Bereich entwickelt.
    Ein Bericht von Peter Ilg

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • RTX 3070 989€ • The A500 Mini Retro-Konsole mit 25 Amiga-Spielen vorbestellbar 189,90€ • RX 6800 16GB 1.129€ • Intel Core i9 3.7 459,50€ Ghz • WD Black 1TB inkl. Kühlkörper PS5-kompatibel 189,99€ • Switch: 3 für 2 Aktion • RX 6700 12GB 869€ • MindStar (u.a. 1TB SSD 69€) [Werbung]
    •  /