Webprojekte mit Erfolg: Drei CTOs geben Tipps zu Tools, Methoden und Erfolgsfaktoren
Lennart Koopmann: Geschäftsführer und CTO von Torch
„Wir entwickeln standardmäßig öffentlich.“
t3n Magazin: Können Sie sich, Ihr Unternehmen und Ihre Position kurz vorstellen?
Lennart Koopmann: Vor vier Jahren begann ich mit der Entwicklung des Open-Source-Log-Management-Tools Graylog2, das mittlerweile weltweit genutzt wird. Letztes Jahr gründete ich mit meinem Freund und Kollegen Hass Chapman Torch, das Unternehmen hinter Graylog2. Hier arbeiten inzwischen mehrere fest angestellte Entwickler an verschiedenen Dienstleistungsformen rund um Graylog2.Im Geschäftsführungs-Team fokussiere ich mich auf die technischen Bereiche. Da wir keine Jobtitel verwenden, nenne ich mich aber nicht CTO. Fragen der Entwicklung lösen wir im gesamten Team, nur bei der Produktstrategie und -vision gebe ich einen groben Weg vor.
t3n Magazin: Welche kostenpflichtigen Tools empfehlen Sie?
Lennart Koopmann: Da wir ein Open-Source-Produkt entwickeln, läuft bei uns sehr viel über GitHub. Wir möchten ein möglichst transparentes Produkt gestalten und alle User in die Entwicklung einbinden. Deshalb sind alle Produktentwicklungen standardmäßig öffentlich. Wir nutzen die GitHub-Tools aber auch für Internes: Die Party im neuen Büro haben wir zum Beispiel über ein privates GitHub-Wiki organisiert.Ein anderer Service, der uns viel Arbeit abnimmt, ist Travis CI. Dort laufen all unsere Tests, sogar die Browser-Integrationstests. Jeder git-Push führt dort zu einem kompletten Lauf aller Tests. Travis CI alarmiert uns, wenn nicht alles rund läuft. Das Tool lässt sich per Klick über GitHub einrichten und unterstützt alle Sprachen, die wir verwenden. Sogar unsere Abhängigkeiten – wie Datenbanken – stehen dort automatisch zur Verfügung.Für die Support-Tickets unserer Kunden verwenden wir HelpScout. Es bietet eine ausführliche Behandlung überschaubarer Ticket-Mengen. Für die interne Kommunikation nutzen wir eine Mischung aus Google Apps und Slack. Das Chat-Tool Slack haben wir erst kürzlich entdeckt und sofort geliebt: Es bietet uns File-Sharing, private und Gruppen-Chats sowie die Integration unter anderem von GitHub, Travis CI oder HelpScout: Immer wenn dort etwas passiert, schickt uns Slack eine Meldung. Bis auf zwei oder drei Services liegt bei uns alles in der Cloud. In den Raum, in dem unsere Vormieter ihre Server hatten, haben wir eine Dusche eingebaut.
t3n Magazin: Und wie sieht es bei Open-Source-Tools aus?
Lennart Koopmann: Neben Graylog2? Im Ernst: Wir haben vor kurzem unseren Blog auf die Ghost-Plattform umgestellt. Endlich ein Blog-Interface, das richtig Spaß macht und komfortabel ist. Es ist komplett Open Source und auch in der Cloud verfügbar.
t3n Magazin: Welche Erfahrungen haben Sie mit agilen Methoden?
Lennart Koopmann: Noch ist unser Entwicklungsteam zu klein, um eine agile Methode zu benötigen. Unsere Kommunikation funktioniert ad hoc, wir arbeiten sowieso zu sehr unregelmäßigen Zeiten. Einer unserer Entwickler ist nur ab und zu in unserem Hamburger Büro. Die Kommunikation läuft über GitHub Issues und Chat. Wichtig ist nur, dass alle diszipliniert sind und zum Beispiel die Milestones richtig setzen. Sonst gehen Dinge zu einfach unter oder gar ganz verloren.Wir wollen das auch so lange wie möglich aufrecht erhalten. Sollte es irgendwann notwendig werden, werden wir wohl ein an Kanban angelehntes System einsetzen. In meinen vorherigen Jobs habe ich jedoch gelernt, dass man für sich und sein Team den richtigen Prozess finden muss. Man kann nicht einfach blind machen, was im Kanban- oder Scrum-Buch steht. Vor allem wollen wir keine Projekt-Manager oder Agile-Coaches – es muss aus dem Team heraus entstehen.
t3n Magazin: Wie organisieren Sie die Zusammenarbeit zwischen Frontend- und Backend-Entwicklern?
Lennart Koopmann: Wir legen Wert darauf, dass alle Entwickler am Frontend und Backend arbeiten können, damit sie ein ganzes Feature am Stück entwickeln können und die APIs schön aufeinander passen. Natürlich sind manche Entwickler spezialisiert. Aber sie müssen zumindest die Grundlagen des jeweils anderen Bereiches kennen. Gibt es mal ein Frontend-Feature, das mehr Detailliebe braucht, geht es an einen entsprechenden Spezialisten – oder wird direkt gemeinsam entwickelt.
t3n Magazin: Welche IT-Prozesse kann man outsourcen?
Lennart Koopmann: Bei uns übernehmen die Entwickler den gesamten Prozess selbst: Von einer Idee im Team über QA bis zum Release. Da bleibt eigentlich gar nicht mehr viel zum Outsourcen. Wir halten nicht viel davon, weil damit immer ein Teil der Team-Kultur verloren geht.
t3n Magazin: Wie finden und motivieren Sie talentierte Entwickler?
Lennart Koopmann: Ganz einfach: Wir bieten einen wunderbaren Arbeitsplatz mit vielen Freiheiten, Herausforderungen und Verantwortungen. Wir zählen keine Stunden oder Urlaubstage, sondern messen uns an dem, was wir produzieren und daran, wie gut das bei den Usern ankommt. Und wenn morgens die Sonne scheint und keine festen Termine anstehen, verabreden wir uns auch schon mal spontan zum Fahrradtraining und verschieben die Arbeit einfach auf den Abend.
t3n Magazin: Wie validieren Sie gute Entwickler und was erwarten Sie?
Lennart Koopmann: Wir stellen in erster Linie nach Einstellung und Motivation ein. Wer für uns arbeiten will, sollte nicht jeden Tag zur Arbeit kommen, weil es Aufgaben zu erledigen gibt, sondern um das Produkt weiterzuentwickeln und Spaß daran zu haben. Bei so einem komplexen Produkt müssen Mitarbeiter natürlich auch gute Programmierfähigkeiten mitbringen – wir glauben aber, dass man fehlendes technisches Wissen lernen kann. Eine falsche Einstellung kann aber die ganze Firmenkultur vergiften und das lässt sich ganz schwer korrigieren.
t3n Magazin: Empfehlen Sie die Arbeit mit ortsunabhängigen Teams? Und wenn ja, wie organisieren Sie diese?
Lennart Koopmann: Ja. Allerdings muss man die Team-Mitglieder, die nicht im Hauptbüro arbeiten, ständig in alles einbinden und auf dem Laufenden halten. Wenn möglich, sollte man sich regelmäßig für ein paar Tage sehen oder zumindest beim wöchentlichen Team-Frühstück eine Skype-Session offen halten. Ich habe schon gehört, dass manche Firmenmitarbeiter regelmäßig über Skype gemeinsam einen Whiskey trinken. Warum auch nicht? Die Kommunikation muss auch außerhalb der alltäglichen Arbeit stattfinden.
t3n Magazin: Arbeiten Sie auch mit ausländischen Entwicklern?
Lennart Koopmann: Wir haben derzeit noch keine Entwickler aus anderen Zeitzonen, sehen das aber nicht als Problem. Spannend finde ich in diesem Zusammenhang das Buch „REMOTE“, in dem die Basecamp-Erfinder Jason Fried und David Heinemeier über ihre eigenen Erfahrungen mit verteilten Teams berichten.
t3n Magazin: Wie motivieren Sie Ihr Team in Krisenzeiten?
Lennart Koopmann: Allen ist klar, dass es auf dem Weg nach vorne auch mal Krisen gibt, und alle geben von sich aus das Beste, um möglichst schnell wieder aus so einer Krise heraus zu kommen. Gerade am Anfang, vor unserem ersten richtigen Funding, gab es immer mal wieder Momente, in denen nicht ganz klar war, wie es weiter geht. Motivation war aber das kleinste Problem. Jeder weiß immer über die finanzielle Situation der Firma Bescheid. Das schafft Vertrauen.
t3n Magazin: Was sind die drei wichtigsten Erfolgsfaktoren?
Lennart Koopmann: Wenn es irgendwie geht, sollte man das Produkt, das man entwickelt, auch selbst nutzen. Kombiniert mit einem technisch hervorragenden und extrem motivierten Team ist das die beste Voraussetzung. Man ist in der Lage, das Produkt ständig iterativ weiterzuentwickeln, jeder bringt von sich aus neue Ideen ein. Kurz gesagt: bottom-up statt top-down, agil statt Wasserfall.
Thomas Bachem: Gründer, Inhaber und CTO von United Prototype
„Entwickler sollten pragmatische Profis sein!“
t3n Magazin: Können Sie sich, Ihr Unternehmen und Ihre Position kurz vorstellen?
Thomas Bachem: Ich habe als Gründer und CTO mehrerer Startups schon einige Stationen hinter mir. Ich habe unter anderem Erfahrungen bei sevenload, Fliplife, Scaling Technologies und natürlich United Prototype gesammelt. Derzeit widme ich Lebenslauf.com viel Zeit. Das ist ein Online-Editor für Lebensläufe, in dem User monatlich über 15.000 Lebensläufe erstellen.
t3n Magazin: Welche kostenpflichtigen Tools für IT-Projekte können Sie empfehlen?
Thomas Bachem: Die IDEs von Jetbrains – also PhpStorm, PyCharm, RubyMine et cetera – sind sehr empfehlenswert. Das sind die besten IDEs, die ich seit langem verwendet habe. Für das Issue Tracking ist Jira von Atlassian mein absoluter Favorit. Browserstack und Litmus sind für Cross-Browser- und Cross-E-Mail-Client-Testing unverzichtbar. Zum Versenden von Transaktions-E-Mails aus Anwendungen heraus empfehle ich Mailjet – nicht zuletzt, weil es sich um einen französischen und damit europäischen Anbieter handelt, der ausschließlich Server in Europa betreibt. Das ist in Zeiten des NSA-Skandals wichtig.
t3n Magazin: Und wie sieht es bei Open-Source-Tools aus?
Thomas Bachem: Sentry ist eine tolle Open-Source-Lösung für übersichtliches Error Logging. Sie ist gegen geringes Geld auch als SaaS zu haben. Außerdem kann ich das Dojo Toolkit als JavaScript Framework empfehlen – jQuery und Co. sind für mich keine Frameworks, sondern Bibliotheken.
Auch PhantomJS ist ein fantastisches Projekt – ein serverseitiger WebKit-Browser, der sich von der Kommandozeile steuern lässt. Die Technologien, die ich bei meinem Projekt Lebenslauf.com einsetze, habe ich hier alle aufgeführt: https://lebenslauf.com/technology.
t3n Magazin: Welche Erfahrungen haben Sie mit agilen Methoden wie beispielsweise Scrum?
Thomas Bachem: Meine Firmen hatten von Anfang an eine agile DNA. Nicht nur in Bezug auf Technik, sondern auch in anderen Bereichen. Über die Jahre haben wir unsere eigene, an Scrum angelehnte Methodik entwickelt. Essenziell dabei sind der gut gepflegte Issue Tracker, der Sprint-Plan und die täglichen Status-Meetings.
t3n Magazin: Wie organisieren Sie die Zusammenarbeit zwischen Frontend- und Backend-Entwicklern?
Thomas Bachem: Einerseits über die bereits genannten Methoden und Tools, andererseits über möglichst viel bereichsübergreifendes Wissen – reine Front- oder Backend-Entwickler schöpfen selten ihr volles Potenzial aus. Beide Entwicklertypen sollten notfalls auch in anderen Bereichen Hand anlegen können. Frontend-Entwicklung ist heutzutage sehr anspruchsvoll. Viele unterschätzen das. Die zentrale Rolle von JavaScript und die neuen HTML5-Features haben einiges verändert.
t3n Magazin: Welche IT-Prozesse lassen sich outsourcen, welche sollte man lieber inhouse erledigen?
Thomas Bachem: Wir vermeiden das Not-invented-here-Syndrom. Das heißt: Alle Tools, die nicht zentral für unser Geschäftsmodell sind oder bei denen wir mittelfristig nicht technologisch mit Drittanbietern gleichziehen können, kaufen wir ein. Das reicht von E-Mail- über CRM-, Issue-Tracking- bis hin zur Buchhaltungs-Software.Dabei handelt es sich meist – ohne einen der Anbieter kränken zu wollen – um Commodities, also Tools, die sich nur in Details unterscheiden. Sobald es aber um eine Technologie mit klaren USPs geht, die sich bis auf unser Produkt durchschlagen, entwickeln wir es selbst. Gerne geschieht das schrittweise: Wir kaufen zunächst eine externe Lösung ein und ersetzen diese dann durch eine Eigenlösung. Gerade bei Startups ist dieses schlanke, kostensparende Vorgehen sehr wichtig.
t3n Magazin: Wie finden Sie talentierte Entwickler und wie motivieren Sie sie langfristig?
Thomas Bachem: Die besten Entwickler gewinnt man über persönliche Empfehlungen und durch Besuche von Events, wie User-Group-Treffen, DevHouse Fridays, Konferenzen oder etwa dem Chaos Communication Congress.
t3n Magazin: Wie validieren Sie gute Entwickler? Welche Eigenschaften müssen sie mitbringen?
Thomas Bachem: Ich verlasse mich einerseits auf mehrere persönliche Gespräche, die eher locker ablaufen. Andererseits fordere ich mindestens zwei Probearbeitstage. Ein aktiver GitHub-Account oder andere Open-Source-Projekte helfen natürlich enorm bei der Einschätzung.Entwickler sollten heute pragmatische Profis sein. Ich suche die richtige Mischung aus analytischen Fähigkeiten sowie dem Wissen, wie man etwas eigentlich lösen sollte – und der Bereitschaft, mittelfristig Kompromisse einzugehen, um etwas schnell auf die Straße zu bekommen. Man sagt dazu auch oft: Er muss mitdenken können. Entwickler müssen heute längst nicht alles wissen. Aber sie müssen wissen, wonach sie suchen und worauf sie zu achten haben.
t3n Magazin: Können Sie das Arbeiten mit ortsunabhängigen Teams empfehlen? Wenn ja, wie organisieren Sie diese?
Thomas Bachem: Ich habe schon beide Arbeitsweisen ausprobiert, bevorzuge aber meist die klassische Vor-Ort-Arbeit. Mir sind eine tolle Arbeitsatmosphäre und viel Teamgeist sehr wichtig.Ich richte mich da meistens auch nach den Wünschen der Mitarbeiter. Es hilft aber, wenn man schon einige Monate oder gar Jahre im selben Büro gesessen hat.Außerdem hängt es stark vom Projekt ab, ob ortsunabhängiges Arbeiten funktioniert. Je mehr Interdisziplinarität gefordert ist, desto schwieriger ist es. Wenn Leute aus verschiedenen Fachgebieten beteiligt sind, ist die Kommunikation ja oft schon in einem Büro mühsam.
t3n Magazin: Arbeiten Sie auch mit ausländischen Entwicklern in unterschiedlichen Zeitzonen zusammen?
Thomas Bachem: Für den Geschäftsbetrieb nicht, bei Open-Source-Projekten schon. Ich habe bisher immer genügend Entwickler vor Ort gefunden und lege – wie schon erwähnt – viel Wert auf Team Building. Deshalb habe ich hier keine ausländischen Entwickler.
t3n Magazin: Wie motivieren Sie Ihr Team in Krisenzeiten?
Thomas Bachem: Durch durchdachtes und strukturiertes Vorgehen, in das alle einbezogen sind. Krisen entstehen oft durch Chaos. Deshalb hilft es dem Team meist sehr, wenn wir ein Problem mit einem klaren Plan angehen. Dann kann sich am Schluss jeder sicher sein, dass er seinen Teil geleistet und das Beste gegeben hat.
t3n Magazin: Was sind die drei wichtigsten Erfolgsfaktoren?
Thomas Bachem: Als erstes natürlich das Team – insbesondere die Motivation für das Projekt. Zweitens die durchdachte Wahl der technischen Grundlagen und Architektur. Hier kann man sich mit Schnellschüssen viel verbauen. Und drittens ein agiles, iteratives Vorgehen mit viel Kommunikation.
Peter Wolter: Bereichsleiter E-Commerce Solutions & Technology bei Otto
CTO: „Krisen zeigen bei unseren Mitarbeitern die beste Seite.“
t3n Magazin: Können Sie sich, Ihr Unternehmen und Ihre Position kurz vorstellen?
Peter Wolter: Otto hat seit mehr als 20 Jahren Erfahrung im E-Commerce und ist heute Deutschlands größter Online-Händler für Fashion und Lifestyle mit Verbrauchern. Im Projekt Lhotse haben wir in den vergangenen zwei Jahren eine neue Software für otto.de selbst entwickelt. Als Bereichsleiter E-Commerce Solutions und Technology bin ich verantwortlich für die technischen Dimensionen von otto.de. Wir kümmern uns um die Implementierung sämtlicher E-Commerce-Großprojekte, inklusive Evaluierung, technischer Konzeption, Qualitätssicherung, Umsetzung und natürlich die Betriebsführung selbst. Weiter ist der Bereich verantwortlich für die Weiterentwicklung der Produktdatenversorgung der E-Commerce-Plattform.
t3n Magazin: Welche Tools empfehlen Sie?
Peter Wolter: Wir setzen kommerzielle und Open-Source-Komponenten ein. VMware, MongoDB und Splunk werden genauso eingesetzt und betrieben wie tomcat, nginx, Varnish, Jenkins, Puppet und Jira. Ich würde allerdings nie ein Tool oder eine Software empfehlen. Unsere Experten wissen selbst am besten, welche Komponente geeignet ist. Ein Team, das in der Lage ist sich auf neue Komponenten einzulassen, diese auszuprobieren und insbesondere auch zu verwerfen ist hier meine Empfehlung.
t3n Magazin: Welche Erfahrungen haben Sie mit agilen Methoden?
Peter Wolter: Bei der Umsetzung und dem Betrieb von otto.de setzen wir mit Arbeitsmethoden wie Scrum und Continuous Delivery auf eine sehr agile Vorgehensweise. Wir haben damit äußerst gute Erfahrungen gemacht. Experten aus verschiedenen Disziplinen entwickeln in kurzen Zyklen funktionsfähige Software und stellen diese live. Unser Innovationsanspruch basiert auf einem hohen Maß an Integration von Methoden- und Technologie- sowie Produktkompetenz. Scrum, Continuous Delivery und ein integrierter Betrieb schaffen bei otto.de die Voraussetzung, dass Software-Veränderungen jederzeit so schnell wie möglich live gehen können. Gemäß dieser Vorgehensweise werden Funktionalitäten mit dem höchsten Business Value zuerst entwickelt. Je nachdem, wie diese von den Kunden angenommen werden, können Ausbaustufen mit Ideengebern aus den verschiedenen Stellen im Unternehmen frühzeitig ausgearbeitet werden und in die Umsetzung gehen. So kann auch der Erfolg zeitnah überprüft werden. Fehlentwicklungen werden früh erkannt und Risiken somit drastisch reduziert.
t3n Magazin: Wie organisieren Sie die Zusammenarbeit zwischen Frontend- und Backend-Entwicklern?
Peter Wolter: Das ist eine spannende Frage. Wir versuchen, hier nicht zu trennen, sondern eine unmittelbare Zusammenarbeit innerhalb der agilen Teams sicher zu stellen. Der gewählte Schnitt der Architektur in so genannten Vertikalen und deren eindeutige Zuordnung zu agilen Teams erlauben dem jeweiligen Team, die Verantwortung vom Kunden-Interface bis zum Betriebssystem zu übernehmen. Unser Team verantwortet sein Produkt vollständig und kann es mit und am Endkunden testen und erproben. Nur wenn ein Entwicklungsstand am Kunden eingesetzt wird, ist die Entwicklung abgeschlossen.
t3n Magazin: Welche IT-Prozesse kann man outsourcen?
Peter Wolter: Dies ist und war nie eine IT-spezifische Frage. Sourcen Sie nur die Prozesse aus, die Sie beherrschen und die stabil sind. Prozessverantwortung zu delegieren, ohne dass die Prozesse eine hinreichende Reife erreicht haben, ist immer wieder Grund für ein Scheitern von Out-Sourcing Vorhaben. Prozesse die sich verändern müssen, weil sich beispielsweise das Geschäfts- und Marktumfeld wie im E-Commerce ständig wandelt, lassen sich nicht „outsourcen“. Der dafür vertraglich zu verankernde Verantwortungsschnitt ist nach meinen Erfahrungen immer zu statisch.
t3n Magazin: Wie finden und motivieren Sie talentierte Entwickler?
Peter Wolter: Wir führen spannende Projekte durch und reden darüber. Mund-zu-Mund-Propaganda ist ein mächtiges Werkzeug und die Experten-Community ist klein.
t3n Magazin: Wie validieren Sie gute Entwickler und was erwarten Sie?
Peter Wolter: Wir bitten Bewerber, in unseren Teams zu entwickeln. Für mich sind Entwickler stolz auf das Handwerk, neugierig, lieben Herausforderungen und streben oft nach Perfektion. Viel wichtiger sind für Otto aber Teamfähigkeit und der Wunsch, sich inhaltlich einzubringen. Wir wollen nicht mehr zwischen IT- und Fachabteilung trennen, nur weil unterschiedliche Sprachen gesprochen werden.
t3n Magazin: Empfehlen Sie die Arbeit mit ortsunabhängigen Teams?
Peter Wolter: Für uns hat sich noch kein Grund gezeigt, Teams an andere Orte zu verlagern. Bei Otto haben wir die Erfahrung gemacht, dass insbesondere junge Teams Meinungsverschiedenheiten nicht immer selbst lösen können. Zudem kann auch die professionellste, übergreifende Koordination das unmittelbare Gespräch kaum ersetzen. Die Diskussion zielt meist auf den Aufbau dezentraler IT-Organisationen, die für unsere interdisziplinäre E-Commerce-Entwicklung aber nicht adäquat sind.
t3n Magazin: Arbeiten Sie mit ausländischen Entwicklern in unterschiedlichen Zeitzonen zusammen?
Peter Wolter: Interdisziplinäre Produktentwicklung ist für uns die ständige Friktion der Expertenmeinungen. Dies führt zu schnellen, unmittelbaren und aus meiner Sicht sehr guten Entscheidungen. Dieses Konzept erfordert die unmittelbare Kommunikation im Team. Barrieren durch Zeit, Ort und Sprache sind dabei eher hinderlich. Außerdem gehen wir aktuell circa 20 Mal am Tag live – da will keiner auf den anderen warten müssen.
t3n Magazin: Wie motivieren Sie Ihr Team in Krisenzeiten?
Peter Wolter: Krisen zeigen bei unseren Mitarbeitern immer die beste Seite. Sie sind aus sich heraus sehr motiviert. Somit ist es in Zeiten ohne Krise meine Aufgabe sicher zu stellen, dass Mitarbeiter nicht demotiviert sind.
t3n Magazin: Was sind die drei wichtigsten Erfolgsfaktoren?
Peter Wolter: Eine überzeugende Projektvision, aus der klare und operationalisierbare Ziele abgeleitet werden. Eine sehr kleine Koalition aller erforderlichen Stakeholder, mit dem vereinigenden Ziel die Vision zu realisieren und einem persönlichen Commitment zur Projektvision. Und letztlich das Vertrauen in die Mitarbeiter – auf Basis des Vertrauens kann Verantwortung zur Zielerreichung an Mitarbeiter oder Teams delegiert werden. Wenn diese Verantwortung vom Team akzeptiert wird und die Gestaltungsfreiräume ausreichend sind, wird das Team jedes Projekt erfolgreich machen.