Morning View

Home

Agile Software Development
Software-Entwicklung ist eine Tätigkeit mit einer eigenen Dynamik. Viele Vorgehen die in anderen Bereichen Produktivität oder Qualität steigern funktionieren hier nicht. Das Agile Manifestbeschreibt das sehr gut – Software Entwicklung hat viel mit Kommunikation und Kollaboration zu tun, genauso wie mit schnellen Iterationen. Die Zukunft gehört den Teams die diese Methodik wirklich verstehen. Geschwindigkeit kommt nicht aus der Umsetzung von agilen Methoden sondern aus der Motivation beider Seiten, schnell zu arbeiten und eine Lösung zu finden.
Xing | LinkedIn | Skype:martinstolz11
HTML5 App Development
Der Markt von mobilen Anwendungen ist groß und wächst mit der fast vollständigen Smartphone-Abdeckung weiter massiv. In den meisten Fällen ist eine App die Verlängerung eines bestehenden Business Modells. Aber wie? HTML5 oder Native? Was passt zu meinem Team, Technologie und Problem? Anhand eines kompletten Beispiels kann ich die App-Entwicklung mit HTML5 aufzeigen und gegenüber der nativen Entwicklung abgrenzen. Die Grenzen sind fliessend und tatsächlich ist je nach Anwendungsfall unterschiedlich zu entscheiden – nicht zuletzt auch bezüglich der Integration in die bestehende Development-Strategie.
Xing | LinkedIn | Skype:martinstolz11
Vorgehensmodelle & Teamorganisation
Agile Vorgehensmodelle basieren hauptsächlich auf dem Grundsatz: „Inspect and Adapt“. Das bedeutet das Verstehen von Zusammenhängen und das Adaptieren der Methode. SCRUM ist kein „Silver Bullet“ auch wenn es so beworben wird. Allerdings gibt es einige sehr sinnvolle Komponenten die tatsächlich zu besserer Arbeitsorganisation führen. Ich habe mehrfach SCRUM Einführungen begleitet und kann aus der Praxis sprechen, was funktioniert und was nicht.
Xing | LinkedIn | Skype:martinstolz11
Continuous Delivery & DevOps
Das Thema Continuous Delivery ist für mich „embrace and extend“ angewendet auf die klassischen Probleme beim Release-Management. Anstatt ein Release kompliziert zu machen und damit jedes mal Zeit zu verlieren, muss es schnell und unkompliziert sein. Was hindert mich daran, nach einem Release gleich nochmal eins zu machen? Downtimes? Builds die ewig dauern? Abstimmungsaufwände? Releases kann man hervorragend automatisieren, bis ein Release das Klicken eines Buttons bedeutet. Dabei spielt auch das Thema DevOps eine Rolle: schnelle Durchlaufzeiten sind nur erreichbar wenn es keine Abteilungsgrenzen gibt.
Xing | LinkedIn | Skype:martinstolz11
Firefighting
"no cure no pay"
F*ck... Production ist down. Datenbanken korrupt. Memory Leaks und Lastprobleme machen Produktivbetrieb unmöglich. Ich war selbst oft genug in der Situation. In so einem Fall biete ich meinen „no cure no pay“ Service an. Ich löse ihr Problem – ansonsten verdiene ich nichts. Warum? Zwei Gründe: ich lerne selbst am meisten bei der Lösung komplizierter Probleme und zweitens, wenn ich es nicht lösen kann will ich keine neuen Probleme zu den bestehenden hinzufügen wie zum Beispiel eine Rechnung von jemandem der nichts geliefert hat...
Xing | LinkedIn | Skype:martinstolz11
Produktentwicklung & Lean Startup
Mittlerweile haben agile Vorgehensmodelle auch in der Produktentwicklung Fuß gefasst. Über kurze Iterationen, das Konzept eines „Minimum Viable Product“ und die strukturierte und frühe Einbeziehung echter Kunden kann man neue Produktideen am Markt testen, ohne den kompletten Implementierungsaufwand zu leisten. Das setzt ein optimales und kooperatives Zusammenarbeiten von Product Owner und Development Team voraus. Ohne Verständis der Business-Seite und der Idee hinter dem Test wird ein valides Ergebnis schwer zu erzielen sein.
Xing | LinkedIn | Skype:martinstolz11
Architekturberatung
Als Architekt für hochperformante Web-Plattformen wie zooplus.de oder holidayinsider.com weiss ich, dass eine erfolgreiche Plattform ein Zusammenspiel von allen Komponenten ist. Hier kommt es nicht nur auf die Auswahl der Programmiersprache an, sondern auf jeden einzelnen Bestandteil wie Load Balancer, Clustering, Deployment, Operations, Recovery-Szenarien und Datenhaltung. Eine gute Architektur ist niemals im Weg sondern unterstützt das Team optimal bei Implementierung und Betrieb der Plattform. Eine gute Architektur erhält und entwickelt sich selbst durch das Team und muss nicht durchgesetzt werden.
Xing | LinkedIn | Skype:martinstolz11
Monitoring, Dashboards und KPI-Interpretation
Metriken gibt es viele, doch oft werden nicht die richtigen Daten erhoben oder die Interpretation fällt schwer. Sowohl bei der Erhebung als auch bei der Interpretation der Daten finde ich eine für den Anwendungsfall optimale Lösung. Zum perfekten Monitoring gehören auch die Dashboards um relevante Metriken möglichst breit zu verteilen und das Überwachen zur Publikumsaufgabe zu machen. So wächst das Engagement des Teams und Erfolge sind sofort sichtbar. Die passende Anzeige-Hardware konzeptioniere und liefere ich natürlich auch.
Xing | LinkedIn | Skype:martinstolz11
Technologien, Frameworks und Sprachen
Obwohl mein Fokus überwiegend in der JAVA/JEE Welt liegt, bin ich heimlicher PHP-Fan und arbeite neuerdings sehr viel mit JavaScript. In der Entwicklung ist meiner Ansicht nach das größte Potential in der Kombination von verschiedenen Sprachen und Technologien, was durch SoA und unkomplizierte Datenformate wie JSON noch weiter vereinfacht wird. Für die meisten Anwendungsfälle habe ich einen Standard-Technologie-Stack mit Referenzimplementierung den ich zur Lösung des Problems einsetzen kann. In JAVA basiert das beispielsweise auf dem Spring Framework, Build mit Maven und deployed mit Tomcat, Frontend mit Freemarker und jQuery und Continuous Integration mit TeamCity.
Xing | LinkedIn | Skype:martinstolz11
 

mstsoft-monitoring-usm.jpg