Ein Projekt von Grund auf neu zu planen und zu implementieren, so dass es den Kundenanforderungen gerecht wird, sollte jeder einigermaßen erfahrene ITler in seinem Fachgebiet relativ problemlos schaffen.
Zufriedene Kunden:
Oft ist die Auswahl der verwendeten Programmiersprache, Server, Frameworks etc. relativ frei und die komplette Systemarchitektur kann passend zu den Anforderungen geplant werden.
Wenn es sich um historisch gewachsene Systeme bzw. sog. Legacy Applikationen handelt, sehen die Begleitumstände meist weniger rosig aus. Man muss mit der bestehenden Systemlandschaft beginnen, die häufig
- von vielen verschiedenen Personen gewartet und erweitert wurde, die das Systen vielleicht nicht komplett verstanden hatten
- aus verschiedenen Komponenten bestehen, die “irgendwie” zusammenarbeiten
- nicht oder teils veraltet dokumentiert ist
- an ihre Perfomancegrenze stösst
Evtl.kommt dann noch erschwerend hinzu, dass
- kein Mitarbeiter mehr verfügbar ist, der das System im Ganzen versteht
- der bisherige Dienstleister keine Wartung mehr durchführen kann oder will
- der Entwicklungsworkflow ein inzwischen viel größeres Team ausbremst
Dann muss schnell
- ein Fehler analysiert und behoben werden
- die Performance deutlich verbessert werden
- der Workflow angepasst werden, um schneller zu entwickeln und zukünftige Probleme zu minimieren
- die Nutzung der Versionskontrollsoftware (meist svn oder git) vereinfacht werden
Meine Erfahrung liegt genau in der Verbesserung von Projekten, die andere Dienstleister gar nicht annehmen oder bei denen sie “das Handtuch werfen”. In meiner Zeit als Freelancer bin ich immer wieder vor Systemen und Herausforderungen gestanden, die als “unmöglich zu lösen” galten, z.B.:
- Ein System, das nur als Produktivsystem existierte, der Dienstleister gekündigt hatte und nicht einmal mehr für Rückfragen zur Verfügung stand.
- System zur Auswertung von Realtime Clickdaten, das falsche Werte lieferte. Diese konnten aber auf Grund der Datenmenge nur auf dem Produktivsystem geprüft und getestet werden – Testsystem gab es natürlich wieder sowieso keines 🙂
- Massiver Performance Einbruch einer (MySQL) Datenbank bei großen Joins zwischen Kunden- und Anbieterdaten
- Wie bekommen wir schnell ca. 100.000 Dokumente aus dem Google Index und zeigen diese Seiten aber weiterhin für die Kunden transparent an?
Stefan Munz
Seit 1998 bin ich freiberuflich als Programmierer, vor allem im Bereich Web-Entwicklung (z.B. www.sueddeutsche.de oder www.kicker.de) tätig. Mein Studium an der Universität Tübingen im Bereich Informatik habe ich mit Erfolg abgeschlossen.
Durch die Realisierung von zunehmend größeren Projekten in komplexen und heterogenen Umgebungen, habe ich ein breites Spektrum an Programmiersprachen und Technologien kennengelernt. Große Projekte entstehen durch Zusammenarbeit. Deshalb arbeite ich auch gerne im Team und bringe meine technischen Kernkompetenzen ein:
- Git Schulung und Beratung
- Perl Experte (modperl, DBI, …)
- Imperia Experte
- Java (z.B. PDF Generierung mit iText)
- Javascript (z.B. jQuery)
- php (z.B. symfony)
Seit über 20 Jahren bin ich in großen Kundenprojekten tätig. Häufig kommt dabei ein CMS (z.B. Imperia) zum Einsatz und – wie häufig bei gewachsenen Systemen- ist die gesamte Umgebung oft sehr heterogen. Was andere vielleicht als Schwierigkeit empfinden, sehe ich als Herausforderung.
U.a. mit den Imperia Versionen 7,8,9 und 10 habe ich jenseits der normalen CMS Entwicklung verschiedenste Erweiterungen realisiert, z.B.:
- automatische Content Verteilung
- automatischer Content Im- und Export (News, Videos von Drittanbietern)
- Personalisierung der Website für den Endnutzer mittels eines Personalisierungsservers
- Realtime Klick- und Besucher-Tracking
- Deploy-/Release Management mit svn / subversion bzw. git
In den letzten Jahren habe ich zunehmend Schulungen und Workshops im Bereich svn, git und Agilem Vorgehen (Scrum, bzw. eine auf die Kundenwünsche angepasste Version von Scrum) durchgeführt. Durch die durchweg positive Resonanz konnte ich auch in diesem Bereich zunehmend für namhafte Kunden wie z.B. das Fraunhofer Institut arbeiten.
Sollten Sie Bedarf an externer Unterstützung haben, setzen Sie sich mit mir in Verbindung oder sehen Sie sich meine Referenzen an.
Unter www.git-profi.de finden Sie ausführliche Details zu meiner Git Schulung und meinem Vorgehen um Ihre Arbeit mit Git zu standartisieren. Mein Devise lautet, schule nur was wirklich benötigt wird, aber richtig – und zwar für den optimalen Einsatz in der täglichen Arbeit. Damit genügt auch 1 Schulungstag für
- git commit
- git push/pull
- Branchen
- Mergen
- revert
- Merge Request
- u.v.m.
und wenn es dann wirklich in die Tiefe gehen soll, sind die Fragestellungen oft recht unternehmensspezifisch – da macht ein Coaching bzw. eine Beratung mehr Sinn.