Site Reliability Engineer Senior Software Entwickler Agiler Coach
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Özcan Acar Diplom Informatiker (FH - Darmstadt) Site Reliability Engineer Senior Software Entwickler Agiler Coach Oracle Java Champion ( https://apex.oracle.com/pls/apex/f?p=19297:3 ) , Oracle Certified Master, Java EE 5 Enterprise Architect (SCEA 5), SpringSource Certified Enterprise Integration Specialist Und SpringSource Certified Spring Professional
Persönliches Vorwort Für mich ist Software-Entwicklung als ganzheitliches Gebilde zu betrachten, welches Konzeption, Entwicklung, Testen, Dokumentation, Release und Betrieb umfasst. Dabei liegt mein Augenmerk sehr stark auf agilen Vorgehensweisen wie Scrum und Extreme Programming. Mein erworbenes praktisches Wissen auf diesem Arbeitsgebiet habe ich unter dem Titel „Agile Software Entwicklung – Extreme Programming“ als Buch zusammengefasst (siehe Publikationen). Dabei betrachte ich testgetriebene Ansätze wie TDD (Test Driven Development) und Tools wie Sonar und Jenkins für den gesamten Softwareentwicklungsprozess als essenziell. Das sollte mit Clean Code Methoden zur Gewährleistung der Erweiterbarkeit der Software ergänzt werden. Mir ist die Termintreue gepaart mit dem von meinem Kunden definierten Level der Softwarequalität extrem wichtig. Denn nur so kann ich meine Aufgabe als "erfolgreich abgeschlossen" betrachten. Mit freundlichen Grüßen Özcan Acar 3
Inhaltsverzeichnis 1. Persönliche Daten 2. Referenzen 3. Fachliche Schwerpunkte 4. Bevorzugte Einsatzgebiete in Projekten 5. Publikationen 6. Vorträge 7. Projekthistorie 4
1. Persönliche Daten Name, Vorname Acar, Özcan Jahrgang / Geb.Ort 1974 / Samsun (Türkei) Nationalität Deutsch Ausbildung / Abschluss Diplom Informatiker (FH-Darmstadt) – 2001 Zertifizierungen - Java Champion (seit 09.2009) - SpringSource Certified Spring Professional (seit 12.2013) - SpringSource Certified Enterprise Integration Specialist (seit 05.2013) - Oracle Certified Master, Java EE 5 Enterprise Architect (SCEA 5) (seit 2009) - MCSE (Microsoft Certified System Enginier NT 4) (seit 1999) Anschrift Im Niederfeld 8 65462 Ginsheim-Gustavsburg Mobil +49 171 57 33 66 5 E-Mail acar@agilementor.com Einsetzbar Vollzeit, ab sofort Einsatzorte Keine Einschränkungen Sprachen Türkisch, Muttersprache Deutsch, fliessend in Wort und Schrift Englisch, fliessend in Wort und Schrift Bevorzugte Positionen Site Reliability Engineer, Senior Software Entwickler, Tech. Team Lead, Software Architekt, Software Designer, Agiler Coach (Scrum/XP) 5
2. Referenzen MediaMarkt / Saturn Holding (Ingolstadt) Deutsche Vermögensberatung (Frankfurt am Main) SecureSafe – eSafe (S&N AG / Dswiss AG - Schweiz) Deutsche Telekom – Qivicon (Darmstadt) Deutsche Bank (Frankfurt am Main) KPMG (Frankfurt am Main) ING-Diba (Frankfurt am Main) Valtech (Frankfurt am Main) Navteq / Nokia (Frankfurt am Main) SAP (Walldorf) Infonova (Österreich/Graz) Credit Suisse (Zürich) Isbank (Istanbul) Kreditwerk AG (Schwäbisch Hall) Dekra (Stuttgart) Software AG (Darmstadt) AXA Versicherungen (Köln) DBV Winterthur (Wiesbaden) DB Systems (Frankfurt am Main) T-Systems (Darmstadt) Schufa AG (Wiesbaden) Deutsche Bahn Fuhrpark Service GmbH (Frankfurt am Main) Advance Bank (München) Dresdnerbank (Frankfurt am Main) Deutsche Bahn (Frankfurt am Main) Start Amadeus (Bad Homburg) ZDF (Mainz) 3. Fachliche Schwerpunkte Software Entwicklung (Clean Code Development; Software Craftsman) Software Testing (Unit-, Blackbox-, Regression-, Last-, Akzeptanz- und Performancetests) (Seit 2001) Test Driven Development (TDD, ATDD, BDD) Coaching für Extreme Programming / Scrum / Agile Software Entwicklung / Test Driven Development (TDD) (Seit 2002) Implementierung von schlanken Entwicklungsumgebungen (Lean Development Infrastructure) mit Git, Gerrit, Sonar, Jenkins,Wiki, Bugzilla, Jira Platformübergreifende Systemintegration Objektorientierte Software Entwicklung (OOP/OOD) (seit 1997) Software Architektur (seit 2001) Client Entwicklung mit Swing (seit 2004) Performance Architektur, Performance-Testing, Lösen von Performance Problemen seit 2005) Extreme Programming (XP) Versions- und Releasemanagement (Subversion, Cvs, Git) Java 1.3.x, 1.4.x, 5.x, 6.x, 7.x, 8.x, 9.x, 11.x, 16.x (seit 1997) 6
J2EE 1.3.x, 5, 6 (seit 1999) EJB 2.1, 3.x (seit 1999) Spring 2.x, 3.x, 4.x, 5.x (seit 2004), Spring Cloud, SpringBoot, Spring Cloud Streams (seit 2008) Hibernate, IBatis, EclipseLink, JPA (seit 2004) JavaMail (seit 2002) Relationale Datenbanken, SQL (seit 1998) Servlet, JSP (seit 1998) JSF (seit 2003) Aspect Oriented Programming (AOP) (seit 2002) Webentwicklung mit HTML, CSS, Javascript (seit 1996) XML, XSD, XSL, Sax, Dom, JAXB (seit 1999) JDBC (seit 1999) JMS (seit 2001) JMX (seit 2003) JTA, JTS (seit 2000) Webservices (seit 2000) Perl (seit 1997) PHP (seit 1997) Java Profiling (OptimizeIt und Jprobe) (seit 1999) Client/Server Entwicklung (Socket) (seit 1999) Suse Linux 6.x, 7.x, 8.x, 9.x,10.x, 11.x, 12.x, 13.x (seit 1996) Framework Entwicklung (seit 2000) Einsatz SW Design Patterns (seit 2002) Einsatz SW Design Principles (DIP, OCP, ISP, SRP,LSP,REP, CCP, CRP, ADP, ACD) (seit 2002) Netzwerksicherheit unter Linux LDAP, JNDI (seit 2000) Caching mit EhCache, Hazelcast Load- und Performance-Testing mit Loadrunner, Jmeter Java Entwicklung im Smart Home Umfeld. OSGI im Embedded-Umfeld. Cloud Entwicklung mit Docker, Kubernetes, Spring Cloud Eclipse Smarthome, OpenHab, Embedded Linux Entwicklung Microservice Architekturen Echtzeitverarbeitung von Streams mit Kafka, Kafka Streams, Spring Cloud Streams 4. Bevorzugte Einsatzgebiete in Projekten In erster Linie Software Entwicklung; Im Kern bin ich Software Entwickler. Einführung von agiler Software-Entwicklung und Methodencoaching (Scrum/XP) Konzeption und Implementierung von mehrschichtigen Software Architekturen Software Design mit OOP unter Einhaltung von Design Patterns und Principles Architektur und Implementierung von High-Trafic Websites. Lösen von Performance Problemen, Erstellung von Performance Architekturen Code- und Architektur-Reviews Performance-Analyse und –Optimierung Entwicklung von Internet-Applikationen (e-Commerce) Extreme Programming / Scrum / TDD / BDD Entwicklung von verteilten Anwendungen mittels Application-Server Entwicklung von Datenbank-Applikationen 7
Web Services mittels SOAP, Axis, CXF, Java WS Microservices mittels Spring Cloud, Kubernetes Spring-Anwendungen Struts-Anwendungen JFS Anwendungen Wicket Anwendungen Web Service Anwendungen Persistenz mittels Hibernate, JDBC, EJB, Ibatis, Eclipse Link OOA, OOD, UML Java Profiling und Memory Debugging mit Jprobe, Optimize-It Client/Server Entwicklung Entwicklung und Einbundung von E-Payment Lösungen (Tpay, Paysafecard, Paypal, Micropayment.de, Zaypay.de etc.) AOP mit AspectJ Version und Release Management (Subversion, Maven, Ant) DevOps und Site Reliability Engineering, Beratung des Auftraggebers zur technischen Architektur der IT-Systeme im Themenumfeld sowie deren Weiterentwicklung. Analysieren der fachlichen Anforderungen an die IT-Systeme sowie Ableiten und Erarbeiten von technischen Umsetzungsmöglichkeiten Technische Leitung der Softwareentwicklung Aufwandsschätzung für die technische Lösung im Projekt Präsentationen zu technisch komplexen Themenstellungen Moderation/Erstellung von Workshops zu technischen Architektur- und Softwarethemen Programmiersprachen Java, Javascript, Perl, SQL, HTML, PHP, Groovy, Clojure, Ruby, Bash, Typescript Build Tools Ant, Ivy, Maven, Gradle Application - Webserver Websphere, Weblogic, JBoss, Tomcat, Apache, IIS, Resin, Borland Application Server (BES), Apache James, Apache Felix, Spring DM Server, Equinox, SAP Netweaver Entwicklungsumgebung (IDE) Eclipse, JBuilder, IBM RAD, IntelliJ Versionskontrolle CVS, Subversion, Clear Case, Harvest, Git Frameworks Struts, Wicket, Cactus, JUnit, JGroup, Axis, CXF, Apache Commons, log4j,Nutch Search Engine, Hibernate, Ant, Spring, Axis, AspectJ, Apache Commons, Spring, Spring MVC, OSGI, Sprint Cloud, Docker 8
Big Data & Streaming Elasticsearch, Kibana, Apache Kafka, Kafka Streams, Spring Cloud Stream, Hadoop Datenbanken und Client/Server-Tools: MySQL, MS SQL, Postgres, Oracle, DB2, Toad, SQL Navigator, Oracle SQL Tools, LDAP, MySQL, H2 Betriebssysteme Unix (Solaris), SuSe Linux, Ubuntu, Debian, Windows XP, Windows 7/8/10, CoreOS Zertifikate & Titel Java Champion, SCEA 5 (Oracle Certified Master, Java EE 5 Enterprise Architect),SpringSource Certified Enterprise Integration Specialist, SpringSource Certified Spring Professional, MCSE (Microsoft Certified System Enginier NT 4) OO-Modellierungtolls (UML) Innovator, ArgoUML, EclipseUML, Poseidon for UML, Rational Rose, Together Cloud Azure, AWS, Google Cloud Container Technologien Docker, Kubernetes, CoreOS, Microservices mit Java/SpringBoot Logging & Monitoring Prometheus, Grafana, Azure LogAnalytics, Nagios, Dynatrace, AppDynamics, Splunk, Kibana, ElasticSearch (ELK Stack), FileBeat, Beats, Logstash, FluentD Troubleshooting Threaddump Analysen, Heapdump Analysen, Garbage-Collector-Optimierungen, Memory Leak Analysen, Nutzung on top, fee, mem, vmstat, netstat, strace, tcpdump, wireshark, nc auf OS-Ebene, Nutzung von VisualVM, Eclipse Mat, Jconsole, Jprofiler auf Java VM-Ebene, Optimierung JVM, Optimierung von Java Anwendungen in Container-Laufzeitumgebungen, Fehlersuche und Analyse mit Dynatrace, AppDynamics, Grafana, Prometheus, statische Code Analysen mit Sonar, FindBugs, Checkstyle, PMD, Code Coverage mit Jacoco, Emma Testen Entwickler-Tests mit Junit, Jmock, Mockito, Integrationstests mit Junit, Spring Test, TestNG, DBUnit, Acceptance-Tests mit Spock, Gatling, Fitnesse, EasyB, Cucumber, JDave, Last- und Performance mit Jmeter, Gatling, RoadRunner 9
5. Publikationen Özcan Acar ist Autor von mehreren Büchern. Er möchte die in Projekten gesammelten Erfahrungen an die Sotware Entwickler weitergeben. Die Bücher sind in seiner Muttersprache türkisch verfasst und werden unter http://www.pratikprogramci.com vertrieben. Design Patterns 415 Seiten, erschienen April 2016 Sein letztes Buch behandelt den Einsatz von Design Patterns. Alle gängigen Design Patterns werden mit Code-Beispielen erläutert. Insgesamt werden fünfzig Design Pattterns behandelt. Git 220 Seiten, erschienen September 2015 Git ist ein populäres Versionskontrollsystem der Gegenwart. In diesem Buch wird die Nutzung von Git an praktischen Beispielen veranschaulicht. Agile Software Entwicklung 597 Seiten, erschienen April 2014 Dieses Buch beschreibt die Techniken für eine agile Software Entwicklung. Dabei handelt es sich um Software- Entwicklungsmethoden, die im Rahmen von Extreme Programming zur Anwendung kommen. Das Buch beschreibt ausführlich u.a. die testgetriebene Entwicklung (Test Driven Development – TDD), Continuous Integration, Release Management, agile Projektplanung und Pair Programming. 10
Spring Framework 586 Seiten, erschienen Januar 2014 Das Spring Framework hat in der Software Entwicklung eine bedeutende Stelle eingenommen. In diesem Buch wird der Leser mit den Grundlagen des Spring Frameworks anhand von praktischen Beispielen vertraut gemacht. Ansammlung von Blogs 395 Seiten, erschienen Februar 2016 Özcan Acar schreibt unter http://www.kurumsaljava.com (übersetzt Enterprise Java) Blogs über Java, Java EE und Software Entwicklung. Einige ausgewählte Blogs wurden in diesem Buch zusammengefasst. 11
6. Vorträge 1. Wie wird man ein guter Software-Entwickler? (Video: http://vimeo.com/11966103) 2. Webprogrammierung mit Apache Wicket (Video: http://vimeo.com/8865123) 3. Agile Softwareentwicklung mi Java EE (Video: http://vimeo.com/8863992) 4. Anwendung von Design Principles (Video: http://vimeo.com/8862230) 5. Test Driven Development (Video: http://vimeo.com/8860711) 6. Webprogrammierung mit Spring MVC (Video: http://vimeo.com/8861370) 12
7. Projekthistorie 13
Transport & Organisation – Mediamarkt Saturn Branche: Einzelhandel Kunde: Mediamarkt Saturn Projektdauer: 01.2021 – bis jetzt Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit Rest API Design & Entwicklung, DevOps, Testen (E2E, Acceptance, Unit, Integration), Release Management, Deployment (Kubernetes) Kurzbeschreibung des Projektes Die von MediaMarkt/Saturn (MMS) verkauften Waren werden in Zukunft über den Transport-Orchestrator Centiro an Carrier (DHL, Hermes etc) weitergegeben. Zu diesem Zweck wird innerhalb von MMS eine auf Microservice basierende Rest-API zur verfügung gestellt. Meine Aufgabe in diesem Projekt war die Weiterentwicklung und Erweiterung der benötigen Schnittstellen, Release Management, Deployment und Troubleshooting der Live-Umgebung. Betriebssysteme: Windows 10, Linux Entwicklungsumgebung: Eclipse 2021 Sprachen: Java, Scala Technologie: Java 11, Kubernetes, Docker, Microservices, Spring, Spring Boot, Google Cloud Platform, Rest API, Swagger Hardware 14
Troubleshooting – Deutsche Vermögensberatung Branche: Versicherungen Kunde: Deutsche Vermögensberatung Projektdauer: 08.2017 – bis jetzt Funktion Senior Software Developer, Troubleshooter, Architekt Arbeitsweise Scrum Tätigkeit Entwicklung, DevOps, Development- und Infrastruktur-Troubleshooting, Architektur von Logmanagement-Lösungen, Architektur der Monitoring-Lösungen, Root-Cause-Analysen, Codereviews. Optimierung von Java-Laufzeitumgebungen. Ansprechpartner Thomas Engel Kurzbeschreibung des Projektes Die Deutsche Vermögensberatung bedient mit eigens dafür entwickelter Software und Infrastruktur mehrere tausend freiberufliche Vermögensberater. Die Produktionsumgebung wird penibel überwacht. Zu diesem Zweck werden diverse Tools entwickelt und eingesetzt. Meine Aufgabe besteht darin, als Troubleshooter die Ursachen der Fehler ausfindig zu machen und zu beseitigen. Dazu gehören auch Code-Reviews, Produktionbegleitung von Projekten, Weiterentwicklung von Monitoringtools, Einführung von neuen Technologien wie Docker, Kubernetes und Kafka. Bei der Deutschen Vermögensberatung sind die Troubleshooter Bindeglied zwischen Entwicklung und Betrieb. Sie gewährleisten den stabilen Betrieb der Produktionsumgebung. Dazu sind umfangreiche Kenntnisse in der Software Entwicklung, Release- und Deploymentmanagement, Störungs- und Problemmanagement nach ITIL notwendig. Als Java-Entwickler kümmere ich mich um die Weiterentwicklung der Tools zum Logmanagement und Auswertungen. Um das Logmanagement zu zentralisieren, habe ich mit Kafka die notwendige Infrastruktur aufgesetzt. Mit Kafka-Streams können so die Logs in Echtzeit verarbeitet und an unterschiedliche Ablageorte (ElasticSearch, Azure, DB) geschickt werden. Einige Tools sind als Microservice in Springboot implementiert und werden in Kubernetes betrieben. Die entsprechenden Build- und Releasejobs laufen über Jenkins. Betriebssysteme: Windows 8, Linux Entwicklungsumgebung: IntelliJ 2016, Eclipse Oxygen Sprachen: Java, Groovy, Bash, Python, Perl Technologie: Java 8,9,11, Kubernetes, Docker, CoreOs, Tomcat, Apache, HaProxy, Microservices, Spring, Spring Boot, Kafka, ElasticSearch, Kibana, Filebeat, Logstash Hardware 15
SecureSafe – Deutsche Bank eSafe (S&N AG Deutschland/ Dswiss AG Schweiz) Branche: Banken Kunde: S&N AG / Dswiss AG Projektdauer: 02.2016 – 08.2017 Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit Java, Rest, WS, Backend Entwicklung Ansprechpartner Michael Illgner Kurzbeschreibung des Projektes SecureSafe ist ein Produkt der Firma Swiss AG. Sie ist beheimatet in Zürich. SecureSafe ist vergleichbar mit Dropbox oder Google Drive. Allerdings liegt der Focus des Produktes auf Verschlüsselung der Daten. Ich habe an der Weiterentwicklung dieses Produktes gearbeitet. Auf Basis dieses Produktes ist auch eSafe der Deutschen Bank implementiert worden. eSafe ist vergleichbar mit einem digitalen Schliessfach. Die Kunden können dort Ihre digitalen Dokumente verschlüsselt ablegen. Ich habe an der Implementierung des eSafeBackoffice mitgewirkt. Betriebssysteme: MacOs X, Linux Entwicklungsumgebung: IntelliJ 2016 Sprachen: Java, Groovy Technologie: Java 7/8, Rest, Tomcat, Gradle, Jenkins, Gitlab, Git, PostgreSQL 9, pl/pgsql, Webservice, Rest, Spring, Spring Boot Hardware 16
Smart Home mit Qivicon (Powered by Deutsche Telekom – Darmstadt) Branche: Telekommunikation Kunde: Deutsche Telekom Projektdauer: 05.2016 – 01.2017 Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit Embedded Entwicklung mit OSGI Ansprechpartner Jochen Hiller Kurzbeschreibung des Projektes Die Deutsche Telekom bietet mit der Marke Qivicon eine Smart Home Lösung an. In diesem Projekt habe ich an OSGI-Modulen mitentwickelt, die auf Qivicion Homebase 1 und Homebase 2 deployed wurden. Betriebssysteme: Windows 8, Linux Entwicklungsumgebung: Eclipse 4 Sprachen: Java, OSGI Technologie: Java 7/8, OSGI, Maven 3, Git, Jenkins, Sonar, Groovy, Spock, Nexus, Docker, Eclipse Smarthome Hardware Qivicon HomeBase 1, HomeBase 2, Speedport Smart 17
DB SQUARES Entwicklung (Deutsche Bank – Frankfurt/M) Branche: Banken Kunde: Deutsche Bank Projektdauer: 01.2015 – 04.2016 Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit Backend- und Frontend-Entwicklung mit Java7, Wicket, Spring 4, Nexus, OSGI Ansprechpartner Carola Volkmann Kurzbeschreibung des Projektes Zum Deployment von Anwendungen entwickelt und betreibt die Deutsche Bank eine Anwendung namens SQUARES. Softwarelieferanten können über SQUARES ihre Produkte an die Deutsche Bank liefern und deployen lassen. Auch interne Projekte werden über SQUARES deployt. Ich arbeitete an der Weiterentwicklung dieses Produktes sowohl im Frontend als auch im Backend. Betriebssysteme: Windows 7, Redhat Linux Entwicklungsumgebung: Intellij Idea 14 Sprachen: Java, Groovy, Javascript, Shell, Wicket Technologie: Java 7, OSGI, Maven 3, Git, Jenkins, Subversion, Sonar, Wicket, Javascript, JSP, Servlet, Spock, Nexus OSS, Spring 4, BladeLogic 18
BSM Backend Entwicklung (KPMG – Frankfurt/M) Branche: Banken Kunde: KPMG Projektdauer: 7.2015 – 12.2015 Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit Backend-Entwicklung mit Gradle, Groovy, Spring Frontend-Entwicklung mit Grails und AngularJS Ansprechpartner Roland Glienke (Projektleiter) Kurzbeschreibung des Projektes Folgt. Betriebssysteme: Windows 7, Redhat Linux Entwicklungsumgebung: Eclipse Luna Sprachen: Java, Groovy, Javascript, Shell Technologie: Java 7, Gradle 2, Groovy 2.4, Git, Jenkins, Spring 3, Sonar, Grails, AngularJS , Javascript 19
Empfehlung 20
Maven Umstellung (ING-Diba – Frankfurt/M) Branche: Banken Kunde: ING-Diba Projektdauer: 11.2014 – 6.2015 Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit DevOps Tätigkeiten Einführung von semantischer Versionierung Vorbereitungen für Maven Umstellung Rest Mikroservices Entwicklung Release und Deployment Management Ansprechpartner Oliver Hummer (Projektleiter SpringIT, ohummel@ing-diba.de) Schwerpunkte des Projektes MWS Modularisierung Kurzbeschreibung des Projektes Im Rahmen des Projektes SpringIT wurde beschlossen, das Build-Tool Ant durch Maven zu ersetzen und das Middleware MWS zu modularisieren. Es sollte möglich sein, die einzelnen Domänenmodule des MWS einzeln zu bauen und zu releasen, sodass für die Zusammenstellung des MWS kein globales Build mehr notwendig war und es aus den einzelnen Bausteinen zusammengesetzt werden konnte. Zu dem Zweck habe ich die bestehenden Ant Buildscripte modifiziert, sodass gültige Maven Artefakte gebaut und ins Nexus gestellt werden konnten. Durch Einführung von semantischer Versionierung war es möglich, das MWS aus den einzelnen Domänenartefakten, die sich in Nexus befanden zusammenzusetzen. Um automatisiert Jenkins Jobs anlegen zu können, habe ich mit Java und Spring MVC einen Rest Service implementiert. Die Implementierung erfolgte testgetrieben. Ich habe die Implementierung mit Unit-, Integrations- und Akzeptanztests abgesichert. Des weiteren habe ich den bestehenden Integration-Service erweitert, der das Deployment-Pipeline des MWS kontrolliert. Betriebssysteme: Windows 7 Entwicklungsumgebung: Eclipse 4.4.1 Sprachen: Java, Groovy, Bash, Javascript Technologie: Java 7, Maven 3, Ant, Subversion, Jira, Git, Jenkins, Spring, Fitnesse, Spring MVC, Jersey, JAX-RS, XML, JSON, JAXB, JUnit, Nexus, Ivy 21
Empfehlung 22
Rest Mikroservice Entwicklung (Valtech – Frankfurt/M) Branche: Automotive Kunde: Valtech / Audi Projektdauer: 02.2014 – 10.2014 Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit Entwicklung von Rest Mikroservices Ansprechpartner Sven Baum (Teamlead, sven.baum@valtech.de) Schwerpunkte des Projektes Entwicklung am VW MBB-Core und Modellierung und Implementierung von Rest Mikroservices Kurzbeschreibung des Projektes Ich war daran beteiligt, fahrzeugnahen Dienste auf Basis von Rest-Services zu implementieren. Die Dienste wurden mit Servlet und JAX-RS API entwickelt. Zu meinen Aufgaben gehörte, die Kundenanforderungen zu ermitteln und die entsprechenden Rest- Schnittstellen mit XML zu modellieren. Die von mir definierten Schnittstellen habe ich mit JAX-RS implementiert. Die Implementierung erfolgte testgetrieben. Ich habe die Implementierung mit Unit-, Integrations- und Akzeptanztests abgesichert. Betriebssysteme: Suse Linux 13 Entwicklungsumgebung: Eclipse 4.2 Sprachen: Java Technologie: Java 7, Maven 3, Subversion, Jira, Sonar, Jenkins, Spring, Servlet, Fitnesse, Jersey, JAX-RS, XML, JAXB, EXI, JUnit 23
Geocoder Entwicklung (Navteq / Nokia – Frankfurt/M) Branche: Map / Geocoding Kunde: Navteq / Nokia Projektdauer: 03.2012 – 12.2013 Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit Entwicklung eines Rule-Engines auf Java Annotations Basis Entwicklung eines Swing Gui Tools, um Geoobjekte visuell darzustellen Performansmessungen mit JMeter Low level Java Programmierung mit ByteBuffer und Memory Mapped Files Garbage Collector Optimierung, Thread- und Heapdump Analysen Test getriebener Entwicklung Aufbereiten von großen Datenmengen zur Statistikerzeugung Ansprechpartner Christian Kalus (Teamlead, christian.kalus@here.com) Schwerpunkte des Projektes Entwicklung am Navteq Search6 Service (zu finden unter www.here.com) Kurzbeschreibung des Projektes Ich war als Java Entwickler im Search6 Team tätig. Nach diversen Bugfixes am bestehenden Service habe ich im Rahmen des UDM (Unified Data Model) Projektes diverse Module implementiert. Neben einem Rule Engine, welches im Postprocessing Step Rules ausführt, um Daten zu modifizieren, habe ich ein Gui Tool namens LuGu entwickelt, um nach Geoobjekten im UDM Storage zu suchen und diese auf Maps sichtbar zu machen. Zuletzt habe ich an einer webbasierten Anwendung gearbeitet, die ich in Spring MVC implementiert und getestet habe. Mit dieser Anwendung ist es möglich, Geodaten- Änderungen in verschiedenen Quartalen, die aus verschiedenen Revisionen bestehen zu vergleichen und die Unterschiede auf Maps darzustellen. Zweck der Webanwendung ist, den Datenanalyten anzuzeigen, in welchen Regionen und in welchen Maßen Änderungen an Geodaten vorliegen. Betriebssysteme: Windows 7 Entwicklungsumgebung: Eclipse 3.7, 4.2 Sprachen: Java Technologie: Java 6, Maven 3, Subversion, Jira, Sonar, Spring, Spring MVC, Swing, Eclipse RCP 4 24
Lean Development Infrastructure (Lean DI) (SAP / Walldorf) Branche: Software Entwicklung Kunde: SAP Projektdauer: 01.2012 - 02.2012 Funktion Senior Software Developer Arbeitsweise Scrum Tätigkeit Integration, Anpassung und Installation von Development Infrastructure Komponenten wie Git, Gerrit, Jenkins und Sonar Integration einer Anwendung mit SAP ID Mavenizing eines Projektes Ansprechpartner Manfred Stindl (Personalleiter, manfred.stindl@sap.com) Schwerpunkte des Projektes Aufsetzen von Lean DI (Development Infrastructure) Kurzbeschreibung des Projektes Ich habe ein bestehendes Projekt, welches mit Ant gebaut wurde in ein entsprechendes Maven Projekt umgewandelt. Im Rahmen des Projektes sollte für Code Reviews Gerrit eingesetzt werden. Ich habe für das bestehende Projekt die Integration mit Git, Gerrit und Egit (Eclipse Plugin) vorgenommen. Für das Continuous Integration habe ich eine Jenkins Instanz, für die statische Code Analyse eine Sonar Instanz aufgesetzt. So entstand für das Projekt ein Lean Development Infrastructure mit Git, Gerrit, Jenkins und Sonar. Die bestehende Anwendung sollte mit SAP ID integriert werden, womit SSO ermöglicht werden sollte. Ich habe die notwendigen Anpassungen für die Anwendung vorgenommen. Betriebssysteme: Windows 7 Entwicklungsumgebung: Eclipse 3.7 Sprachen: Java Technologie: Java 1.6, Maven 3, Subversion, Git, Gerrit, Jenkins, Sonar 25
Produktentwicklung HD+ (Infonova - Österreich / Graz) Branche: Software Entwicklung Kunde: Infonova Projektdauer: 08.2011 - 12.2011 Funktion Senior Software Developer Arbeitsweise Scrum/XP Tätigkeit Anpassung des Produktes Infonova R6 an die Bedürfnisse von HD+ Einführung von testgetriebener Softwareentwicklung (TDD) Erweiterung Infonova R6 um verteiltes Drucken mit LPR/LPD Erweiterung Infonova R6 um Word/PDF Konvertierung mit OpenOffice/JodConverter Ansprechpartner Martina Krammer (Scrummaster für HD+, martina.krammer@infonova.com) Schwerpunkte des Projektes Produktentwicklung für HD+ auf Basis des Infonova BSS R6 Kurzbeschreibung des Projektes Die Firma Infonova entwickelt und vertreibt ein Softwareprodukt namens Infonova BSS R6. Es ermöglicht, Produkte und Services unterschiedlicher Lieferanten und Partner zu kombinieren, diese so generierten Angebote zu verrechnen und den dabei gewonnen Umsatz automatisch auf die jeweiligen Partner zu verteilen. R6 wird in Kundenprojekten an die Kundenbedürfnisse angepasst. Ich habe als Entwickler als Teil eines Scrum Teams in dem Kundenprojekt für HD+ mitgewirkt. Eine meiner ersten Aufgaben bestand darin, ein verteiltes Drucken von einer J2EE Anwendung heraus zu implementieren. HD+ hat mehrere Standorte und hat die Anforderung, die gewünschten Dokumente abhängig vom Standort des Operators zu drucken. Zu diesem Zweck habe ich mehrere Lösungen und Technologien untersucht und eine Implementierung auf Basis LPR/LPD Technologie implementiert. In der nächsten Aufgabe habe ich mich damit befasst, HD+ Kundenrechnungen, die in Word gehalten werden in das PDF Format zu konvertieren. Zu diesem Zweck habe ich das Open-Source Produkt JodConverter und OpenOffice verwendet. Im Team bestand großes Interesse für agile Entwicklungsmethoden. Meine Aufgaben habe ich mit Hilfe von TDD (Test Driven Development) implementiert. Das weckte das Interesse der Teammitglieder noch mehr. Daher bin ich gebeten worden, andere Teammitglieder in diese Thematik einzuführen. An verschiedenen Beispielen habe die die Vorgehensweise mit TDD dem Team nahegebracht. Betriebssysteme: Windows XP Entwicklungsumgebung: Eclipse 3.6 26
Sprachen: Java Technologie: Java 1.5, Maven 2, EJB 3, Subversion, JUnit/TestNG, Sonar, Continuum 27
Load- und Performance-Testing (Credit Suisse - Zürich) Branche: Banken Kunde: Credit Suisse in Zürich Projektdauer: 04.2011 - 07.2011 Funktion Senior Software Developer, Test Ingeneer Tätigkeit Erstellung eines Testgenerators in Java zur Standardisierung von Testscripten Erstellung von Loadrunner Testscripten für einen Corba Service Erstellung von Loadrunner Testscripten für einen Webservice Erstellung von Tools zur Analyse von Testergebnissen Ausführung von Last- und Performancetests mit Loadrunner Schwerpunkte des Projektes Load- und Performance-Testing von Webservice und Corba Services Kurzbeschreibung des Projektes In Credit Suisse wird als Testtool Loadrunner von HP eingesetzt. Damit ist es möglich, in verschiedenen Computersprachen (C, Java) Testscripte zu erstellen und die gewünschten Services remote zu testen. Um die Testscripte und die Vorgehensweise beim Testen einheitlich zu gestalten, wurde ich beauftragt, einen Testgenerator in Java zu entwickeln. Ich habe einen Testgenetor entwickelt, der Loadrunner Testprojekte für Webservice und Corba Services generieren kann. Für die Generierung wird entweder eine IDL (Corba) oder eine WSDL (Webservice) benötigt. Die erstellten Testscripte sind in Java gehalten. Der erste Einsazt für den genannten Testgenerator war ein internes Projekt namens XBSnet. XBSnet ist eine webbasierte Anwendung, die Kontobewegungen eines Kunden anzeigt. Dahinter wird ein Corba Service angesprochen, um die gewünschten Daten vom Hostsystem zu beziehen. Innerhalb von Credit Suisse wurde beschlossen, die Corba Services nach Webservice zu portieren. Meine Aufgabe war, den genannten Corba Service und den ersten portierten Webservice Piloten zu testen. Ich habe mit Loadrunner verschiedenen Baseline/Average und Peak Tests ausgeführt. Betriebssysteme: Windows XP Entwicklungsumgebung: Eclipse, Loadrunner Sprachen: Java Technologie: Java 1.5, Maven 2, Spring 3, Subversion, Soap-UI 28
Corebanking Projekt (Isbank Istanbul) Branche: Banken Kunde: Isbank A.S. in Istanbul Projektdauer: 02.2010 – 02.2011 Funktion Lead-Developer, Architect Tätigkeit Einführung von agiler Software-Entwicklung und Methodencoaching Transformation des Teams von herkömmlicher Vorgehensweise auf Agil Einführung User-Stories, Iterationen, Release Planung Einführung Cruise Control AOP Entwicklung für Performance-Messungen und -testing Implementierung einer Cache Lösung mit Hazelcast Einführeung Kanban-Charts, Projektmanagement mit Storycards (Scrum) Erstelllung von Build Scripten mit Ant fürs Bauen und Deployen der Anwendung Umstrukturierung des Projektes mit Maven um das „Programming in the Large“ Model umzusetzen. Einführung und Umsetzung von testgetriebener Software Entwicklung Einführung und Umsetzung von komponentenbasierter Software Entwicklung Einführung und Umsetzung von automatisiertes Testen der Anwendung (Unit-Tests, Integrationstests, Acceptance Tests, Lasttests) Schulung, Coaching und Know-How-Transfer für interne Mitarbeiter Migration von Java 1.4 nach Java 5 Eclipse Plugin-Entwicklung für einen RCP Client Ansprechpartner Cem Kayan (cem.kayan@isbank.com.tr) Schwerpunkte des Projektes Umsetzung Backend für Corebanking. Kurzbeschreibung des Projektes Die Isbank ist einer der ältesten und größten Banken in der Türkei. Das Backend-System basiert auf IMS. Das Corebanking Projekt wurde ins Leben gerufen, um IMS mit offenen Systemen (auf Java Basis) abzulösen. Zu diesem Zweck wurde das Software Paket Corebank von Fidelity gekauft. Darauf aufsetzen wurde eine SOA Architetur entworfen, um IMS Funktionen zu portieren. Betriebssysteme: Windows XP Entwicklungsumgebung: RAD 7 Sprachen: Java Technologie: Java 1.5, RAD 7, Websphere 6.1, Ejb2, TDD mit JUnit, SQLJ, Swing, DB2 Datenbank , XML, JAXB 2.0, Ant 1.7, Maven 2, Spring 2.5, Clear-Case, Soap-UI, JMeter, AOP mit, AspectJ, Hibernate, Spring, JPA, Eclipse RCP 3.5 29
Wohnriester 2009 (Kreditwerk AG) Branche: Banken Kunde: Kreditwerk Projektdauer: 07.2009 - 12.2009 Funktion Lead-Developer Tätigkeit Einführung und Umsetzung von testgetriebener Software Entwicklung Einführung und Umsetzung von Tools für Code Coverage Einführung und Umsetzung von komponentenbasierter Software Entwicklung Einführung und Umsetzung von automatisiertes Testen der Anwendung (Unit-Tests, Integrationstests, Acceptance Tests, Lasttests) Refactoring der bestehenden Codeeinheiten und Überführung in neue Strukturen Erstellung, Implementierung und Kapselung von System-Schnittstellen und testen dieser Stellen mit Mock-Implementierungen Einführung von Code-Generierungstools, um XML Inhalte in Java abbilden zu können (JAXB 2) Konzeption und Erstellung von Dokumenten, die die Testbarkeit der Anwendung und verschiedene Testszenarien beschreiben Dokumentation der Anwendung mittels Javadoc und Erstellung DV-Konzept-Dokument Schulung, Coaching und Know-How-Transfer für interne Mitarbeiter Ansprechpartner Elke Waldmann (elke.waldmann@kreditwerk.de) Schwerpunkte des Projektes Backend-Entwicklung von Wohnriester 2009 Kurzbeschreibung des Projektes Die Kreditwerk AG ist eine Tochter der Bausparkasse Schwäbisch Hall (BSH). Mit dem Wohnriester bietet BSH ihren Kunden ein vom Staat gefördertes Produkt. Meine Aufgabe bestand darin, eine Architektur für die Verarbeitung von Daten für dieses Projekt zu entwerfen und zu implementieren. BSH besitzt Host-basierte Backendsysteme (IBM). Um die Zulagen vom Staat zu verarbeiten, muss das Host-basierte Bestandssystem mit der ZFA Behörde über JMS gekoppelt werden. Die Kommunikation zwischen den Systemen läuft über festgelegte XML Strukturen. Ich habe für die Implementierung der XML Daten JAXB 2.0 eingesetzt. Der Zugrff auf das Bestandssystem erfolgte über Corba (Hostanbindung). Ich habe die Verarbeitungseinheiten (intern Robot genannt) testgetrieben (TDD – Test Driven Development) entwickelt. Für die Implementierung der Robots habe ich EJB 3.0 verwendet. Codeabdeckung des Projektes lag über 85%. Betriebssysteme: Windows XP Entwicklungsumgebung: Eclipse 3.4 Sprachen: Java Technologie: Java 1.5, Ecipse 3.4.0, Weblogic 10.3, Ejb3, TDD mit, JUnit , Hostanbidung über Corba, SQLJ, DB2 Datenbank, 30
XML, JAXB 2.0, Host Copybooks und Erzeugen von Flat- Datein, Ant 1.7, Spring 2.5 RUP, Bash Programmierung, UML mit Ratinal Rose, Clear-Case 31
Zentrales Authentifizierungsmodul (Dekra AG) Branche: Automobile Kunde: Dekra Projektdauer: 01.2009 - 06.2009 Funktion: Senior Java Developer Tätigkeit Einführung und Umsetzung von testgetriebener Software Entwicklung Weiterentwicklung der bestehenden Webapplikation mit JSF Einführung von Techniken, um die Sicherheit der Webanwendung zu erhöhen Anbindung von verschiedenen LDAP Servern zwecks Authentifizierung der Benutzer Konzeption und Erstellung von Dokumenten, die die Testbarkeit der Anwendung und verschiedene Testszenarien beschreiben Dokumentation der Anwendung mittels Javadoc und DV-Konzept-Dokument Ansprechpartner Michael Vogt (michael.vogt@dekra.de) Schwerpunkte des Projektes Weiterentwicklung eines webbasierten Anwendung...... Kurzbeschreibung des Projektes Dekra verwendet im hauseigenen Intranet verschiedene webbasierte Anwendungen, um Geschäftsprozesse zu unterstützen. Diese Anwendungen können nur von authentifizierten Mitarbeitern benutzt werden. Die Authentifizierung wird mittels ZAM genannten Webanwendung durchgeführt. ZAM (zentrales Auth. Modul) wird, falls eine Authentifizierung notwendig ist der eigentlichen Zeilanwendung vorgeschaltet, so dass zuerst die Authentifizierung durchgeführt werden muss, um die Zielanwendung zu benutzen. Meine Aufgabe bestand darin, ZAM für alle vorhandenen Webanwendungen nutzbar zu machen und die neuene Anforderungen umzusetzen. Außerdem habe ich serverseitige Module für die Dekra Hauptanwendung entwickelt. Betriebssysteme: Windows XP Entwicklungsumgebung: Eclipse 3.4 Sprachen: Java Datenbank LDAP Technologie: Java 5, JSF, XML, Junit, Ant 1.7, Subversion, Glassfish. Spring 2.5, Hibernate 32
Elster Schnittstellenanpassung (Software AG) Branche: Software Entwicklung Kunde: Software AG Projektdauer: 11.2008 – 12.2008 Funktion: Senior Java Developer Tätigkeit Anpassung der neuen Elter-Schnitstelle Dokumentation der Anwendung mittels Javadoc und DV-Konzept-Dokument Ansprechpartner Frank Sauer (frank.sauer@softwareag.com) Schwerpunkte des Projektes Schnittstellenanpassung für Elster Kurzbeschreibung des Projektes Software AG hat für ihre Kunden eine webbasierte Anwendung entwickelt, um auf dem elektronischen Wege Lohnsteuerbescheinigungen an das Finanzamt zu übermitteln. Dafür wird die Elster (Elster.de) XML Schnittstelle angebunden. Meine Aufgabe bestand darin, in der Anwendung Schnittstellenänderungen für 2009 vorzunehmen. Betriebssysteme: Windows XP Entwicklungsumgebung: Eclipse 3.4 Sprachen: Java Datenbank Tamino Technologie: Java 5, JAXB 2, XML, Junit, Ant 1.7, CVS 33
Middleware Entwicklung (AXA) Branche: Versicherung Kunde: AXA Projektdauer: 04.2008 – 08.2008 Funktion: Senior Java Developer / Architect Tätigkeit Einführung und Umsetzung von testgetriebener Software Entwicklung Einführung von Subversion Einführung von PMD, Jdepend, Ant, Bugfix Einführung von Cruise Control für Continuous Integration Konzeption und Erstellung von Dokumenten, die die Testbarkeit der Anwendung und verschiedene Testszenarien beschreiben Dokumentation der Anwendung mittels Javadoc und DV-Konzept-Dokument Konzeption und Neuimplementierung der Anwendung Einführung von agilen Software-Entwicklungmethoden ( Extreme Programming ) Ansprechpartner Dirk Linneweber (dirk.linneweber@axa.de) Schwerpunkte des Projektes Middleware Entwicklung mit Java 1.5 , IBatis, Spring Kurzbeschreibung des Projektes AXA benuzt für den internen Workflow ein Middleware namens Shiva. Shiva wurde von AXA Mitarbeitern inhouse entwickelt. Bedingt durch neue Anfoderungen musste Shiva neu konzipiert und implementiert werden. Zu diesem Zweck habe ich ein neues Design basierend auf Spring entwickelt und implementiert. Die Entwicklung erfolgte testgetrieben (TDD). Durch Einführung von JUnit, Cruise Control, Subversion und anderen Tools habe ich meine Erfahrungen im Bereich Extreme Programming den projektbeteiligten nahebringen können. Betriebssysteme: Sun Solaris, Windows XP Entwicklungsumgebung: Eclipse 3.1 WST Sprachen: Java Datenbank: Oracle 9 Technologie: Java 5, Spring 2.5, IBatis 2.3, Hibernate, JAXB 2, XML, Junit, Cruise Control, Ant 1.6, Subversion 34
Web Service Entwicklung (DBV Winterthur) Branche: Versicherung Kunde: DBV Winterthur Projektdauer: 06.2006 – 04.2008 Funktion: Senior Java Developer Ansprechpartner Klaus Albrecht (klaus.albrecht@dbvwinterthur.de) Schwerpunkte des Projektes Webservice Entwicklung mit Apache Axis Kurzbeschreibung des Projektes DBV Winterthur bietet externen Vermittlern die Möglichkeit an, Anträge online zu versenden. Meine Aufgabe bestand darin, mit Hilfe von Apache Axis, eine Webservice Schnittstelle zum Entgegebennehmen von Kfz Anträgen zu implementieren. Nach dieser Tätigkeit habe ich an internen webbasierten Projekten mitgearbeitet. Betriebssysteme: Sun Solaris, Windows XP Entwicklungsumgebung: Eclipse 3.1 WST Sprachen: Java Datenbank: Oracle 9 Technologie: Java 1.4, 1.5, J2EE, Axis 1.4, Hibernate, Swing, Ant 1.6, JBoss 4.x, Soap, Wsdl, JAXB 2, JSP, Junit, Tomcat 5.x, XMLUnit, Spring 2.1 35
Web Service Entwicklung (T-Systems) Branche: Telekommunikation Kunde: T-Systems ( Projekt für T-Online) Projektdauer: 02.2006 – 05.2006 Funktion: Senior Java Developer Ansprechpartner Frank Bauer Schwerpunkte des Projektes Entwicklung der Harmony-Platform für T-Online. Kurzbeschreibung des Projektes T-Online wird in Zukunft über das eigene Order Management Systems (OMS) die schnellen V-DSL Leitungen von T-Com vermarkten. Dazu wurde die Harmony Platform entwickelt. Sie besteht aus einem Software Router und einem Engine namens GPST. Der Router kann über Webservice Schnittstellen (von OMS) aufgerufen werden. Er leitet die Anfragen an GPST. GPST ist ein Worflow Engine und kann die benötigen Geschäftsfälle erzeugen und mit der Gegenseite (FlexProd von T-Com) über Webservices kommunizieren. Die ganze Kommunikation von OMS über Router zu FlexPRod ist asyncron (implementiert als Webservice). Ich habe die benötigten Geschäftsfälle für das GPST Worflow Engine entwickelt und an den Webservice Schnittstellen des Systems gearbeitet. Zum Einsatz kam Axis als Java Webservice RPC Implementierung. Betriebssysteme: Sun Solaris, Windows XP Entwicklungsumgebung: Eclipse 3.1 WST Sprachen: Java Datenbank: Oracle 9 Technologie: Java 1.4, J2EE, Axis 1.4, Ant 1.6, Soap, Wsdl, JAXB 2, XMLUnit 36
J2EE Entwicklung (Deutsche Bahn) Branche: Verkehr Kunde: Deutsche Bahn Projektdauer: 08.2005 – 01.2006 Funktion: Senior Java Developer Ansprechpartner Carsten von-Reth Schwerpunkte des Projektes: Entwicklung einer webbasierten online Ausschreibungsplattform für DB Projekte Kurzbeschreibung des Projektes: Die Projekte der Deutschen Bahn werden ausgeschrieben und in Internet bekanntgegeben. Dazu hat die Deutsche Bahn eine Internet Platform namens EMP (Elektrinischer Marktplatz) entwickelt. EMP wurde in der Version 6 mit der intern verwendeten ED (Einkaufsdatenbank) zusammengelegt, so dass diverse Integrationsprobleme aufgetreten sind. Meine Ausgabe war es, Performance Probleme zu analysieren und zu beheben, die sich durch das Zusammenlegen der beiden Anwendungen ergaben. Dazu kam die Weiterentwicklung der Platform mit EJB. Ich habe gewünschte Funktionen (Business Logik) mit Hilfe von EJB Komponenten realisiert. Betriebssysteme: Sun Solaris, Windows Entwicklungsumgebung: Apache 1.3, Tomcat 4, Weblogic 7, Eclipse 3 Sprachen: Java, Datenbank: Oracle 9 Technologie: Java 1.3, Swing, Spring 2 37
J2EE Entwicklung (BizimAlem.com Ltd.) Branche: Start-Up Kunde: BizimAlem.com Ltd. Projektdauer: 08.2004 – 06.2005 Funktion: Lead-Developer / Architect Ansprechpartner: Ilker Sahin Schwerpunkte des Projektes: Entwicklung einer webbasierten online Community-Software Kurzbeschreibung des Projektes: Mit Hilfe einer webbasierten Online Community sollen registrierte Mitglieder zusammengebracht werden. Die Online Community bietet ihren Mitgliedern verschiedene Services an, u. a. Single Börse, Online Spiele, Email, Gästebuch, Freundesnetzwerk, Forum, Board, Umfragen usw. Meine Aufgabe war, die erforderliche Architektur zu entwerfen und anschließend die Konzepte mit J2EE umzusetzen. Die Programmierung erfolgte vollständig in Java. Zum Einsatz gekommen: JDBC, JavaMail, Log4J, Jsp, Servlet, XML, Ejb, Caucho Hessian., Jgroup. Für E-Payment habe ich folgende Schnittstellen verwendet: Telekom Tpay, Paysafecard, Worldpay Kreditkarte, Equido Premium SMS. Für die Online Community habe ich einen Chat Server und html-basierenden Client entwickelt. Der Chat-Server ist socket-basiert und vollständig in Java realisiert. Als Client wird ein Servlet verwendet, der eine Socket-Verbindung zum Server aufmacht und die eingegebenen Texte als HTML-Output ausgibt. Da die zu erwartende Last hoch ist, sollten mehrere Datenbanken im Cluster betrieben werden. Dazu wird die Postgres Datenbank mit Hilfe von Slony repliziert und die Anfragen mit Hilfe von PgPoll auf die Slaves verteilt. Mit Hilfe des Loadbalancers wird die Last auf mehrere Apache Webserver verteilt. Mit Hilfe eines 3Com SuperStack III Firewalls werden alle Rechner vor Angriffen geschützt. Die Plattform ist unter http://www.bizimAlem.de zu erreichen. Betriebssysteme: Suse Linux 8.x, 9.x Entwicklungsumgebung: Apache 1.3, Resin 2.1, Blackdown JDK, Eclipse 2.1 Sprachen: Java Libraries: JDK 1.4 Datenbank Postgres 7.1, 7.2, 7.3, 7.4 38
J2EE Entwicklung (Schufa AG) Branche: Kreditwesen Kunde: Schufa AG Projektdauer: 04.2003 – 08.2004 Funktion: Senior Java Developer Ansprechpartner Herr Doppler, Herr Blum Schwerpunkte des Projektes Verarbeitung der Firmen-Insolvenzdaten Kurzbeschreibung des Projektes: Die Insolvenzen werden über verschiedene Medien von einem externen Verlag gesammelt und in eine Datenbank überführt, die in regelmäßigen Abständen per Email an Schufa übermittelt wird. Die zu entwickelnde Anwendung musste diese Rohdaten verarbeiten und in den Hauptbestand des Schufa übernehmen. Import und Überführung des Daten wurden mit Hilfe der EJBs realisiert. Als Datenbank diente DB2. Betriebssysteme: Sun Solaris, Linux, Windows 2000 Entwicklungsumgebung: BES 5.2, Jbuilder 9, DB2, Weblogic 8 Sprachen: Java Libraries: JDK 1.4 39
Imperia Entwicklung (ZDF) Branche: Fernsehen Kunde: ZDF Projektdauer: 03.2002 – 04.2003 Funktion Java Developer Ansprechpartner Frau Engel in der DV-Entwicklung (Intranet) Schwerpunkte des Projektes Entwicklung von Perl-Skripten unter Imperia, Erstellung von Imperia-Templates, Installation und Betreuung von Imperia, Datenbankenwicklung unter Imperia Kurzbeschreibung des Projektes Meine Aufgabe bestand darin, webbasierte Anwendungsentwicklung unter Imperia zu betreiben. Imperia ist ein Content Management System und wird von führenden Mediananstalten verwendet, um Inhalten zu publizieren. Betriebssysteme: Sun Solaris, Windows 2000 Entwicklungsumgebung: Imperia, Tomcat, Oracle 8 Sprachen: Perl, Java Libraries: JDK 1.3 40
J2EE-Entwicklung (Start Amadeus) Branche: Touristik Kunde: Start Amadeus Projektdauer: 01.2002 – 03.2002 Funktion Java Developer Ansprechpartner Herr Becker in der DV-Entwicklung. Schwerpunkte des Projektes EJB -Entwicklung, XML- Entwicklung, JAXP-, Xerces-, SAX-, XML- Schema-, XSL-, Weblogic - , und WLE- Einsatz. Kurzbeschreibung des Projektes In diesem Projekt habe ich die Aufgabe übernommen, einige EJB- Komponenten zu entwickeln, die mit Hilfe von XML- Nachrichten den Clients die Kommunikation mit den Host-Systemen ermöglichten. Die Kommunikation erfolgte über den Weblogic Connector (WLE) mit einigen Corba- Componenten, die wiederum die Verbindung zu den Host- Systemen herstellten. Mit Hilfe von JAXP habe ich die XML- Nachrichten zu Java-Klassen gemappt. Dadurch entstand eine Schicht, die ohne XML- Kenntnisse mit dem Backend kommunizieren konnte. Außerdem erfolgte Konvertierungen von XML- Dokumenten mit Hilfe von XSL in verschiedene Dokumenten-Formen. Bemerkung: Dieses Projekt wurde von Start Amadeus wegen Restrukturierung storniert und soll in Zukunft umgesetzt werden. Betriebssysteme: Sun Solaris, Windows 2000 Entwicklungsumgebung: Weblogic, Oracle, SpyXML, WLE, Xerces, SAX, JAXP Sprachen: Java, XML, XSL, Libraries: JDK 1.3 41
Entwicklung eines Inventar-Systems (Deutsche Bahn) Branche: Verkehr Kunde: Deutsche Bahn Projektdauer: 09.2001 – 11.2001 Funktion Java Developer Kurzbeschreibung des Projektes In diesem Projekt wurde für die Deutsche Bahn ein Inventar-System entwickelt. Ich habe in diesem Projekt teilgewirkt und mit Struts Teile des Systems entwickelt. Meine Aufgabe bestand darin, das Backend mittels erstellter Stored Procedures an das Frontend einzubinden. Betriebssysteme: Sun Solaris, Windows 2000 Entwicklungsumgebung: Resin, Tomcat, Oracle, Java 1.3, Kawa, Struts, Oracle, Sprachen: Java Libraries: JDK 1.3 42
Entwicklung eines webbasierten Systems zum Aktienhandel und Kontenverwaltung (Dresdner Bank) Branche: Banken Kunde: Dresdner Bank Projektdauer: 02.2001 – 09.2001 Funktion Java Developer Kurzbeschreibung des Projektes In diesem Projekt wurde für die Dresdner Bank AG ein webbasiertes System zum Aktienhandel und Kontenverwaltung erstellt. Ich war bei der Erstellung des Pflichtenheftes tätig. Nach dieser Aufgabe habe ich zwei Module des System entwickelt. Bei den Modulen handelte es sich um Anzeigen und Auswerten von Konten- und Aktienbewegungen. Betriebssysteme: Sun Solaris Entwicklungsumgebung: Weblogic, Java 1.2, Kawa, Ldap Server, Oracle, Jsp, Servlet, EJB, abaXX-Framework Sprachen: Java Libraries: JDK 1.2 43
Entwicklung eines Prottypes für die AdvanceBank zur OnlineBanking und E-Finance-Portals (Advance Bank) Branche: Banken Kunde: AdvanceBank Projektdauer: 01.2001 – 02.2001 Funktion Java Developer Kurzbeschreibung des Projektes In diesem Projekt wurde ein Prototyp eines Finanzportals mit Hilfe des abaXX-Framework erstellt. Meine Aufgabe bestand darin, Inhalte von anderen Anbietern im Portal zugänglich zu machen, Backen-Systeme einzubinden und Loginprozeduren zu entwickeln. Betriebssysteme: Windows NT 4 Entwicklungsumgebung: Java, Weblogic, Kawa, Oracle, Jsp, Servlet, EJB, abaXX Framework Sprachen: Java Libraries: JDK 1.2 44
Entwicklung eines internetbasierten System zur Autovermietung (Deutsche Bahn Fuhrpark) Branche: Auto Kunde: Deutsche Bahn Fuhrpark Service GmbH Projektdauer: 09.2000 – 12.2000 Funktion Java Developer Kurzbeschreibung des Projektes In diesem Projekt wurde ein Shopsystem realisiert, mit dem Autos des DBFP Services (eine Tochtergesellschft der Bahn AG) verkauft und vermietet werden können. Meine Aufgabe bestand darin, mittels abaXX-Frameworks das Shop-System zu realisieren und die Backend-Systeme mitels JDBC einzubinden. Betriebssysteme: Windows NT 4 Entwicklungsumgebung: Java, Weblogic, Kawa, Oracle, Jsp, Servlet, EJB, abaXX EBS 2.0 Sprachen: Java Libraries: JDK 1.2 45
Entwicklung eines Business Portals Branche: Internet Kunde: Privat Person (Berlin) Projektdauer: 06.2000 – 09.2000 Funktion Developer Kurzbeschreibung des Projektes In diesem Projekt wurde mit Hilfe von Perl und PHP ein webbasiertes Business-Portal erstellt. Die Konzeption und Programmierung wurde vollständig von mir übernommen. Betriebssysteme: Linux Entwicklungsumgebung: MS Internet Explorer 5, Netscape 4.7, Notepad Sprachen: Perl , PHP Software Apache, MySQL, Perl, PHP 46
Entwicklung eines webbasierten Systems zur Abwicklung von Kundenumfragen Branche: Resource Management & Marketing Kunde: Force GmbH Frankfurt Projektdauer: 03.2000 – 06.2000 Funktion Developer Kurzbeschreibung des Projektes In diesem Projekt wurde mit Hilfe von Cold Fusion ein webbasiertes Abwicklungssytem für Kundenumfragen erstellt. Ich habe Teile des System programmiert. Meine Aufgabe bestand darin, mittels Stored Procedures die Backend-Systeme einzubinden. Betriebssysteme: Windows NT 4 Entwicklungsumgebung: Homesite Sprachen: Cold Fusion Datenbank: MS SQL 7, MS Access 47
Entwicklung eines webbasierten Systems zur Auswertung von Web-Statistiken Branche: Internet Kunde: Privat Person Projektdauer: 06.1999 – 10.1999 Funktion Java Developer Kurzbeschreibung des Projektes In diesem Projekt wurde mit Hilfe von Java, Servlets und MySql ein Webplatform entworfen, das Statistiken der angemeldeten Websites auswertet. Betriebssysteme: Linux Entwicklungsumgebung: Kawa, Java 1.2, Jserv Servlet Container, Apache Sprachen: Java Datenbank: MySQL 48
Entwicklung eines webbasierten Auktionssystems Branche: Internet Kunde: Privat Person Projektdauer: 03.1999 – 06.1999 Funktion Developer Kurzbeschreibung des Projektes In diesem Projekt wurde mit Hilfe von Perl, PHP und MySql eine Auktionswebsite erstellt. Die Konzeption und Programmierung wurde vollständig von mir übernommen. Betriebssysteme: FreeBsd Entwicklungsumgebung: Apache, Embedded Perl, Php Sprachen: Perl, Php Datenbank: MySQL 49
Entwicklung eines webbasierten Shopsystems Branche: Internet Kunde: Privat Person Projektdauer: 11.1998 – 02.1999 Funktion Developer Kurzbeschreibung des Projektes In diesem Projekt wurde mit Hilfe von Perl, PHP und MySql ein Shopsystem entwickelt. Die Konzeption und Programmierung wurde vollständig von mir übernommen. Betriebssysteme: FreeBsd Entwicklungsumgebung: Apache, Embedded Perl, Php Sprachen: Perl, Php Datenbank: MySQL EOF (End Of Fun) 50
Sie können auch lesen