123
Der erfolgreiche Programmierer Stephan Schmidt 1&1 Internet AG PHP World 2010, München Montag, 8. November 2010

Der Erfolgreiche Programmierer

Embed Size (px)

DESCRIPTION

Karriereplanung für Software-Entwickler. Vortrag auf der PHP World 2010 in München

Citation preview

Page 1: Der Erfolgreiche Programmierer

Der erfolgreiche Programmierer

Stephan Schmidt1&1 Internet AG

PHP World 2010, München

Montag, 8. November 2010

Page 2: Der Erfolgreiche Programmierer

...oder: Was wir von Superhelden lernen können.

Stephan Schmidt1&1 Internet AG

PHP World 2010, München

Montag, 8. November 2010

Page 3: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 4: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 5: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 6: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 7: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 8: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 9: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 10: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 11: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 12: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 13: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 14: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 15: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 16: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 17: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 18: Der Erfolgreiche Programmierer

Stephan Schmidt

Montag, 8. November 2010

Page 19: Der Erfolgreiche Programmierer

Was bedeutet erfolgreich?

Montag, 8. November 2010

Page 20: Der Erfolgreiche Programmierer

Was bedeutet erfolgreich?

Montag, 8. November 2010

Page 21: Der Erfolgreiche Programmierer

Was bedeutet erfolgreich?

Montag, 8. November 2010

Page 22: Der Erfolgreiche Programmierer

Was bedeutet erfolgreich?

Montag, 8. November 2010

Page 23: Der Erfolgreiche Programmierer

Was bedeutet erfolgreich?

Montag, 8. November 2010

Page 24: Der Erfolgreiche Programmierer

Was immer Sie

wollen...

Was bedeutet erfolgreich?

Montag, 8. November 2010

Page 25: Der Erfolgreiche Programmierer

Wie werden Sie erfolgreich?

Montag, 8. November 2010

Page 26: Der Erfolgreiche Programmierer

Wie werden Sie erfolgreich?

Schauen wir uns Beispiele an...

Montag, 8. November 2010

Page 27: Der Erfolgreiche Programmierer

Wie werden Sie erfolgreich?

Montag, 8. November 2010

Page 28: Der Erfolgreiche Programmierer

Wie werden Sie erfolgreich?

Von einem anderen Planeten...

Montag, 8. November 2010

Page 29: Der Erfolgreiche Programmierer

Wie werden Sie erfolgreich?

Von einem anderen Planeten... Milliardär...

Montag, 8. November 2010

Page 30: Der Erfolgreiche Programmierer

Wie werden Sie erfolgreich?

Von einem anderen Planeten... Milliardär... Gamma-Strahlung

ausgesetzt...

Montag, 8. November 2010

Page 31: Der Erfolgreiche Programmierer

Der Plan für die Weltherrschaft

Montag, 8. November 2010

Page 32: Der Erfolgreiche Programmierer

Der Plan für die WeltherrschaftNächste Stunde

Montag, 8. November 2010

Page 33: Der Erfolgreiche Programmierer

Der Plan für die WeltherrschaftNächste Stunde

1. Vision

Montag, 8. November 2010

Page 34: Der Erfolgreiche Programmierer

Der Plan für die Weltherrschaft

2. Werkzeuge

Nächste Stunde

1. Vision

Montag, 8. November 2010

Page 35: Der Erfolgreiche Programmierer

Der Plan für die Weltherrschaft

2. Werkzeuge

3. Kräfte

Nächste Stunde

1. Vision

Montag, 8. November 2010

Page 36: Der Erfolgreiche Programmierer

Der Plan für die Weltherrschaft

2. Werkzeuge

3. Kräfte

4. Ausbildung

Nächste Stunde

1. Vision

Montag, 8. November 2010

Page 37: Der Erfolgreiche Programmierer

Der Plan für die Weltherrschaft

2. Werkzeuge

3. Kräfte

4. Ausbildung

5. Vorsicht Schurken!

Nächste Stunde

1. Vision

Montag, 8. November 2010

Page 38: Der Erfolgreiche Programmierer

Montag, 8. November 2010

Page 39: Der Erfolgreiche Programmierer

Teil 1- Vision

Montag, 8. November 2010

Page 40: Der Erfolgreiche Programmierer

Ihre eigene Vision

• Überlegen Sie sich, wo Sie hin wollen.

• Definieren Sie sich ein Ziel.

• Verfolgen Sie Ihren eigenen Plan und nicht den Plan von anderen.

Montag, 8. November 2010

Page 41: Der Erfolgreiche Programmierer

Das Hier und Jetzt zählt.• Denken Sie nicht nur

daran, wie Sie Ihr Ziel jetzt erreichen können.

• Erledigen Sie Ihre aktuelle Arbeit so gut wie Sie können.

• Überlegen Sie, was Sie wirklich für Ihr Unternehmen oder Ihren Kunden wert sind.

Montag, 8. November 2010

Page 42: Der Erfolgreiche Programmierer

Seien Sie professionell.• Übernehmen Sie

Verantwortung für sich, Ihre Ausbildung, Ihren Code und Ihre Fehler.

• Erledigen Sie unliebsame Arbeiten mit den selben Profes-sionalität wie „coole“ Aufgaben - Retten Sie, egal ob Kätzchen oder die Welt.

Montag, 8. November 2010

Page 43: Der Erfolgreiche Programmierer

Lieben Sie Ihre Arbeit.• Software-Entwicklung

ist ein kreativer Prozess.

• Ihre Arbeit muss Ihnen Spaß machen, wenn Sie etwas wirklich Groß-artiges entwickeln wollen.

• Andernfalls: Suchen Sie sich einen anderen Job.

Montag, 8. November 2010

Page 44: Der Erfolgreiche Programmierer

Gehen Sie richtig mit Fehlern & Misserfolgen um.• Misserfolge gehören zur

Software-Entwicklung.

• Vertuschen Sie Ihre eigenen Fehler nicht, sondern gehen Sie konstruktiv damit um.

• Lernen Sie aus Fehlern und wiederholen Sie diese nicht.

Montag, 8. November 2010

Page 45: Der Erfolgreiche Programmierer

Suchen Sie sich selbst Ihre Gelegenheiten.

• Warten Sie nicht, bis andere Ihnen Möglichkeiten bieten, sich selbst weiter-zuentwickeln.

• Nehmen Sie Ihr Schicksal selbst in die Hand.

Montag, 8. November 2010

Page 46: Der Erfolgreiche Programmierer

Gehen SieRisiken ein.

• Denken Sie nicht darüber nach, „nicht zu verlieren“. Denken Sie darüber nach, zu gewinnen.

• Angst ist kein guter Ratgeber.

• Hören Sie nicht auf Ihre Eltern.

Montag, 8. November 2010

Page 47: Der Erfolgreiche Programmierer

Antworten Sie zuerst mit „Ja“ statt „Nein“.

• Gehen Sie die Dinge immer erst positiv an.

• Suchen Sie Alternativen, falls die Wünsche des Kunden nicht möglich sind.

• Wenn es wirklich keine Lösung gibt, schließen Sie mit einem klaren „Nein“.

Montag, 8. November 2010

Page 48: Der Erfolgreiche Programmierer

Vermarkten Sie Ihr Produkt.

• Ihr Produkt sind Sie.

• Lernen Sie, auf die Zielgruppe in einem Gespräch angemessen zu reagieren.

• „Sie sind, was Sie erklären können.“

• Seien Sie bemerkenswert.

Montag, 8. November 2010

Page 49: Der Erfolgreiche Programmierer

Montag, 8. November 2010

Page 50: Der Erfolgreiche Programmierer

Teil 2 - Werkzeuge

Montag, 8. November 2010

Page 51: Der Erfolgreiche Programmierer

Die richtigen Werkzeuge

• Werkzeuge sind kein Selbstzweck.

• Werkzeuge müssen Sie dabei unter-stützen, die eigent-liche Arbeit zu tun.

• Durch Werkzeuge haben Sie Zeit für das Wesentliche.

Montag, 8. November 2010

Page 52: Der Erfolgreiche Programmierer

Nutzen Sie die richtigen Werkzeuge richtig.

• Moderne IDEs nehmen Ihnen viel Arbeit ab. Nutzen Sie sie.

• Leider geht damit auch das Wissen verloren. Lernen Sie, was hinter den Kulissen passiert.

• Setzen Sie Tools ein, um zu automatisieren.

Montag, 8. November 2010

Page 53: Der Erfolgreiche Programmierer

Wählen Sie die richtigen Tools aus.

• Setzen Sie Tools und Frameworks nicht nur ein, weil Sie hip sind.

• Überlegen Sie, wohin Ihre Applikation sich entwickeln könnte.

• Achten Sie auf eine harmonische Zusammenstellung.

Montag, 8. November 2010

Page 54: Der Erfolgreiche Programmierer

Montag, 8. November 2010

Page 55: Der Erfolgreiche Programmierer

Teil 3 - Kräfte

Montag, 8. November 2010

Page 56: Der Erfolgreiche Programmierer

Nutzen Sie Ihre Kräfte

• Die richtige Mixtur Ihrer Fähigkeiten macht Sie einzigartig.

• Denken Sie darüber nach, welche Fähig-keiten Sie benötigen, um Ihre Vision zu verwirklichen.

Montag, 8. November 2010

Page 57: Der Erfolgreiche Programmierer

The Chameleon

Montag, 8. November 2010

Page 58: Der Erfolgreiche Programmierer

The Chameleon

Kann Sich überall einfügen, ohne

aufzufallen.

Montag, 8. November 2010

Page 59: Der Erfolgreiche Programmierer

Bauen Sie fachliches Wissen auf.

• Sie müssen verstehen, was ihr Kunde möchte und wie er sein Geld verdient.

• Machen Sie Ihrem Kunden Vorschläge, wie er sein Geschäft verbessern kann.

Montag, 8. November 2010

Page 60: Der Erfolgreiche Programmierer

Nutzen Sie fachliche Sprachen.

• Setzen Sie domänenspe-zifische Sprachen ein.

• Trennen Sie technische Fehler von fachlichen Fehlern.

• Nutzen Sie ein Tool wie „FIT“, um den Kunden Erwartungen formulieren zu lassen.

Montag, 8. November 2010

Page 61: Der Erfolgreiche Programmierer

General General

Montag, 8. November 2010

Page 62: Der Erfolgreiche Programmierer

General General

Kann die verschiedensten

Aufgaben erledigen.

Montag, 8. November 2010

Page 63: Der Erfolgreiche Programmierer

Seien Sie ein Generalist• Generalisten sind selten.

• Generalisten sind wichtig, um die Zusammenhänge zu verstehen.

• Seien Sie flexibel, wenn es darum geht, verschiedene Aufgaben zu übernehmen.

Montag, 8. November 2010

Page 64: Der Erfolgreiche Programmierer

The Specialist

Montag, 8. November 2010

Page 65: Der Erfolgreiche Programmierer

The Specialist

Hat sich auf den Umgang mit einer Waffe

spezialisiert.

Montag, 8. November 2010

Page 66: Der Erfolgreiche Programmierer

Seien Sie ein Spezialist.• Ein Spezialist bedeutet,

Expertenwissen in mindestens einem Gebiet zu haben.

• Es bedeutet nicht, nur über eine Sache Bescheid zu wissen.

• Tun Sie sich durch Wissen hervor, das Sie einzigartig macht.

Montag, 8. November 2010

Page 67: Der Erfolgreiche Programmierer

MissMeasure

Montag, 8. November 2010

Page 68: Der Erfolgreiche Programmierer

MissMeasure

Schätzt alle Situationen immer richtig ein.

Montag, 8. November 2010

Page 69: Der Erfolgreiche Programmierer

Lernen Sie, den Aufwand richtig zu schätzen.

• Kunden und Vorgesetzte brauchen Zahlen, auf die Sie sich verlassen können.

• Schätzen Sie Aufgaben auch im Kleinen für sich und prüfen Sie danach, wie lange Sie wirklich gebraucht haben.

Montag, 8. November 2010

Page 70: Der Erfolgreiche Programmierer

Time Master

Montag, 8. November 2010

Page 71: Der Erfolgreiche Programmierer

Time Master

Kann in die Zukunft sehen und ist in der Lage, in die Zukunft zu reisen

und diese zu be-einflussen.

Montag, 8. November 2010

Page 72: Der Erfolgreiche Programmierer

Antizipieren Sie, was Ihr Kunde möchte.

• Hören Sie genau zu und versuchen sich in Ihren Kunden oder Vor-gesetzen reinzudenken.

• Erledigen Sie die Aufgaben, bevor Sie dazu aufgefordert werden.

Montag, 8. November 2010

Page 73: Der Erfolgreiche Programmierer

Ihr Code lebt bis in die Zukunft.

• Künftige Entwickler werden Ihren Code betreuen müssen, Sie beeinflussen also deren Zukunft.

• Schreiben Sie den Code so, dass andere ihn verstehen können, nicht, um zu zeigen, dass Sie der Größte sind.

Montag, 8. November 2010

Page 74: Der Erfolgreiche Programmierer

Es gibt keine Interims-lösungen.

• Interimslösungen werden nicht automatisch durch eine saubere Lösung ersetzt.

• Ein @todo im DocBlock reicht nicht aus.

• Planen Sie auch die Ablösung dieser Lösungen.

Montag, 8. November 2010

Page 75: Der Erfolgreiche Programmierer

MissMistake

Montag, 8. November 2010

Page 76: Der Erfolgreiche Programmierer

MissMistake

Kann Fehler erkennen und lösen.

Montag, 8. November 2010

Page 77: Der Erfolgreiche Programmierer

Überprüfen Sie zuerst Ihren Code.

• Die Zend Engine wird nur in den wenigstens Fällen schuld am Problem sein.

• Unwahrscheinlich ist auch, dass der Fehler im Betriebssystem liegt.

• Halten Sie sich nicht für unfehlbar.

Montag, 8. November 2010

Page 78: Der Erfolgreiche Programmierer

Reduzieren Sie das Problem auf das Problem.• Wenn ein Stück

Software nicht läuft, dann extrahieren Sie es soweit wie möglich aus dem Kontext.

• Schreiben Sie ein einfaches „test.php“ Skript.

• Das ist der einzige Weg, das Problem zu finden.

Montag, 8. November 2010

Page 79: Der Erfolgreiche Programmierer

Vermeiden Sie Panik.• Bleiben Sie ruhig, auch

wenn Sie einen Fehler gemacht haben.

• Schalten die Sie Unit-Tests für einen Quick-Fix nicht aus.

• In Panik passieren Ihnen nur noch mehr Fehler.

Montag, 8. November 2010

Page 80: Der Erfolgreiche Programmierer

Montag, 8. November 2010

Page 81: Der Erfolgreiche Programmierer

Teil 4 - Ausbildung

Montag, 8. November 2010

Page 82: Der Erfolgreiche Programmierer

Achten Sie auf Ihre Ausbildung

• Ihre Ausbildung ist nie zu Ende.

• Denken Sie zurück, wie Ihr Job vor zwei Jahren ausgesehen hat.

• Glauben Sie, sich ihn in zwei Jahren vorstellen zu können?

Montag, 8. November 2010

Page 83: Der Erfolgreiche Programmierer

Super Baby

Montag, 8. November 2010

Page 84: Der Erfolgreiche Programmierer

Super BabySucht sich immer Helden,

von denen sie lernt.

Montag, 8. November 2010

Page 85: Der Erfolgreiche Programmierer

Suchen Sie sich einen Mentor.

• Es ist keine Schwäche, jemand anderen um Hilfe zu bitten.

• Lernen Sie von der Erfahrung anderer.

• Mentoren strukturieren Ihren Lernprozess.

Montag, 8. November 2010

Page 86: Der Erfolgreiche Programmierer

Seien Sie der Schlechteste.• Suchen Sie sich Teams,

in denen bessere Entwickler sind als Sie.

• Orientieren Sie sich immer an den Besten.

• Dadurch werden Sie nicht faul.

Montag, 8. November 2010

Page 87: Der Erfolgreiche Programmierer

The Professor

Montag, 8. November 2010

Page 88: Der Erfolgreiche Programmierer

The Professor

Bildet neue Helden aus und gibt sein Wissen

weiter.

Montag, 8. November 2010

Page 89: Der Erfolgreiche Programmierer

Seien Sie ein Mentor.• Andere auszubilden

bringt auch Sie persönlich weiter.

• Lernen Sie die Probleme aus einem anderen Blickwinkel kennen und finden Sie alternative Lösungen.

Montag, 8. November 2010

Page 90: Der Erfolgreiche Programmierer

Babel Boy

Montag, 8. November 2010

Page 91: Der Erfolgreiche Programmierer

Babel BoySpricht sämtliche

Sprachen des Universums.

Montag, 8. November 2010

Page 92: Der Erfolgreiche Programmierer

Lernen Sie jedes Jahr eine neue Sprache.

• Lernen Sie dabei Sprachen, die grundlegend ver-schieden sind zu den Sprachen, die Sie schon kennen.

• Verstehen Sie dabei auch die Kultur der neuen Sprache.

Montag, 8. November 2010

Page 93: Der Erfolgreiche Programmierer

Lesen Sie Code, keine Bücher.

• Lernen Sie aus dem Code Ihrer Kollegen, wie diese Probleme lösen.

• Stellen Sie fest, welcher Code leicht verständlich ist und welcher nur Gibberish.

Montag, 8. November 2010

Page 94: Der Erfolgreiche Programmierer

KarateGirl

Montag, 8. November 2010

Page 95: Der Erfolgreiche Programmierer

KarateGirl

Ist die beste Karate-Kämpferin der Welt.

Montag, 8. November 2010

Page 96: Der Erfolgreiche Programmierer

Üben, üben, üben• Es gibt keine geborenen

Talente.

• Machen Sie Code-Katas und versuchen Sie immer schnellere und bessere Lösungen für das Problem zu finden.

• Nur Übung macht den Meister.

Montag, 8. November 2010

Page 97: Der Erfolgreiche Programmierer

Hourman

Montag, 8. November 2010

Page 98: Der Erfolgreiche Programmierer

HourmanSchluckt eine Pille und

hat dann für eine Stunde Superkräfte.

Montag, 8. November 2010

Page 99: Der Erfolgreiche Programmierer

Nutzen Sie Ihre„Hour of Power“

• Software-Entwicklung ist ein Marathon-Lauf, kein Sprint.

• Ständige Überstunden führen zu schlechterer Arbeit.

• Brennen Sie acht Stunden und entspan-nen Sie danach.

Montag, 8. November 2010

Page 100: Der Erfolgreiche Programmierer

Multiple Man

Montag, 8. November 2010

Page 101: Der Erfolgreiche Programmierer

Multiple Man

Kann sich beliebig oft duplizieren. Jede Kopie

hat das Wissen des Originals zum Zeitpunkt

des Duplizierens.

Montag, 8. November 2010

Page 102: Der Erfolgreiche Programmierer

Reduzieren Sie den „Truck-Factor“

• Geben Sie Ihr Wissen weiter.

• Unentbehrlich zu sein ist weder für Ihren Vorgesetzten, noch für Sie von Vorteil.

• Wer unentbehrlich ist, wird nicht befördert.

Montag, 8. November 2010

Page 103: Der Erfolgreiche Programmierer

Montag, 8. November 2010

Page 104: Der Erfolgreiche Programmierer

Teil 5 - Schurken

Montag, 8. November 2010

Page 105: Der Erfolgreiche Programmierer

Bekämpfen Sie Ihre Schurken

• Auf dem Weg zum Erfolgreichen Programmierer begegnen Ihnen viele Schurken.

• Erkennen und besiegen Sie sie, um wirklich erfolgreich zu werden.

Montag, 8. November 2010

Page 106: Der Erfolgreiche Programmierer

Dr. Copy&

Dr. Paste

Montag, 8. November 2010

Page 107: Der Erfolgreiche Programmierer

Dr. Copy&

Dr. PasteKopieren die Kräfte der

Superhelden.

Montag, 8. November 2010

Page 108: Der Erfolgreiche Programmierer

Kopieren Sie nicht nur.• „Copy&Paste“ ist nicht

„Monkey see, monkey do.“

• Kopieren Sie Code nicht einfach, sondern verstehen Sie ihn und schreiben ihn neu.

• Nur wenn Sie etwas selbst machen, lernen Sie dabei.

Montag, 8. November 2010

Page 109: Der Erfolgreiche Programmierer

Spider Girl

Montag, 8. November 2010

Page 110: Der Erfolgreiche Programmierer

Spider GirlLähmt ihre Gegner und hält sie in ihrem Netz

fest.

Montag, 8. November 2010

Page 111: Der Erfolgreiche Programmierer

Halten Sie nicht anallem fest.

• Kaum ein Umfeld ändert sich so, wie unseres.

• Akzeptieren Sie Änderungen und passen Sie sich an diese an.

• „Embrace Change!“

Montag, 8. November 2010

Page 112: Der Erfolgreiche Programmierer

Abra-Kadabra

Montag, 8. November 2010

Page 113: Der Erfolgreiche Programmierer

Abra-Kadabra

Löst jedes Problem durch magische Tricks.

Montag, 8. November 2010

Page 114: Der Erfolgreiche Programmierer

Verlassen Sie sich nicht auf Abrakadabra.

• Verwenden Sie keinen Code, den Sie mit „Some Magic happens here“ kommentieren.

• Verstehen Sie immer, was der Code tut, den Sie verwenden, damit Sie eine Lösung haben, falls er es nicht mehr tut.

Montag, 8. November 2010

Page 115: Der Erfolgreiche Programmierer

Megalo-maniac

Montag, 8. November 2010

Page 116: Der Erfolgreiche Programmierer

Megalo-maniac

Hält sich für den größten Bösewicht aller Zeiten.

Montag, 8. November 2010

Page 117: Der Erfolgreiche Programmierer

Verfallen Sie nicht in Megalomanie

• Software-Entwicklung ist keine Superkraft.

• Lassen Sie sich nicht von Ihren eigenen Erfolgen blenden.

• Bleiben Sie auf dem Teppich.

Montag, 8. November 2010

Page 118: Der Erfolgreiche Programmierer

Die Helden

The Chameleon General General The Specialist

Miss Measure Time Master Miss Mistake

Montag, 8. November 2010

Page 119: Der Erfolgreiche Programmierer

Die Helden

Babel Boy

Karate Girl Hourman

Super Baby The Professor

Multiple Man

Montag, 8. November 2010

Page 120: Der Erfolgreiche Programmierer

Spider Girl Dr. Copy & Dr. Paste

Abra KadabraMegalomaniac

Die Schurken

Montag, 8. November 2010

Page 121: Der Erfolgreiche Programmierer

Neal FordAndrew HuntDavid Thomas

Produktiv programmieren

Chad Fowler

Der leidenschaftliche Programmierer

Der pragmatische Programmierer

Buchempfehlungen

Montag, 8. November 2010

Page 122: Der Erfolgreiche Programmierer

Riddle me this!

Haben Sie noch Fragen?

Montag, 8. November 2010