The only way to do great work is to love what you do.

– Steve Jobs –

Consulting

Consulting

Ich unterstütze Sie als Technologieberater und Consultant bei der Projektakquise (“Pitching”), Konzepterstellung und bei der Auswahl geeigneter Technologien für die Erstellung oder Erweiterung Ihrer Software:

  • Erstellen und Implementieren von Entwicklungsprozessen (Release Management, Continuous Integration, Continuous Delivery)
  • Auswahl von Technologien insb. im Bereich Open Source
  • Erstellen von technischen Konzepten
  • Technologiepräsentationen
Development

Development

Als Softwarearchitekt unterstütze ich Sie bei der Umsetzung von Softwareprojekten. Zu meinen Leistungen gehören dabei:

  • API- und Schnittstellen-Design
  • Framework-Entwicklung
  • Refactorings
  • Erweiterung von Legacy Code
  • Prototyping
  • Proof-Of-Concept-Erstellung
  • Anforderungsanalyse
  • Objektorientierte Analyse und Objektorientiertes Design
Coaching

Coaching

In meiner Rolle als Coach gebe ich mein Wissen an Ihre Entwickler weiter. In Workshops oder Einzelcoachings vermittle ich praktisch anwendbares Wissen und greife dabei auch auf Beispiele aus konkreten Projekten zurück.

Als langjähriger Java-Specialist kann ich Sie kurzfristig bei geschäftsrelevanten Problemen unterstützen:

  • Heapdump-Analyse (z.B. im Falle von OutOfMemory-Problemen)
  • Performanceoptimierung
  • Garbage Collector Tuning

svenpanko

Hintergrund

  • Diplom-Wirtschaftsinformatiker
  • Softwareentwickler seit 1994
  • Java-Entwickler seit 2001
  • (Lead-) Developer, Engineer und Architekt in mehreren großen Projekten (> 100.000 Lines of Code)

Was erwartet Sie, wenn Sie mich beauftragen?

Sie gewinnen ein Teammitglied, mit

  • lösungsorientiertem Denken und Handeln
  • Spaß an Herausforderungen
  • jeder Menge Eigeninitiative
  • einer schnellen Auffassungsgabe

Wobei kann ich Sie unterstützen?

Abgesehen von der klassischen Softwareentwicklung liegen meine fachlichen Stärken in den folgenden Bereichen:

  • Performance-Optimierung und Heapdump-Analyse von Java-basierten Anwendungen
  • API- und Framework-Design
  • Enterprise Application Integration (Webservices, REST, ESB)
  • High-Throughput-Applications (inkl. concurrency, low latency, asynchronous computing, usw.)
  • Verteilte Systeme (Cloud Computing)
  • Krisenmanagement (= festgefahrene Projekte wieder auf Kurs bringen)
  • Technologieevaluation
  • Technische Projektleitung und Begleitung bei Ausschreibungen
  • Technische Projektleitung und Begleitung bei Ausschreibungen, inkl. Vorstellung beim Kunden (“Pitching”)

Daneben biete ich Trainings für Teams, Architekten und Senior-Entwickler an, in denen ich die oben genannten Fertigkeiten vermittle. Daneben schule ich Teams in Best Practices für alle Technologien, mit denen ich seit vielen Jahren arbeite.
Bei all meinen Angeboten lege ich viel Wert auf den beratenden Anteil, damit Sie nicht nur ein qualitativ hervorragendes Ergebnis erhalten, sondern auch die angrenzenden Anforderungen erfüllt werden:

  • hohe Wirtschaftlichkeit
  • ideale Time-to-Market
  • gutes Kosten-/Nutzen-Verhältnis

Ist das nicht ein ziemlich bunter Mix?

Der Eindruck kann entstehen – aber gibt es nicht auch einen gemeinsamen Nenner in meinem Angebot? Für mich bedeutet eine kompetente IT-Beratung, dass bei den gängigen Problemen, die bei der Erstellung von Software auftreten, eine Unterstützung erfolgt. Da ich bereits mehrere große Softwareprojekte in verschiedenen Rollen realisiert habe, kann ich an vielen Stellen unterstützen. Wem ist z.B. mit einem Performance-Experten gedient, der die wirtschaftliche Sicht vernachlässigt und dessen Code-Optimierungen zwar die Software beschleunigen, aber soviel Zeit für die Implementierung verbrauchen, dass die ideale Time-to-Market verpasst wird?

Warum arbeite ich freiberuflich als IT-Consultant?

Vor ungefähr 20 Jahren habe ich als Freiberufler neben der Schule angefangen, Software zu entwickeln. Aus dem passionierten Hobby entwickelte sich schnell eine Begeisterung, in eine Problemstellung einzutauchen, eine Lösung zu finden und den Kunden bei der Umsetzung zu unterstützen. Der Spaß an der Herausforderung und die Zufriedenheit meiner Kunden sind dabei meine größte Motivation.

Nach mehreren Jahren Festanstellung als Entwickler, Architekt und zuletzt Abteilungsleiter für Softwarearchitektur habe ich mich erneut selbständig gemacht, um die Erfahrungen, die ich im Laufe meines Berufslebens gesammelt habe, in verschiedenen Projekten einzusetzen. Davon profitieren Sie, da mich neue Problemstellungen immer wieder motivieren nach der passenden Lösung zu suchen.

Technologien

Java

  • Alle Versionen und APIs der Standard Edition (SE)
  • Java Enterprise Edition
    • Alle Versionen
    • Persistence API (JPA)
    • Messaging (JMS)
    • Enterprise JavaBeans (EJB)
    • Content Repository (JCR)
    • Servlets und JSPs

Tools

  • Apache Maven
  • Gradle
  • Subversion und Git
  • Continuous Integration (Jenkins, Luntbuild)
  • Code Quality (SonarQube)

Spring

  • Spring Framework 2.0 bis 4.2
  • Spring MVC
  • Spring Data
  • Spring Security
  • Spring Batch
  • Spring Dynamic Modules

Mobile Development

  • Native Android Apps ab API-Level 14 (Ice-Cream Sandwich)
  • PhoneGap / Apache Cordova
  • Ionic + AngularJS
  • Couchbase Lite
  • PouchDB
  • Wikitude
  • indoo.rs

Server

  • Apache Tomcat
  • JBoss AS/Wildfly
  • Jetty
  • Virgo

Frameworks

  • Hibernate
  • EclipseLink (TopLink)
  • OSGi (Equinox, Felix)
  • Hazelcast
  • EHCache
  • uvm…

Agile Methoden

  • Scrum
  • Test-Driven Development
  • Behavior-Driven Development

Weitere (Auswahl)

  • Aspect-Oriented Programming (AOP)
  • JavaScript
  • Scala
  • Couchbase

Referenzen

Referenzen und Testimonials von Kunden und ehemaligen Arbeitgebern kann ich Ihnen gerne zukommen lassen – bitte sprechen Sie mich einfach darauf an.