Jedes Unternehmen, das in den E-Commerce einsteigen möchte, muss irgendwann entscheiden, ob es die Entwicklung auslagert oder intern betreibt.
Diese wichtige Entscheidung sollten Führungskräfte nicht leichtfertig treffen, denn sie beeinflusst Erfolg oder Scheitern erheblich. Manche Unternehmen bevorzugen ein eigenes Entwicklungsteam, das neue Anforderungen übernimmt. Andere halten die Vorteile der Auslagerung für deutlich größer als deren Nachteile.
VOR- UND NACHTEILE EINES INTERNEN ENTWICKLUNGSTEAMS
Wenn du ein internes Team aufbauen möchtest, solltest du Folgendes berücksichtigen:
Vorteile
- Schnelle Reaktion: Ein verfügbares internes Team kann Entwicklungsziele zügig umsetzen. Besonders hilfreich ist das bei Problemen, die sofortige Aufmerksamkeit und schnelle Korrekturen vor einer umfassenden Untersuchung benötigen. Direkt verfügbare Mitarbeiter können kleine Probleme lösen, bevor sie groß werden. Du musst nicht auf ein externes Team warten, das möglicherweise beschäftigt ist oder erst gefunden werden muss.
- Einfachere Kommunikation: Im selben Büro oder Gebäude sind persönliche Gespräche einfacher. Direkter Kontakt hilft, Entwickler in deine Kultur einzubinden und genaue Anforderungen zu erfüllen. Um teure Fehler und Rücknahmen zu vermeiden, ist direkte Kommunikation entscheidend. Nur ein internes Team bietet dir diese Möglichkeit.
- Volle Kontrolle: Ein spezialisiertes Team, das ausschließlich deine E-Commerce-Anforderungen bearbeitet, entwickelt die Plattform nach deinen Vorgaben. Geschäftliche Bedürfnisse lassen sich sofort mit konkreten Änderungen anhand deiner Anweisungen und Strategie berücksichtigen. Du kontrollierst jeden Projektaspekt und stellst sicher, dass das Ergebnis deinen Erwartungen entspricht.
- Als einziger Kunde des internen Teams kannst du potenziell effizienter arbeiten.
- Abhängig von Arbeitsweise und Umfang der Aufgaben oder Projekte kann ein internes Team günstiger sein.
Nachteile
- Personalfluktuation: In der Technologiebranche ist bekannt, dass die meisten Entwickler nicht besonders lange bei einem Unternehmen bleiben. Fachkräfte sind stark gefragt, und Wettbewerber sprechen kompetente Entwickler häufig an. Rechne deshalb mit regelmäßigen Unterbrechungen durch Zu- und Abgänge. Ersatz zu finden braucht Zeit; der Verlust eines Teammitglieds im entscheidenden Moment kann teuer sein. Auch Suche, Prüfung, Einstellung und Einarbeitung gehören in den Kostenvergleich mit externen Teams.
- Höhere Kosten: Ein Vollzeitteam nur für deine eigenen Anforderungen ist teuer, besonders für kleine Unternehmen. Entwickler sind angesehene Fachkräfte und können bei verschiedenen Unternehmen hohe Gehälter erzielen. Sie gegen eine feste Vergütung ausschließlich für dein Unternehmen zu beschäftigen, können sich nur wenige Organisationen leisten. Wegen der hohen Nachfrage musst du ihre Gehaltsvorstellungen angemessen erfüllen, damit sie keine anderen Angebote erwägen.
- Nicht immer zeiteffizient: Vollzeitentwickler können kaum jede Minute an anspruchsvollen Projekten arbeiten. Pausen sind völlig in Ordnung, doch bei hohen Fachkräftegehältern fällt das wirtschaftlich schwerer. Du bezahlst nicht nur große und kleine Aufgaben, sondern auch die Zeit außerhalb des Büros.
- Wer sich auf wenige interne Teams verlässt, profitiert nicht vom gegenseitigen Lernen großer Teams, wie es häufig in großen Agenturen stattfindet.
- Mit einem internen Team ist eine Kultur schwieriger aufzubauen, die Leistung, Barrierefreiheit und weitere Aspekte wertschätzt.
- Die Codequalität zu erhalten kann schwierig sein.
Ein wesentliches Risiko interner Entwicklung ist sinkende Qualität und die schrittweise Abkehr von Prozessen. Ungeplante Veröffentlichungen, weniger Aufmerksamkeit für Performance und weniger Qualitätssicherung schleichen sich leicht ein. Deshalb sollte der Product Owner die Qualität überwachen oder ein erfahrener technischer Projektmanager das interne Team beaufsichtigen.
AUFBAU DES INTERNEN TEAMS
Die Struktur hängt vom Unternehmen ab: Fähigkeiten, Komplexität weiterer Systeme, Shopify-Website und Umfang der Frontend-Arbeit unterscheiden sich. Ordne früh die Verantwortlichkeiten und Arbeitsmengen je Bereich den Aufgaben in Backlog und Roadmap zu. Wenn du mehrere einfache Websites mit eigenen Themes starten willst, fällt beispielsweise mehr Arbeit für einen Frontend-Entwickler mit mittlerer Erfahrung an.
Verlasse dich nicht auf eine einzige Person für die gesamte Entwicklung. Sonst hängen Code und Wissen von ihr ab, und Standards sowie Qualität können leiden. Pull Requests und Code-Reviews helfen dagegen, benötigen aber mindestens zwei Entwickler.
Diese beispielhafte Struktur funktioniert in vielen Technologieunternehmen und lässt sich übernehmen:
Leitender oder erfahrener Shopify-Entwickler
Beginne mit einem Fullstack-Entwickler, der Shopify kennt und große Projekte betreut hat. Gerade diese Projekterfahrung ist wichtig: Die Person arbeitet systematisch, fördert moderne Werkzeuge und kann Entwicklungsabläufe aufbauen. Sie koordiniert mit dem Product Owner oder Projektmanager Ressourcen, Veröffentlichungen, Planung und Prioritäten. Außerdem übernimmt sie die Architektur von Integrationen, eigenen Apps und komplexeren Projekten.
Frontend-Entwickler mit mittlerer Erfahrung oder Junior-Shopify-Entwickler
Ein eigener Frontend-Entwickler ist nicht immer nötig, weil der Fullstack-Entwickler diese Aufgaben ebenfalls übernehmen kann. Die meisten bevorzugen jedoch zusätzliche Frontend-Fachkräfte für hochwertige, visuell präzise Layouts. Sie haben vielleicht weniger Erfahrung in einzelnen Bereichen als der leitende Entwickler, können aber Backlog-Aufgaben zu Frontend, Apps und grundlegender Liquid-Logik erledigen.
Bei einer Headless-Architektur ändern sich die Anforderungen fast sicher; Erfahrung mit Vue.js oder React.js wird wahrscheinlicher benötigt.
Systemressourcen
Wichtig ist auch ein Team für andere interne Systeme, das deren Integrationen verantwortet.
Beziffere vor der Entscheidung den Arbeitsumfang je Bereich. Ein langfristiger Backlog und eine Roadmap helfen dir zu bestimmen, wie viele Entwicklungsressourcen nötig sind und wie sich der Bedarf verändert.
WERKZEUGE UND ENTWICKLUNGSFÄHIGKEITEN
Eine frühere Tätigkeit in derselben Rolle garantiert keine gute Arbeit. Vor dem Teamaufbau solltest du die unverzichtbaren Fähigkeiten und die nützlichen zusätzlichen Kenntnisse bestimmen.
VORRANGIGE FÄHIGKEITEN
Liquid-Syntax
Liquid ist Shopifys Frontend-Vorlagensprache und wird benötigt, um Logik in Templates einzubauen. Das reicht von datengestützten Produktempfehlungen bis zu einer einfachen Angebotskennzeichnung auf der Produktübersicht.
Mit Ruby- oder JavaScript-Vorkenntnissen lässt sich Liquid während der Arbeit relativ leicht lernen. Fundiertes Verständnis und Erfahrung ermöglichen jedoch sofortigen Fortschritt, ohne dass die Lernkurve die Codequalität beeinträchtigt.
Reines JavaScript
JavaScript spielt bei jeder Shopify-Website eine Rolle; nur der Umfang variiert. Dynamische Elemente wie Animationen und Formulare ohne erneutes Laden der Seite beruhen darauf. Viele Kernfunktionen, etwa das Hinzufügen zum Warenkorb, benötigen JavaScript. Zumindest die Grundlagen ohne Framework zu verstehen ist daher entscheidend.
HTML5
Erforderlich ist ein grundlegendes Verständnis guten Markups und seiner Auswirkungen auf Performance, SEO und Barrierefreiheit, nicht nur die visuelle Umsetzung eines Entwurfs. Dazu gehört ein Blick dafür, wann ein Design effiziente Funktionalität behindert.
SCSS
Frontend-Entwickler sollten diesen verbreiteten CSS-Präprozessor zur Erstellung und Pflege von Stylesheets kennen.
WEITERE FÄHIGKEITEN
Ruby/PHP
Ein großer Vorteil von Shopify ist, dass Backend-Kenntnisse nicht als wesentlich gelten müssen, weil die Plattform an sich keine Programmierung verlangt. Solches Wissen hilft bei bestimmten Datenaufgaben, die Apps oder Middleware benötigen. Mit kleinen Anpassungen gibt es aber bereits Apps für viele häufige Anforderungen, etwa Business Intelligence oder den Datenaustausch mit einem ERP.
GraphQL
Neben Apps für fast jeden Bedarf, die Programmierung reduzieren, fördert Shopify GraphQL als Zukunft der API-Entwicklung. GraphQL ist eine quelloffene Sprache zur Datenabfrage und -änderung für APIs sowie eine Laufzeit zur Ausführung von Abfragen auf vorhandenen Daten. Für geplante Datenbearbeitung oder zusätzliche Backend-Funktionen ist ein Teammitglied mit GraphQL-Kenntnissen sinnvoll.
React/Vue.js
Wenn du einen bestehenden Shop hast oder einen aufbauen möchtest und die Entwicklung intern übernehmen willst, kläre früh, ob React oder Vue.js verwendet wurde. Für geplante Spezialfunktionen kann ein tiefes Verständnis beider ebenfalls hilfreich sein, da sie die beiden meistgenutzten Frameworks sind.
ENTWICKLUNGSPROZESS
Neben den erforderlichen Fähigkeiten braucht dein internes Team den passenden Entwicklungsprozess. So kannst du ihn organisieren:
Qualitätssicherung und Tests
Nach Auswahl und Umsetzung einer Backlog-Aufgabe sollte ein gründlicher Test- und Qualitätssicherungsprozess gewährleisten, dass nur hochwertige Ergebnisse live gehen. Automatisierung als erste Absicherung ist der erste Schritt. Dazu können eine oder mehrere dieser Maßnahmen gehören:
- Snapshot-Tests vergleichen Momentaufnahmen von Frontend-Bereichen, um falsche Änderungen nach Codeanpassungen zu erkennen.
- Entwickler prüfen und kommentieren jeden Codeabschnitt über Pull Requests in GitHub oder Bitbucket, bevor er integriert wird.
- Mit Tools wie Cypresso.io, Jest und Circle lassen sich JavaScript-Tests erstellen, die bei jedem Commit automatisch laufen und eine Zusammenführung erst nach vollständig bestandenen Tests erlauben.
Der Product Owner oder technische Projektmanager sollte außerdem eine andere Person als der Entwickler sein. Diese Person prüft, ob das Ergebnis dem Auftrag entspricht. Klarere Aufgabenbeschreibungen verringern die nötigen Rückgaben zur Korrektur.
Veröffentlichungen
Ein konkretes Verfahren sollte eingerichtet und konsequent eingehalten werden. Entwickler aus erfolgreichen Teams kennen die meisten dieser Abläufe:
- Große Aufgaben lassen sich isoliert bearbeiten, ohne parallele Entwicklungen zu beeinflussen. Dafür gibt es funktionsspezifische Shopify-Themes. Dokumentiere das in Git, damit das Zusammenführen mehrerer Aufgaben in den Hauptcode keine Probleme verursacht.
- Veröffentlichungen sollten innerhalb festgelegter Rahmenbedingungen stattfinden. Die Sichtweise des Product Owners wird irgendwann auf die Probe gestellt. Ein fester Veröffentlichungsprozess ist jedoch sicherer, um Katastrophen zu vermeiden.
- Prüfe Änderungen stets zunächst in einem Staging-Theme, bevor du sie im öffentlich sichtbaren Theme veröffentlichst.
Aufgabenverwaltung
Es gibt zahlreiche Werkzeuge für die Aufgabenverwaltung; mir hilft Trello. Weitere findest du online, doch die meisten erfüllen dieselbe Funktion.
Jede Aufgabe sollte in einem geordneten Backlog beginnen, der als Roadmap der Website dient. Ein solider Prozess erfordert konsistente und transparente Informationen. Jede Aufgabe braucht mindestens:
- Titel
- Beschreibung
- Abschlusskriterium, das zeigt, wann die Aufgabe als erledigt gilt
- Fälligkeit
- Abhängige oder verwandte Aufgaben
- Geschätzte Dauer
ABSCHLIESSENDE GEDANKEN
Die Entscheidung zwischen interner und externer Entwicklung ist schwierig. Manche Händler kombinieren beides: Ein internes Team übernimmt alltägliche Kernprojekte, während Funktionen mit komplexem Fachbedarf ausgelagert werden.
So erhalten sie Zugang zu mehr Talenten, ohne zu große Risiken einzugehen, und senken Fixkosten. Entscheidend ist jedoch der richtige Partner für diese Kombination.
Eine allgemeingültige Antwort gibt es nicht. Was für ein Unternehmen funktioniert, kann für ein anderes ungeeignet sein. Beginne mit einer Bewertung deiner Anforderungen und Ressourcen.





