weltweite Verfügbarkeit mit maximal 10% vor Ort
Firmengröße: > 100 Personen
Abteilungsgröße: > 30
Personen
Branche: IT, Handel
Als Mitglied eines Scrum Teams implementiere ich Features, Bugfixes und Optimierungen innerhalb sämtlicher Kassenworkflows. In kleinerem Umfang werden auch Entwicklungen an Services im Back-Office Server durchgeführt, ansonsten betreffen die Arbeiten hauptsächlich die Kassenanwendung und zusätzliche Komponenten am Kassen-PC (POS PC). Der Store Server als Kassen-Backend ist eine Java Anwendung, die auf das OSGi Framework TREND basiert. Der Client ist eine Java Rich Client Anwendung bei der ebenfalls das TREND Framework sowohl als OSGi Implementierung als auch für die Abbildung der Workflows (Model Driven Development) zum Einsatz kommt. Der POS PC basiert auf CentOS-Linux. Als DBMS werden primär PostgreSQL und H2 verwendet und in kleinerem Umfang MS SQL.
Die Test-Abdeckung und Code-Qualitätsmetriken werden mithilfe von SonarQube überwacht. Ich schreibe sowohl Unit-Tests (JUnit 4 und 5, Mockito) als auch integrative Tests (Integrity Test Framework und Fitnesse) und logische Testfälle. Testfälle werden mithilfe von TREND Analyst und Zephyr dokumentiert.
Releases werden in festgelegten Release-Zyklen geliefert. Gitflow wird zur Verwaltung von Git-Branches verwendet. Die Dokumentation erfolgt hauptsächlich in Confluence, Jira und TREND Analyst. Praktiken der agilen Software-Entwicklung wie Pair Programming kommen zum Einsatz. Ich führe Reviews durch und nehme an Meetings wie Daily, Refinement, Planning teil.
Mein Aufgabenspektrum ist breit gefächert und beinhaltet (nicht erschöpfende Aufzählung) die Implementierung von Features und Bugfixes in Java, Bash-Scripts, Perl, das Schreiben, Ausführen und Dokumentieren zugehöriger Tests sowie die Dokumentation von Features, Erstellung von User Stories, automatisierte Migration von Dokumentation per Python Scripts, Fehleranalyse, Erstellung von RPMs und MSIs. Die Analyse und Anpassung von hardwarenahem Code (Kommunikation mit Drucker, Scanner, Waagen, EFT-Terminals), die Implementierung neuer EFT-Terminals, das Handling von digitalen Zertifikaten gehört dazu genauso wie die Konzeptionierung von Methoden und Komponenten zur automatischen Softwareverteilung an die POS PCs, Erstellung eines Services mit Quarkus zum Testen einer zertifikatsbasierten Authentifizierung, Analyse von CI Pipelines in Jenkins und GitLab, Anpassung von Maven POMs und die Evaluierung und Konzeptionierung des Updates des Betriebssystems der POS PCs.
Firmengröße: > 10000 Personen
Abteilungsgröße: > 40 Personen
Branche: Handel, IT
Die IT-Umgebung ist im Groben wie folgt strukturiert. Die meisten auf das Kerngeschäft des Konzerns bezogenen Daten werden in DB2-Datenbanken gepflegt. Für einige im Rahmen dieses Projektes eingesetzte Anwendungen werden weitere relevante Daten auch in Big-Data-Strukturen verwaltet. Das Dependency Management wird unternehmensweit mit Maven realisiert. Intern entwickelte Bibliotheken und Komponenten werden über einen Nexus Server zur Verfügung gestellt. Quickbuild fungiert als Continuous Integration System. Für die Versionsverwaltung wrden Subversion (SVN) und Git verwendet. Als Test-Tools und -Frameworks kommen JUnit, Mockito, DB Unit und zum Teil auch JMockit und Easymock zum Einsatz. Als IDEs stehen Eclipse und IntelliJ (Ultimate) zur Verfügung und es werden beide eingesetzt. Neue Anforderungen, Fehlerberichte, die durchgeführten Analysen, deren Ergebnisse sowie Implementierungen werden in JIRA-Tickets und in Confluence Seiten dokumentiert. Die Test-Abdeckung und Code-Qualitätsmetriken werden mithilfe von SonarLint und SonarQube überprüft.
Meine auf dieses Projekt bezogenen Tätigkeiten umfassen die Analyse, Weiterentwicklung, Bugfixing und Performance-Optimierung an unterschiedlichen bestehenden Systemen sowie die Entwicklung neuer Anwendungen basierend auf gegebene Spezifikationen und Anforderungen. Es werden Updates und Migrationen auf neue Versionen von Technologie-Stacks durchgeführt, wie z.B. von Es werden Releases geplant und erstellt und eployments angestoßen welche dann vom Betrieb durchgeführt werden. Dependencies werden optimiert und bereinigt (Maven). Bestehender Code wird nach Clean Code . Ab Ende 2020 arbeiten Teams in denen ich mitwirke durchgängig agil, hauptsächlich nach Scrum Methodik ein Team Kanban Modus.
Im Folgenden werden meine wichtigsten Aktivitäten beschrieben.
Weiterentwicklung einer Web- und einer Batch-Anwendung (Java) zur Aufbereitung, Anzeige Weiterleitung und Weiterverfolgung von elektronischen Rechnungen. Das Frontend dient zur Suche und Anzeige von Rechnungen und deren Bestandteile. Das Backend stellt Rest-Services für die Anlage von Daten in der DB2 zur Verfügung. Die Arbeiten umfassen Anpassungen an allen Komponenten inklusive Optimierung der Dependencies (Maven). Es werden DAOs, Service-Komponenten, Rest-Services, das Frontend und Batch-Tasks erweitert, angepasst und optimiert und Bugs darin gefixt. Neue Unit-Tests und Integration-Test werden unter Verwendung von JUnit 4, Mockito und DBUnit geschrieben und bestehende gefixt, optimiert und erweitert. Das Backend läuft auf Tomcat 9. Das Frontend wird im Rahmen der Weiterentwicklung von Tomcat 7 auf Tomcat 9 umgezogen. Im Frontend wird Wicket 8.6 eingesetzt. Die Batch-Tasks laufen in einem intern entwickelten Batch-Framework.
Neu-Entwicklung eines auf Quarkus basierenden REST Services. Der Service wird nach dem Design-First-Ansatz entwickelt. Die Sourcen und CI/CD Pipelines werden in GitLab verwaltet; Deployment erfolgt im On-Premise Kubernetes Cluster. Der Service liefert Preisdaten für eine gegebene Menge von Artikeln bezogen auf weitere Filter-Parameter. Im weiteren Projektverlauf führe ich die Migration von Quarkus 1.x auf 2.0 durch.
Analyse, Bugfixing und Performance-Optimierung für eine Java-Batch-Anwendung, die Daten aus DB2 extrahiert, transformiert und in eine Big-Table-Struktur lädt. Letztere wird zur späteren Visualisierung in eine neue Datenstruktur innerhalb des selben Big-Table Volumes transformiert. Die Daten umfassen mehrere Milliarden Datensätze. Die Berechnungen werden auf einem Hadoop-Cluster durch den Einsatz von Apache Spark ausgeführt. Die Entwicklung erfolgt fast ausschließlich in Java 8 wobei u.a. Features wie die Streaming-API, Lambdas und die ab Version 8 eingeführte Date and Time API verwendet werden. Analyse und Optimierung erfolgen mit besonderem Augenmerk auf die Parallelisierung im Cluster und auf die Laufzeit beim Speichern und Verarbeiten von Daten in HBase (MapR). Änderungsanforderungen werden implementiert. Neue Tests werden entwickelt und bestehende erweitert und optimiert.
Analyse und Weiterentwicklung an einem auf Tomcat und Apache Wicket bestehenden System zur Anzeige von Preis- und Rabatt-Daten. Das System besteht aus separaten Backend- und Frontend-Server. Die Authentifizierung läuft über CAS (Central Authentication Service). Für die Kommunikation mit dem Backend sind Rest-Services und JSON relevant. Die Daten werden sowohl aus DB2 als auch aus einer MapR Big-Table ausgelesen. Sowohl die Frontend-Web-Anwendung als auch die Server-Anwendung sind Teil eines Systems welches aus mehreren Modulen besteht. Releases des Systems werden über Module-Builds erstellt. Während der Projekttätigkeit werden die einzelnen Anwendungen separiert und auf neue Versionen der verwendeten Frameworks migriert, wie z.B. auf Spring 5.2, Apache Wicket 8.5. Kleinere Dev-Ops Tätigkeiten beinhalten die Konfiguration von Virtual Machines und der darauf laufenden Tomcats über Ansible; Durchführung von Deployments über Jenkins und XL Release.
Neu-Entwicklung eines auf Spring Boot 2 basierenden REST Services (Microservice), welches die Abfrage von Parametern/Tags für bestimmte Entitäten anhand gegebener Filterkriterien ermöglicht. Der Service wird nach dem Design-First-Ansatz entwickelt. Die Implementierung beinhaltet die Erstellung automatisierter Tests mit Hilfe von Spring Boot Test Modulen.
Implementierung von Change-Requests und Bugfixes an einer auf Tomcat laufenden Java Web Anwendung zur Pflege und Anzeige von Daten zu Märkte, Konzessionäre, Kassen und Artikel. Migration von Tomcat 7 nach Tomcat 8. Einsatz von Java 8 spezifischem Code. Verbesserung der Test-Abdeckung des Codes. Die Änderungen betreffen sowohl das Frontend als auch das Backend. Der Code basiert u.a. auf ein hauseigenes MVC-Framework welches auf Apache Wicket 6 aufbaut, auf Spring 4.6 und myBatis (iBatis).
Neu-Entwicklung einer Web-Anwendung basierend auf Spring 5.2, Spring Data 2.2, Wicket 8.5 zur Selektion von Daten und darauf basierenden Erstellung von Einträgen in eine DB2-Tabelle. Diese Einträge werden von regelmäßig laufenden Batch Jobs als dessen Parameter abgefragt.
Entwicklung neuer und Weiterentwicklung bestehender Batch-Anwendungen (Java), die auf dem IBM z/OS Host laufen. Die Batches laden Daten von DB2 DBs (z/OS und LUW) und verarbeiten diese bzw. reichern sie mit Daten aus anderen Datenquellen an. In weiteren Schritten werden resultierende Daten in DB2 DBs geschrieben und/oder an REST Endpoints gesendet.
Beginnend von einem Rescue OS wird in einer Virtuellen Maschine per Debian bootstrap das Filesystem (LVM und ext4) und ein minimales Debian Linux System installiert. Die nötigen Pakete für den Zugriff per SSH gesichert durch TLS/SSL und einer Firewall werden installiert und konfiguriert. LDAP wird installiert und eingerichtet inklusive der Initialisierung eines Schemas für die Benutzer-Verwaltung. LDAP Authentifizierung auf System-Ebene wird durch LDAP-PAM ermöglicht.
Als MTA (Mail Transfer Agent) kommt Exim 4 zum Einsatz. Exim wird installiert und die Split-Konfiguration wird so angepasst, dass mit den nötigen Ressourcen die Kommunikation durch TLS/SSL gesichert ist. Als IMAP-Server wird Dovecot verwendet. Auch dessen Split-Konfiguration wird angepasst und die Kommunikation mit dem IMAP-Server durch TLS/SSL gesichert.
Als Web-Server wird Apache HTTPD installiert und eingerichtet.
System Updates werden durchgeführt und Logs regelmäßig ausgewertet.
Referenz: https://malvuccio-it.blogspot.com
Das System dient zur Eingabe, Verwaltung und Auswertung von Test-Daten zu Projekten unterschiedlichster Art (Software und Hardware) innerhalb des Konzerns und wird von Mitarbeitern weltweit eingesetzt.
Test-Dokumente können in verschiedenen Formaten (XML, MS-Word, MS-Excel, etc.) abgelegt werden. Von Benutzern erstellte Dokumente werden geparsed, um sie auf syntaktische und semantische Korrektheit zu prüfen und per XSLT oder über einen OpenOffice-Server transformiert. Für die Web-Oberfläche kommen u.a. Ajax-fähige Bibliotheken zum Einsatz. Die Daten werden in einer Oracle Datenbank gehalten. Reports werden sowohl über JasperReports als auch über Eclipse BIRT (Reporting Engine) generiert. Das System stellt auch Web Services zur Verfügung um Daten abzufragen und verarbeiten zu können.
Meine Tätigkeiten beinhalten die Planung und Implementierung von Feature-Requests sowie Analyse, Bug-fixing, Performance-Optimierung für bestehende intern entwickelte Legacy-Komponenten und die Entwicklung von Gradle-Scripte zur Erstellung von Releases für unterschiedliche Zielumgebungen. Ich bin verantwortlich für das Monitoring der in Tomcat Servern (im Load-balancing) und als Batch-Server laufenden Anwendungen, für die Planung und Erstellung von Releases und die Verfassung von Release-Notes. Auf DB-Ebene werden für die Wartung, Analyse und Datenmigration SQL Scripte per SQL Developer oder SQL*Plus ausgeführt.
Die durchgeführten Arbeiten beinhalten folgende Migrationen: Oracle DB 10 -> 11 (Anpassung der SQL-Scripte); Build-Scripte von Ant nach Gradle; Hibernate 3.6 -> 4.2; Java 5 -> 6 -> 7; Tomcat 6 -> 7; JSF 1.1 (inkl. Struts 1.1) -> 2.1; Richfaces 3.3.0 -> 4.5.8.
08/2011 ? 05/2013
Java-Server- und teils -Client-Entwicklung an 4 bestehenden Applikationen die für den Bereich Credit-Risk-Management bestimmt sind.
Firmengröße: < 5000 Personen
Abteilungsgröße:
Branche: Bank, Finanzdienstleistung
Grober Funktionsumfang der Systeme:
Monitoring von Krediten
Web-Anwendung zum Monitoring des strukturierten und teils corporate Kredit-Portfolios. Einzelne Deals werden über alle Phasen, von der Annahme über die Auszahlung bis zur finalen Rückzahlung überwacht. Analysten werden über fällige Berichte und nicht eingehaltene Konditionen benachrichtigt und beim Vorbereiten von jährlichen Credit Reviews unterstützt.
Kernkomponenten: Pflege der Stammdaten, Exposures. Protokollierung der Credit Reviews, der Entwicklung der Deals, der Einhaltung von Covenants und des fristgerechten periodischen Reportings. Erstellen von Reports (Excel, PDF). Pflege eines Kalenders mit Deal-spezifischen Events. Automatische Versendung von E-mails.
Die Anwendung verwendet ein proprietäres Web-MVC-Framework, welches aus Apache Struts aufbaut, und bezieht Daten auch aus anderen Systemen der Bank.
Elektronische Beantragung von Krediten
Web-Anwendung zur Unterstützung der Kreditprozesse hauptsächlich für das deutsche Mittelstandgeschäft.
Kernkomponenten: Kreditanträge über unterschiedliche Phasen prozessieren: Beantragung, Beurteilung, Annahme/Ablehnung. Überwachung des Verlaufs der Kredite und der Einhaltung von Covenants. Automatische Versendung von E-mails.
Portfolio-Management-System
Web-Anwendung zur Erstellung von Reports über das Portfolio der Bank mit unterschiedlichen Parametern zur Filterung und Untergliederung der Berichtsdaten.
Anwendung zur Erstellung von Vertragsdokumenten
Rich-Client-/Server-Anwendung zur Erstellung von Vertragsdokumenten (Kredite und Kreditsicherheiten) mit Hilfe vordefinierter Textbausteine und individueller Daten.
Textbausteine werden von Benutzern gepflegt. Die Bausteine werden im XML-Format abgelegt. PDF-Dokumente werden über XSLT, XSL-FO generiert.
2nd- und 3rd-Level-Support für diese Applikationen, für System (1) für weltweite Niederlassungen.
Im Zuge der Transformation der Bank zu einer Finanzdienstleistungsgesellschaft werden die Systeme einem Rebranding unterzogen und teils mandantenfähig gemacht.
Speziell zu System (1):
Implementierung von Upgrades von Frameworks (Spring, Hibernate)
Optimierung von Teilen der Architektur
Migration von Java 5 nach Java 6 und von Websphere 6.1 nach Websphere 7
DB-Migrationen werden mit Hilfe von Flyway DB durchgeführt
DV-Umfeld:
Model Driven Architecture, AspectJ, Ant, TeamCity (Continuous Integration Server), Mantis, Java (5, 6), WebSphere (6.1, 7), Tomcat, Eclipse, Axis, JasperReports, XSLT, Apache FOP, EH Cache 2.0, Hibernate (3.0.5, 3.3.2, 3.6.8), Spring (2.5.5, 3.0.5, 3.1.0), Struts 1.1, JSF 1.1, Apache MyFaces, jBPM, JMS (Java Message Service, IBM MQ), Drools, Oracle 11, PL/SQL, UML, OAW - Open Architecture Ware - Magic Draw 15.5, Eclipse EMF, Git, CVS, Apache POI, Swing, Apache Wicket 1.5.7, SAS, TOAD 10, SQL Devloper 3.2, Flyway
05/2010 ? 07/2011
Java-Entwicklung am Shop-System (Client und Server) für einen Telekommunikationsprovider. Konzept- und Design-Erstellung. Review von Fachanforderungen und Design-Dokumenten. Coaching von Offshore-Entwicklern. Incident-/Problem-Management.
Firmengröße: > 100000 Personen
Abteilungsgröße: > 200 Personen
Branche: IT, Telekommunikation
Während der Projektlaufzeit werden in einem multinationalen Umfeld u.a. folgende Aufgaben durchgeführt.
Java-Client-Entwicklung: Es werden Erweiterungen für die Shop-Anwendung (Rich-Client-Java) entwickelt. Sowohl für bestehenden als auch für neu entwickelten Code wird Bugfixing und Code-Review durchgeführt. Unit-Tests werden erstellt und bestehende erweitert. Die einzelnen Module werden als Eclipse-Plugins unter Verwendung des bestehenden MVC- und Dependency-Injection-Frameworks implementiert.
Java-Server-Entwicklung: Erweiterung bestehender Klassen des Servers. Die Server-Anwendung kommuniziert mit dem Shop-Client über HTTP/XML und mit weiteren Systemen aus dem Backend über definierte Schnittstellen. U.a. werden XML-Daten validiert und per XSLT transfomiert. Unit-Tests werden erstellt, erweitert und korrigiert. Branch-and-merge: Merges unterschiedlicher Branches werden durchgeführt.
Hudson/Jenkins CI (Continuous Integration): Ein Jenkins-System (früher Hudson) wird als Ablösung eines bestehenden CruiseControl-Systems konfiguriert. In einem SVN-Repository verwaltete Projekte werden eingerichtet. Ant-Skripte werden angepasst.
Dokument-Review: Es werden Reviews von Fachanforderungsdokumenten durchgeführt.
Konzepterstellung: Basierend auf Fachanforderungen werden Lösungs-Konzepte erstellt und mit dem Kunden abgestimmt. Diese werden größtenteils von Offshore-Entwicklern entwickelt.
Coaching von Offshore-Entwicklern: Offshore-Entwickler werden bei der Entwicklung neuer Komponenten und bei der Erstellung von Lösungs-Konzepten unterstützt.
Incident-/Problem-Management: Treten Probleme oder Fehler in der Software auf, werden diese in einem JIRA-System verwaltet. Der Incident-/Problem-Manager dient hier als direkte Schnittstelle zum Kunden um Priorisierung und Weiterverarbeitung entsprechend der SLAs (Service-Level-Agreements) abzustimmen. Tickets werden den zuständigen Personen zugewiesen und deren Abarbeitung im Zusammenhang erfolgter und geplanter Releases verfolgt.
DV-Umfeld:
Java 1.4, JDK 1.4, JUnit, Eclipse, Eclipse-Plugins, Swing, OOP, QS, Linux, Unix (Solaris), Oracle, Web Services, XML, XSD, XSL, XSLT, XPath, XQuery, Tomcat, JIRA, MVC, Solution-Design, Document-Review, Code-Review, CVS, SVN, Ant, CruiseControl, Hudson/Jenkins
12/2009 ? 04/2010
Java-Entwicklung von Web-Applikationen, Web Services, EJBs innerhalb einer SOA-Umgebung unter Verwendung von Tomcat, Stripes und Hibernate. Entwicklung von Unit-Tests. Durchführung von Tests über SoapUI. Security hardening.
Firmengröße: > 10000 Personen
Abteilungsgröße: > 100 Personen
Branche: IT, Logistik
Entwicklung im Rahmen des Projektes E-Postbrief von EJBs, JSPs, Web Services für das Billing-System innerhalb einer SOA-Umgebung unter Verwendung von Tomcat als Servlet Container, des Stripes Web Frameworks, Hibernate und JAX-WS.
Hauptsächlich werden Anwendungen zur Konfiguration und Wartung des Billing-Systems erweitert, fehlerbereinigt und optimiert.
Entwicklung von Unit-Tests.
Erstellung und Durchführung von WebService-Tests in SoapUI.
Konzeptionierung und Implementierung von Sicherheitsmechanismen zur Absicherung der Applikationen gegen bekannte Angriffsvektoren.
DV-Umfeld:
Java EE 5, JDK 5, JUnit, Eclipse, OOD, OOP, QS, Linux, Hibernate, Oracle, JAX-WS, Web Services, XML, WSDL, JSP, Stripes, Tomcat, EJB, SOA (Service Oriented Architecture), MVC, SoapUI
8/2009 ? 11/2009
Konzeptionierung und Entwicklung zur Daten-Transformation und -Auswertung eines Test-Systems mit Java (SE), Apache Derby 10.5(Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Optoelektronik
Projektplanung, -leitung und -durchführung unter Verwendung von einigen Aspekten der agilen Softwareentwicklung.
Ist-Aufnahme: Analyse der IT-Infrastruktur des Test-Systems, insbesondere der MS-Access-DB, in der die Testdaten gesammelt werden.
Konzeptionierung der Applikation zur Daten-Transformation u.a. unter Verwendung des UML-Plugins von Netbeans.
Entwicklung des DB-Schemas (Apache Derby), der Applikationen (100%-Java) und der Junit-Tests. Erstellung der Testumgebung. Verwendung des MVC-Patterns. Berichtsgenerierung erfolgt mit JasperReports. Erstellung der Berichte.
Entwicklung unter Solaris und Windows XP, Deployment auf Solaris, Windows XP und Windows 2003 Server.
DV-Umfeld:
Apache Derby10.5, GUI, Java (JSE), JDK, Junit, Netbeans 6.x, OO-Analyse, OO-Design, OO-Programmierung, QS, Unix (Solaris), SQL, SWING, UML, XML
1/2009 ? 7/2009
Portierung eines Warenwirtschaftssystems von C nach Java SE 6; PostgreSQL; Konzeptionierung (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Einzelhandel, Großhandel
Portierung eines Warenwirtschaftssystems von C nach Java unter Verwendung eines intern entwickelten Frameworks. Mitentwicklung innerhalb eines 11-köpfigen Teams (8 Entwickler, 3 QS). Java GUI-Komponenten werden nach dem MVC-pattern entwickelt. Als Grundlage dient Swing. Änderungen und Korrekturen am bestehenden C-Code werden durchgeführt.
Es wird eine 3-Schichten-Architektur verwendet. Der Server ist eine 100% Java-Anwendung, die bei Bedarf auf alte C-Komponenten zugreift. Der Client ist eine 100% Rich-Client Java-Anwendung. DBMS ist PostreSQL 8.3. Als persistence framework wird Apache iBatis verwendet.
Konzeptionierung und Modellierung (UML): Daten müssen aus Fassaden-Tabellen einer IBM DB2 Datenbank in Textdateien exportiert werden. Diese werden von einem anderen Prozess in die Datenbank importiert.
Konzeptionierung der Implementierung der Online-Hilfe über JavaHelp 2.0.
Verwendung von Design-Patterns.
Test-Automatisierung mit JUnit und EasyMock.
DV-Umfeld:
Anpassungsfähigkeit, CVS, DB2, Eclipse, Eigenverantwortliches Arbeiten, GUI, J2SE, Java, JDK, Junit, Linux, OO-Analyse, OO-Design, OO-Programmierung, PostgresSQL, SQL, StarOffice, SWING, Teamfähigkeit, UML, XML, Zuverlässig
10/2008 ? 12/2008
Web-Entwicklung Java, HTML, XML, MySQL (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Telekommunikation
Für ein auf Browsern und Diensten von Mobilfunkgeräten (Handy) abgestimmtes System wird eine internetfähige Administrationsanwendung erstellt. Das backend besteht aus Java Servlets. Für die Präsentationsschicht kommen Apache Velocity templates zum Einsatz. Als web container dient Apache Tomcat.
DV-Umfeld:
AJAX, HTML, J2EE, J2SE, JavaScript, Kommunikationsfähigkeit, Linux, mySQL, NetBeans, OO-Design, OO-Programmierung, Sun Solaris, SVN, Tomcat, Velocity, XML
5/2008 ? 9/2008
Entwicklung von Internet Community Portalen mit PHP, MySQL, XML, CSS, AJAX (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Medien
Entwicklung eines neuen Community-Portals in einem mehrköpfigen Team. Pflege eines bestehenden Community Portals. Beide Portale mit mehreren 100.000 PIs pro Tag.
Es wird streng nach dem MVC-Prinzip entwickelt (Zend Framework). Datenbankabfragen werden durch Einsatz von Memcache auch bei vielen Lese-/Schreibzugriffen performant gehalten.
Für die Anwendung aktueller Internet-Technologien (Web 2.0) kommt u.a. jQuery zum Einsatz.
DV-Umfeld:
AJAX, Eclipse, HTML, JavaScript, Kommunikationsfähigkeit, Kundenorientierung, mySQL, OO-Programmierung, PHP, SQL, SVN, XML, Teamfähigkeit
4/2007 ? 4/2008
Entwicklung eines neuen Intranet Portals mit JSE, JEE, EJB, JSP, AJAX, YUI (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Telekommunikation
Als Teil eines 4-Köpfigen-Teams: Mit-Entwicklung am Datenbank Schema, entsprechender EJBs, Klassen und Methoden für den Applikationslayer. Als DBMS dient Oracle 10g. Als persistence framework kommt Oracle TopLink (auch bekannt als EclipseLink) zum Einsatz.
Präsentationsschicht: Design und Entwicklung des Web-UIs wird mit JSPs unter Verwendung der Yahoo User Interface Library (YUI) realisiert.
Schwerpunkte: JEE 5, JSE 5, EJB 3, TopLink (EclipseLink), HTML, CSS, JavaScript, OOD, OOP, Software Buildcycle, Junit, YUI
DV-Umfeld:
AJAX, Apache, EJB, J2EE, J2SE, JPA, JavaScript, Kommunikationsfähigkeit, Linux, MS Internet Explorer, Netscape Navigator, OO-Design, OO-Programmierung, Oracle, PL-SQL, Sun Solaris, SVN, Tomcat, TopLink (EclipseLink), XML, Zuverlässig
9/2006 ? 3/2007
Software-Entwicklung am bestehenden Intranet-Portal mit PHP, PL/SQL, HTML, JavaScript (Freiberuflich)
Firmengröße:
Abteilungsgröße: > 200 Personen
Branche: Telekommunikation
Entwicklung neuer Module in PHP 5 innerhalb eines bestehenden Monitoring- und Auswertungs-Systems im Intranet. Hierfür werden neue Tabellen, Trigger in einer Oracle 9i Datenbank erstellt.
Bestehende Bibliotheken werden verwendet. Von anderen Teams/Abteilungen zur Verfügung gestellte Funktionalitäten werden zum Teil über Webservices via SOAP angesprochen.
Für eine bessere Benutzerfreundlichkeit kommt AJAX zum Einsatz.
Bestimmte Aufgaben werden durch Erstellung von Shell-Scripten (bash, ksh) und Perl-Scripten gelöst.
Grafiken werden mit JPGraph und der GD-Library, PDF-Dokumente mit Hilfe der FPDF-Bibliothek erstellt.
Schwerpunkte:
Erstellung neuer PHP5-Klassen, -Funktionen, PHP-Scripte und XHMTL Dokumente; Code-Analyse; Fehlerbehebung; SQL-Scripte für Oracle 9i; Teamfähigkeit.
DV-Umfeld:
AJAX, Apache, CVS, Eclipse, Eigenverantwortliches Arbeiten, Exceed, HTML, JavaScript, MS Internet Explorer, MS Office 2003, OO-Design, OO-Programmierung, Oracle, Oracle9i, Perl, PHP, PL-SQL, Shell-Scripts, SQL, Windows XP, XML
7/2006 ? 7/2006
First-Level-Support für MS Outlook 2003 (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branchen: Automobilbranche, Dienstleistung, IT
First-Level-Support für MS Outlook 2003 nach der Migration der Exchange Server von 5.5 nach 2003 und der Clients von MS Office 97 nach MS Office 2003
Schwerpunkte:
Einweisung der Benutzer in MS Outlook 2003; Übernahme alter Outlook 97-Daten; PST-Dateien
DV-Umfeld:
MS Office 2003, MS Outlook, Windows XP
3/2006 ? 5/2006
Java- und PHP Entwickler (Freiberuflich)
Firmengröße: > 10000 Personen
Abteilungsgröße:
Branchen: IT-Dienstleistungen
Optimierung der Performance, Benutzerfreundlichkeit und Stabilität eines bestehenden Konfigurationsmanagement-Systems.
Schwerpunkte:
Analysieren/Optimieren des bestehenden Quellcodes; Erstellen neuer Klassen und Methoden
DV-Umfeld:
Unix (HP-UX), J2SE, Linux, Objectivity, Oracle9i, PHP, SQL, XML
8/2005 ? 12/2006
Java- und DB-Entwickler (Firebird); Projektmanager (Freiberuflich)
Anpassung eines Warenwirtschaftssystems an die Umgebung eines Unternehmens aus der Mikrowellen-Technik
Firmengröße:
Abteilungsgröße:
Branche: Labor
Verwaltung der Bereiche Geräte, Service und Marketing.
Daten-Export in MS Access über JdbcOdbc Bridge.
Schwerpunkte: IST-Analyse (OOA/OO-Analyse); Kommunikation mit den Benutzern; Präsentation des Produktes; Support für Test, Installation, Customizing und Echtbetrieb auf MS Windows XP und MS Windows 2000 Server.
DV-Umfeld:
DBase, J2SE, JDBC, JDK, MS Office 2000, NetBeans, OO-Analyse, OO-Design, OO-Programmierung, SQL, SWING, Windows 2000, Windows XP
5/2005 ? 5/2005
Migration einer MS Access 97 Anwendung nach Access 2000; Support (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Industrie, Opto-Elektronic
Eine bestehende Anwendung für die Produktionsdatenerfassung eines Unternehmens aus der Opto-Elektronik wird von MS Access 97 nach MS Access 2000 migriert.
DV-Umfeld:
MS Office 2000, MS Office 95/97, MS-Access, MS-Visual Basic for Applications (VBA), Windows 2000, Windows XP
12/2004 ? 12/2004
Windows 2003 Server, XP Administration; Installation HP Server; C-Entwickler (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Ingenieurwesen, Industrie
Aufbau von zwei 19?-Schränken mit jeweils sieben HP ProLiant Servern.
Davon fungieren jeweils zwei (insgesamt vier) als redundante Siemens WinCC-Server und fünf (insgessamt zehn) als WinCC-Clients.
Zusätzlich ein Siemens PanelPC und eine WinCC Workstation (HP ProLiant).
Schwerpunkte:
Einbau der Server; Installation von MS Windows 2003 Server, XP; Erarbeitung eines einfachen Backup-/Restore-Vorganges, Realisierung desselbigen durch zusammenstellen einer netzwerkfähigen Bootdiskette mit eingebautem Restore-/Backup-Vorgang mit Norton Ghost; Anpassung von C-Code (Siemens WinCC-Bibliotheken) für die Migration.
DV-Umfeld:
C, HP-Server, MS-DOS, Norton Ghost, Windows 2003, Windows XP, Siemens WinCC
10/2004 ? 4/2005
Windows 2000 und 2003 Server Administration; MS SQL Server Administration; Trainer; C++-Entwickler; (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Industrie (Stahl, Aluminium, Kupfer)
Anteilige Inbetriebnahme eines Oberflächeninspektionssystems der Firma Parsytec. Schulung der Benutzer und der Techniker für die Instandhaltung
Schwerpunkte:
Erstellen eines produktiven Klassifikators; Fehleranalyse und -behebung im Windows-Netzwerk und im F/O-Netz zwischen Kameras und Windows Server; Erstellung einer C++-Applikation für die Datenkommunikation zwischen dem SIS und einer werksinternen IBM AS/400; Anpassung von Skripten in einer proprietären Skript-Sprache (PDL); Einrichten des Sicherungsservers und der automatischen Bandsicherung (CA ArcServe 11);
Schulung der Benutzer über Parsytec SIS, IT Grundlagen, Windows XP Grundlagen, CA ArcServe
DV-Umfeld:
ADO, C++, CA Arcserve, Englisch, HP-Server, Italienisch, MS-Access, MS-SQL-Server, Norton Ghost, PC Anywhere, SQL, Windows 2000, Windows 2003, Windows XP, PDL (proprietäre Skriptsprache)
4/2004 ? 8/2005
First- und Second-Level-Support; After-sales (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Industrie (Stahl, Aluminium, Kupfer)
First- und Second-Level-Support für Kunden von Oberflächeninspektionssystemen der Firma Parsytec aus der Stahlindustrie in Italien, Deutschland und Österreich.
Schwerpunkte: Verwaltung der Kontakte ausgewählter Kunden und der zugehörigen Support-Fälle, Fehleranalyse und -behebung, Schnittstelle zwischen der Firma Parsytec und seinen Kunden, PDL (proprietäre Skriptsprache).
DV-Umfeld:
C++, CA Arcserve, Englisch, HP-Server, Italienisch, MS-Access, MS-SQL-Server, Norton Ghost, PC Anywhere, SQL, Windows 2000, Windows 2003, Windows NT, Windows XP
11/2003 ? 3/2004
Implementierung propietärer S/W; MS SQL Server Administration; Trainer; C++-Entwickler (Freiberuflich)
Firmengröße: > 10000 Personen
Abteilungsgröße:
Branche: Industrie (Stahl)
Anteilige Inbetriebnahme eines Oberflächeninspektionssystems der Firma Parsytec. Schulung der Benutzer und der Techniker für die Instandhaltung.
Schwerpunkte: Erstellen eines produktiven Klassifikators; Fehleranalyse und -behebung im Windows-Netzwerk und im F/O-Netz zwischen Kameras und Windows Server; Erstellung einer C++-Applikation für die Datenkommunikation zwischen dem SIS und einer werksinternen IBM AS/400; Anpassung von Skripten in einer proprietären Skript-Sprache (PDL); Einrichten des Sicherungsservers und der automatischen Bandsicherung (CA ArcServe);
Schulung der Benutzer über Parsytec SIS, IT Grundlagen, Windows NT 4 Grundlagen, CA ArcServe
DV-Umfeld:
ADO, C++, CA Arcserve, Englisch, Italienisch, MS-Access, MS-SQL-Server, Norton Ghost, PC Anywhere, SCSI, SQL, Windows 2000, Windows NT
10/2003 ? 11/2003
C/C++-Entwickler; Tester (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Industrie (Stahl)
Als Teil eines Entwicklerteams: Debugging und Test einer Applikation für eine Hochofensteuerung, First- und Second-Level-Support.
Die Anwendung wird von WIN16 auf WIN32 portiert und der Quellcode in diesem Zuge von C nach C++.
Schwerpunkte:
Programmverhalten und Performance analysieren, Log-Dateien auswerten. Kommunikation mit dem Entwicklerteam. Hotfixes erstellen und implementieren.
DV-Umfeld:
Borland Delphi (Object Pascal), C, C++, DBase, Delphi, MS Visual-C++, MS-Access, MS-Visual Studio, Windows XP
6/2003 ? 12/2006
Java- und DB-Architekt und -Entwickler zur Entwicklung eines Standard-Warenwirtschaftssystems. (Freiberuflich)
Firmengröße: < 10 Personen
Abteilungsgröße: < 10 Personen
Branche: IT
Das System ist voll parametrisierbar, über DB und Properties. Unternehmenswichtige Entitäten, wie Adressen, Angebote, Aufträge, Eingangs-/Ausgangsrechungen werden verwaltet. Auswertungen werden mit JasperReports erstellt. Datenexport in Formate wie CSV und dBase sind möglich.
Schwerpunkte:
Konzeptionierung der DB- und OO-Modelle (OOA, OOD); Entwicklung der Datenbank (Firebird), Businesslogik (Java 5: J2SE), GUI (Swing); Deployment: Java WebStart; Produkt-Dokumentation
DV-Umfeld:
DBase, GUI, Interbase, J2SE, JDBC, JDK, Linux, NetBeans, OO-Analyse, OO-Design, OO-Programmierung, SQL, StarOffice, SWING, Windows XP, XML
11/2002 ? 12/2002
Analyse; PHP- und DB-Entwickler (Firebird); Dokumentation; Präsentation (Angestellt)
Firmengröße:
Abteilungsgröße:
Branche: Beratungsunternehmen (Consulting)
Entwicklung eines Web basierten Change-Request-Tracking-Systems.
Es werden eine IST- und eine Kosten-/Nutzen-Analyse durchgeführt. Nach Erstellung eines Grobkonzeptes wird dieses in ein Feinkonzept umgesetzt.
Die Projektumsetzung besteht aus der Entwicklung der Datenbank und der PHP-Skripte für den Login-Vorgang, die Navigation in den verschiedenen Übersichten und der Online-Hilfe. Es wird ein SOLL-IST-Vergleich durchgeführt, das Projekt wird dokumentiert und anschließend präsentiert.
Schwerpunkte:
IST-Analyse; Grob-, Feinplanung; Erstellen des Datenbanklayouts mit Sybase PowerDesigner; Design einer intuitiven Web-Oberfläche; Dokumentation; Präsentation
DV-Umfeld:
Apache, HTML, Interbase, MS Internet Explorer, Netscape Navigator, PHP, Power Designer, SQL, Windows 2000
8/2001 ? 1/2002
Visual Basic 6 Entwickler; DB-Entwickler (MS SQL Server); Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: Beratungsunternehmen, Dienstleistung, IT-Dienstleistungen, Einzelhandel, Ingenieurwesen
Entwicklung einer Auftragsabwicklung als Erweiterung der Personal- und Adressverwaltung.
Verwaltet werden Angebote, Aufträge, Rechnungen, Leistungsnachweise, Eingangsrechnungen, etc.. Eingangs-/Ausgangszahlungen werden mit Solldaten verglichen.
Die Anwendung ist mandantenfähig, da die Daten für die unterschiedlichen Geschäftsbereiche teils unabhängig gepflegt und ausgewertet werden müssen.
Erstellung von Dokumenten und Auswertungen erfolgt über CrystalReports 6.
Schwerpunkte:
Konzeptionierung und Implementierung mit Visual Basic 6; Entwicklung der Datenbank (MS Enterprise Manager), der Businesslogik, der GUI und der Berichtsgenerierung (Crystal Reports 6);
Support für Test, Installation, Customizing und Echtbetrieb auf Windows 2000.
DV-Umfeld:
ADO, Crystal reports, GUI, MS Visual-Basic, MS-SQL-Server, MS-Visual Studio, SQL, Windows 2000
4/2001 ? 1/2002
Visual Basic 6 Entwickler; DB-Entwickler (MS SQL Server); Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: Beratungsunternehmen, Dienstleistung, IT-Dienstleistungen, Einzelhandel, Ingenieurwesen
Entwicklung einer Personal- und Adressverwaltung.
Adressdaten von Kunden, Lieferanten, Mitarbeiter werden verwaltet. Mitarbeiter spezifische Daten, wie Urlaub, Einsatzart, Schulungen, etc. werden gepflegt und für Planungen verwendet.
Die Berechtigungen für die Benutzer werden in 2 Ebenen verwaltet. Auf Applikationsebene über ein Admin-Fenster. Auf DB-Ebene, indem MS SQL Server-Gruppen im Zusammenhang mit Active Directory-Gruppen verwaltet werden.
Schwerpunkte:
Konzeptionierung und Implementierung mit Visual Basic 6; Entwicklung der Datenbank (MS Enterprise Managers), der Businesslogik, der GUI und der Berichtsgenerierung (Crystal Reports 6);
Support für Test, Installation, Customizing und Echtbetrieb auf Windows 2000.
DV-Umfeld:
ADO, Crystal reports, GUI, MS Visual-Basic, MS-SQL-Server, MS-Visual Studio, SQL, Windows 2000
2/2001 ? 2/2001
Entwickler MS Access 2000; Analyse; Planung (Freiberuflich)
Firmengröße: < 10 Personen
Abteilungsgröße: < 10 Personen
Branche: Werbung, Druck (Printing)
Planung und Entwicklung einer MS Access 2000 Datenbank zur Kunden- und Rechnungsverwaltung.
Auf Grund des Jahr 2000 Problems muss eine MS-DOS Anwendung zur Rechnungserstellung abgelöst werden.
Eine IST-Analyse, die Planung und Entwicklung einer MS Access 2000 Datenbank zur Kunden- und Rechnungsverwaltung werden durchgeführt.
Dezember 2001 wird die EURO-Umstellung durchgeführt.
Schwerpunkte:
Analyse, Planung, DB-Design
DV-Umfeld:
MS Office 2000, MS-Access, MS-Visual Basic for Applications (VBA), SQL, Windows 98
1/2001 ? 10/2001
Entwickler MS Access 97; Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: IT-Dienstleistungen, Industrie, Optoelektronik
Wartung einer MS Access 97 Datenbank für das Controlling.
Second- und Third-Level-Support für eine MS Access 97 Datenbank, welche für das Controlling eingesetzt wird. Daten werden über ODBC von einem Oracle-Server des Buchhaltungssystems ausgelesen.
Schwerpunkte:
Debugging (Fehleranalyse und -behebung)
DV-Umfeld:
DAO, MS Office 95/97, MS-Access, MS-Visual Basic for Applications (VBA), ODBC, Oracle, SQL
12/2000 ? 1/2002
Entwickler MS Access 97; MS Office 97; Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: IT-Dienstleistungen, Industrie, Optoelektronik
Wartung und Weiterentwicklung eines MS Access 97 Systems für die Produktionsdatenerfassung.
Second- und Third-Level-Support für eine MS Access 97 Datenbank. Entwicklung neuer Access-Formulare für die Eingabe und Access-Berichte für die Datenauswertung und SQL-Abfragen. Die Datenbank dient der Eingabe und Auswertung von Produktionsdaten eines Unternehmens aus der Opto-Elektronik. Über OLE sind weitere MS Office Produkte eingebunden.
Schwerpunkte:
Debugging (Fehleranalyse und -behebung); Reporting
DV-Umfeld:
ADO, DAO, MS Office 95/97, MS-Access, MS-Office, MS-Visual Basic for Applications (VBA), OLE, SQL, Windows 2000, Windows NT
10/2000 ? 12/2000
Entwickler MS Access 2000; MS Excel; Analyse; Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: Bauhandwerk
Entwicklung einer MS Access 2000 Anwendung für das Controlling.
Für die Buchhaltung eines Unternehmens aus dem Baugewerbe muss, basierend auf eine Excel-Tabelle für das Controlling, eine MS Access Anwendung erstellt werden. Soll- und Ist-Daten werden eingegeben und ageben und ausgewertet.
Schwerpunkte:
Analyse von Excel-Sheets; DB Design; GUI-Entwicklung
DV-Umfeld:
MS Office 2000, MS Office 95/97, MS-Access, Windows 2000
Software-Entwickler, -Architekt
Methoden
--------
Design patterns
Objektorientierte Analyse (OOA) > 3 Jahre
Objektorientiertes Design (OOD) > 3 Jahre
Objektorientierte Programmierung (OOP) > 10 Jahre
Strukturierte Programmierung
UML > 1 Jahr
Standards / Frameworks
----------------------
AJAX
Apache iBatis
Apache Wicket Versionen 1.5.7
AOP (Aspect Oriented Programming) AspectJ
AWT (Abstract Window Toolkit)
EclipseLink (TopLink)
EJB
Hibernate (ORM) Versionen 3.x
JavaBeans
JAX-WS
jQuery
JSF (Java Server Faces) Versionen 1.1, 2.1
MS ADO (ActiveX Data Objects)
MS DAO (Data Access Objects)
ODBC
OLE
Richfaces 3.3, 4.5
RMI (Remote Method Invocation)
SOAP
Spring Versionen 2.5.5, 3.0.5, 3.1.0
Stripes Web Framework
Struts Versionen 1.1
Swing > 10 Jahre; Fortgeschrittener
Velocity
Web Services
WSDL
XML
XPath
XQuery
XSD
XSL
XSLT
YUI (Yahoo User Interface)
Tools
-----
Apache FOP
Apache HTTPD
Apache POI
CA Arcserve > 2 Jahre; zuletzt in 2005
CVS
Eclipse > 10 Jahre; Fortgeschrittener
Exceed
Flyway DB
Git
Hudson / Jenkins (CI-Server)
JasperReports > 5 Jahre; Fortgeschrittener
JIRA
Junit
Lotus Notes Versionen 7.x, 8.5
Mozilla Firefox
MS Internet Explorer Versionen 5.5 - 9
MS Outlook
MS Office
MS Visual Studio zuletzt in 2005
NetBeans > 10 Jahre; Fortgeschrittener
Netscape Navigator
Norton Ghost
OpenOffice
Parsytec SIS Inbetriebnahme durchgeführt und als Trainer tätig gewesen
PC Anywhere
Power Designer
SQL Developer
StarOffice
SVN (Subversion)
TeamCity (CI Server)
TOAD
Tomcat > 8 Jahre
WebSphere Versionen 6.1, 7; < 2 Jahre
Hibernate
EclipseLink (TopLink)
Apache iBatisAluminiumindustrie
Automobilbranche / Automotive (Automobilzulieferer/Telematik)
Bank
Bauhandwerk
Beratungsunternehmen
Dienstleistung
EDV-Dienstleistungen
Einzelhandel
Finanzdienstleistung
Forschung und Entwicklung
Großhandel
Immobilien
Ingenieurwesen
IT / Informations-Technologie
Labor
Logistik
Medien
Optoelektronik
Stahlindustrie
Telekommunikation / Mobilfunk (Telko / Telco)
weltweite Verfügbarkeit mit maximal 10% vor Ort
Firmengröße: > 100 Personen
Abteilungsgröße: > 30
Personen
Branche: IT, Handel
Als Mitglied eines Scrum Teams implementiere ich Features, Bugfixes und Optimierungen innerhalb sämtlicher Kassenworkflows. In kleinerem Umfang werden auch Entwicklungen an Services im Back-Office Server durchgeführt, ansonsten betreffen die Arbeiten hauptsächlich die Kassenanwendung und zusätzliche Komponenten am Kassen-PC (POS PC). Der Store Server als Kassen-Backend ist eine Java Anwendung, die auf das OSGi Framework TREND basiert. Der Client ist eine Java Rich Client Anwendung bei der ebenfalls das TREND Framework sowohl als OSGi Implementierung als auch für die Abbildung der Workflows (Model Driven Development) zum Einsatz kommt. Der POS PC basiert auf CentOS-Linux. Als DBMS werden primär PostgreSQL und H2 verwendet und in kleinerem Umfang MS SQL.
Die Test-Abdeckung und Code-Qualitätsmetriken werden mithilfe von SonarQube überwacht. Ich schreibe sowohl Unit-Tests (JUnit 4 und 5, Mockito) als auch integrative Tests (Integrity Test Framework und Fitnesse) und logische Testfälle. Testfälle werden mithilfe von TREND Analyst und Zephyr dokumentiert.
Releases werden in festgelegten Release-Zyklen geliefert. Gitflow wird zur Verwaltung von Git-Branches verwendet. Die Dokumentation erfolgt hauptsächlich in Confluence, Jira und TREND Analyst. Praktiken der agilen Software-Entwicklung wie Pair Programming kommen zum Einsatz. Ich führe Reviews durch und nehme an Meetings wie Daily, Refinement, Planning teil.
Mein Aufgabenspektrum ist breit gefächert und beinhaltet (nicht erschöpfende Aufzählung) die Implementierung von Features und Bugfixes in Java, Bash-Scripts, Perl, das Schreiben, Ausführen und Dokumentieren zugehöriger Tests sowie die Dokumentation von Features, Erstellung von User Stories, automatisierte Migration von Dokumentation per Python Scripts, Fehleranalyse, Erstellung von RPMs und MSIs. Die Analyse und Anpassung von hardwarenahem Code (Kommunikation mit Drucker, Scanner, Waagen, EFT-Terminals), die Implementierung neuer EFT-Terminals, das Handling von digitalen Zertifikaten gehört dazu genauso wie die Konzeptionierung von Methoden und Komponenten zur automatischen Softwareverteilung an die POS PCs, Erstellung eines Services mit Quarkus zum Testen einer zertifikatsbasierten Authentifizierung, Analyse von CI Pipelines in Jenkins und GitLab, Anpassung von Maven POMs und die Evaluierung und Konzeptionierung des Updates des Betriebssystems der POS PCs.
Firmengröße: > 10000 Personen
Abteilungsgröße: > 40 Personen
Branche: Handel, IT
Die IT-Umgebung ist im Groben wie folgt strukturiert. Die meisten auf das Kerngeschäft des Konzerns bezogenen Daten werden in DB2-Datenbanken gepflegt. Für einige im Rahmen dieses Projektes eingesetzte Anwendungen werden weitere relevante Daten auch in Big-Data-Strukturen verwaltet. Das Dependency Management wird unternehmensweit mit Maven realisiert. Intern entwickelte Bibliotheken und Komponenten werden über einen Nexus Server zur Verfügung gestellt. Quickbuild fungiert als Continuous Integration System. Für die Versionsverwaltung wrden Subversion (SVN) und Git verwendet. Als Test-Tools und -Frameworks kommen JUnit, Mockito, DB Unit und zum Teil auch JMockit und Easymock zum Einsatz. Als IDEs stehen Eclipse und IntelliJ (Ultimate) zur Verfügung und es werden beide eingesetzt. Neue Anforderungen, Fehlerberichte, die durchgeführten Analysen, deren Ergebnisse sowie Implementierungen werden in JIRA-Tickets und in Confluence Seiten dokumentiert. Die Test-Abdeckung und Code-Qualitätsmetriken werden mithilfe von SonarLint und SonarQube überprüft.
Meine auf dieses Projekt bezogenen Tätigkeiten umfassen die Analyse, Weiterentwicklung, Bugfixing und Performance-Optimierung an unterschiedlichen bestehenden Systemen sowie die Entwicklung neuer Anwendungen basierend auf gegebene Spezifikationen und Anforderungen. Es werden Updates und Migrationen auf neue Versionen von Technologie-Stacks durchgeführt, wie z.B. von Es werden Releases geplant und erstellt und eployments angestoßen welche dann vom Betrieb durchgeführt werden. Dependencies werden optimiert und bereinigt (Maven). Bestehender Code wird nach Clean Code . Ab Ende 2020 arbeiten Teams in denen ich mitwirke durchgängig agil, hauptsächlich nach Scrum Methodik ein Team Kanban Modus.
Im Folgenden werden meine wichtigsten Aktivitäten beschrieben.
Weiterentwicklung einer Web- und einer Batch-Anwendung (Java) zur Aufbereitung, Anzeige Weiterleitung und Weiterverfolgung von elektronischen Rechnungen. Das Frontend dient zur Suche und Anzeige von Rechnungen und deren Bestandteile. Das Backend stellt Rest-Services für die Anlage von Daten in der DB2 zur Verfügung. Die Arbeiten umfassen Anpassungen an allen Komponenten inklusive Optimierung der Dependencies (Maven). Es werden DAOs, Service-Komponenten, Rest-Services, das Frontend und Batch-Tasks erweitert, angepasst und optimiert und Bugs darin gefixt. Neue Unit-Tests und Integration-Test werden unter Verwendung von JUnit 4, Mockito und DBUnit geschrieben und bestehende gefixt, optimiert und erweitert. Das Backend läuft auf Tomcat 9. Das Frontend wird im Rahmen der Weiterentwicklung von Tomcat 7 auf Tomcat 9 umgezogen. Im Frontend wird Wicket 8.6 eingesetzt. Die Batch-Tasks laufen in einem intern entwickelten Batch-Framework.
Neu-Entwicklung eines auf Quarkus basierenden REST Services. Der Service wird nach dem Design-First-Ansatz entwickelt. Die Sourcen und CI/CD Pipelines werden in GitLab verwaltet; Deployment erfolgt im On-Premise Kubernetes Cluster. Der Service liefert Preisdaten für eine gegebene Menge von Artikeln bezogen auf weitere Filter-Parameter. Im weiteren Projektverlauf führe ich die Migration von Quarkus 1.x auf 2.0 durch.
Analyse, Bugfixing und Performance-Optimierung für eine Java-Batch-Anwendung, die Daten aus DB2 extrahiert, transformiert und in eine Big-Table-Struktur lädt. Letztere wird zur späteren Visualisierung in eine neue Datenstruktur innerhalb des selben Big-Table Volumes transformiert. Die Daten umfassen mehrere Milliarden Datensätze. Die Berechnungen werden auf einem Hadoop-Cluster durch den Einsatz von Apache Spark ausgeführt. Die Entwicklung erfolgt fast ausschließlich in Java 8 wobei u.a. Features wie die Streaming-API, Lambdas und die ab Version 8 eingeführte Date and Time API verwendet werden. Analyse und Optimierung erfolgen mit besonderem Augenmerk auf die Parallelisierung im Cluster und auf die Laufzeit beim Speichern und Verarbeiten von Daten in HBase (MapR). Änderungsanforderungen werden implementiert. Neue Tests werden entwickelt und bestehende erweitert und optimiert.
Analyse und Weiterentwicklung an einem auf Tomcat und Apache Wicket bestehenden System zur Anzeige von Preis- und Rabatt-Daten. Das System besteht aus separaten Backend- und Frontend-Server. Die Authentifizierung läuft über CAS (Central Authentication Service). Für die Kommunikation mit dem Backend sind Rest-Services und JSON relevant. Die Daten werden sowohl aus DB2 als auch aus einer MapR Big-Table ausgelesen. Sowohl die Frontend-Web-Anwendung als auch die Server-Anwendung sind Teil eines Systems welches aus mehreren Modulen besteht. Releases des Systems werden über Module-Builds erstellt. Während der Projekttätigkeit werden die einzelnen Anwendungen separiert und auf neue Versionen der verwendeten Frameworks migriert, wie z.B. auf Spring 5.2, Apache Wicket 8.5. Kleinere Dev-Ops Tätigkeiten beinhalten die Konfiguration von Virtual Machines und der darauf laufenden Tomcats über Ansible; Durchführung von Deployments über Jenkins und XL Release.
Neu-Entwicklung eines auf Spring Boot 2 basierenden REST Services (Microservice), welches die Abfrage von Parametern/Tags für bestimmte Entitäten anhand gegebener Filterkriterien ermöglicht. Der Service wird nach dem Design-First-Ansatz entwickelt. Die Implementierung beinhaltet die Erstellung automatisierter Tests mit Hilfe von Spring Boot Test Modulen.
Implementierung von Change-Requests und Bugfixes an einer auf Tomcat laufenden Java Web Anwendung zur Pflege und Anzeige von Daten zu Märkte, Konzessionäre, Kassen und Artikel. Migration von Tomcat 7 nach Tomcat 8. Einsatz von Java 8 spezifischem Code. Verbesserung der Test-Abdeckung des Codes. Die Änderungen betreffen sowohl das Frontend als auch das Backend. Der Code basiert u.a. auf ein hauseigenes MVC-Framework welches auf Apache Wicket 6 aufbaut, auf Spring 4.6 und myBatis (iBatis).
Neu-Entwicklung einer Web-Anwendung basierend auf Spring 5.2, Spring Data 2.2, Wicket 8.5 zur Selektion von Daten und darauf basierenden Erstellung von Einträgen in eine DB2-Tabelle. Diese Einträge werden von regelmäßig laufenden Batch Jobs als dessen Parameter abgefragt.
Entwicklung neuer und Weiterentwicklung bestehender Batch-Anwendungen (Java), die auf dem IBM z/OS Host laufen. Die Batches laden Daten von DB2 DBs (z/OS und LUW) und verarbeiten diese bzw. reichern sie mit Daten aus anderen Datenquellen an. In weiteren Schritten werden resultierende Daten in DB2 DBs geschrieben und/oder an REST Endpoints gesendet.
Beginnend von einem Rescue OS wird in einer Virtuellen Maschine per Debian bootstrap das Filesystem (LVM und ext4) und ein minimales Debian Linux System installiert. Die nötigen Pakete für den Zugriff per SSH gesichert durch TLS/SSL und einer Firewall werden installiert und konfiguriert. LDAP wird installiert und eingerichtet inklusive der Initialisierung eines Schemas für die Benutzer-Verwaltung. LDAP Authentifizierung auf System-Ebene wird durch LDAP-PAM ermöglicht.
Als MTA (Mail Transfer Agent) kommt Exim 4 zum Einsatz. Exim wird installiert und die Split-Konfiguration wird so angepasst, dass mit den nötigen Ressourcen die Kommunikation durch TLS/SSL gesichert ist. Als IMAP-Server wird Dovecot verwendet. Auch dessen Split-Konfiguration wird angepasst und die Kommunikation mit dem IMAP-Server durch TLS/SSL gesichert.
Als Web-Server wird Apache HTTPD installiert und eingerichtet.
System Updates werden durchgeführt und Logs regelmäßig ausgewertet.
Referenz: https://malvuccio-it.blogspot.com
Das System dient zur Eingabe, Verwaltung und Auswertung von Test-Daten zu Projekten unterschiedlichster Art (Software und Hardware) innerhalb des Konzerns und wird von Mitarbeitern weltweit eingesetzt.
Test-Dokumente können in verschiedenen Formaten (XML, MS-Word, MS-Excel, etc.) abgelegt werden. Von Benutzern erstellte Dokumente werden geparsed, um sie auf syntaktische und semantische Korrektheit zu prüfen und per XSLT oder über einen OpenOffice-Server transformiert. Für die Web-Oberfläche kommen u.a. Ajax-fähige Bibliotheken zum Einsatz. Die Daten werden in einer Oracle Datenbank gehalten. Reports werden sowohl über JasperReports als auch über Eclipse BIRT (Reporting Engine) generiert. Das System stellt auch Web Services zur Verfügung um Daten abzufragen und verarbeiten zu können.
Meine Tätigkeiten beinhalten die Planung und Implementierung von Feature-Requests sowie Analyse, Bug-fixing, Performance-Optimierung für bestehende intern entwickelte Legacy-Komponenten und die Entwicklung von Gradle-Scripte zur Erstellung von Releases für unterschiedliche Zielumgebungen. Ich bin verantwortlich für das Monitoring der in Tomcat Servern (im Load-balancing) und als Batch-Server laufenden Anwendungen, für die Planung und Erstellung von Releases und die Verfassung von Release-Notes. Auf DB-Ebene werden für die Wartung, Analyse und Datenmigration SQL Scripte per SQL Developer oder SQL*Plus ausgeführt.
Die durchgeführten Arbeiten beinhalten folgende Migrationen: Oracle DB 10 -> 11 (Anpassung der SQL-Scripte); Build-Scripte von Ant nach Gradle; Hibernate 3.6 -> 4.2; Java 5 -> 6 -> 7; Tomcat 6 -> 7; JSF 1.1 (inkl. Struts 1.1) -> 2.1; Richfaces 3.3.0 -> 4.5.8.
08/2011 ? 05/2013
Java-Server- und teils -Client-Entwicklung an 4 bestehenden Applikationen die für den Bereich Credit-Risk-Management bestimmt sind.
Firmengröße: < 5000 Personen
Abteilungsgröße:
Branche: Bank, Finanzdienstleistung
Grober Funktionsumfang der Systeme:
Monitoring von Krediten
Web-Anwendung zum Monitoring des strukturierten und teils corporate Kredit-Portfolios. Einzelne Deals werden über alle Phasen, von der Annahme über die Auszahlung bis zur finalen Rückzahlung überwacht. Analysten werden über fällige Berichte und nicht eingehaltene Konditionen benachrichtigt und beim Vorbereiten von jährlichen Credit Reviews unterstützt.
Kernkomponenten: Pflege der Stammdaten, Exposures. Protokollierung der Credit Reviews, der Entwicklung der Deals, der Einhaltung von Covenants und des fristgerechten periodischen Reportings. Erstellen von Reports (Excel, PDF). Pflege eines Kalenders mit Deal-spezifischen Events. Automatische Versendung von E-mails.
Die Anwendung verwendet ein proprietäres Web-MVC-Framework, welches aus Apache Struts aufbaut, und bezieht Daten auch aus anderen Systemen der Bank.
Elektronische Beantragung von Krediten
Web-Anwendung zur Unterstützung der Kreditprozesse hauptsächlich für das deutsche Mittelstandgeschäft.
Kernkomponenten: Kreditanträge über unterschiedliche Phasen prozessieren: Beantragung, Beurteilung, Annahme/Ablehnung. Überwachung des Verlaufs der Kredite und der Einhaltung von Covenants. Automatische Versendung von E-mails.
Portfolio-Management-System
Web-Anwendung zur Erstellung von Reports über das Portfolio der Bank mit unterschiedlichen Parametern zur Filterung und Untergliederung der Berichtsdaten.
Anwendung zur Erstellung von Vertragsdokumenten
Rich-Client-/Server-Anwendung zur Erstellung von Vertragsdokumenten (Kredite und Kreditsicherheiten) mit Hilfe vordefinierter Textbausteine und individueller Daten.
Textbausteine werden von Benutzern gepflegt. Die Bausteine werden im XML-Format abgelegt. PDF-Dokumente werden über XSLT, XSL-FO generiert.
2nd- und 3rd-Level-Support für diese Applikationen, für System (1) für weltweite Niederlassungen.
Im Zuge der Transformation der Bank zu einer Finanzdienstleistungsgesellschaft werden die Systeme einem Rebranding unterzogen und teils mandantenfähig gemacht.
Speziell zu System (1):
Implementierung von Upgrades von Frameworks (Spring, Hibernate)
Optimierung von Teilen der Architektur
Migration von Java 5 nach Java 6 und von Websphere 6.1 nach Websphere 7
DB-Migrationen werden mit Hilfe von Flyway DB durchgeführt
DV-Umfeld:
Model Driven Architecture, AspectJ, Ant, TeamCity (Continuous Integration Server), Mantis, Java (5, 6), WebSphere (6.1, 7), Tomcat, Eclipse, Axis, JasperReports, XSLT, Apache FOP, EH Cache 2.0, Hibernate (3.0.5, 3.3.2, 3.6.8), Spring (2.5.5, 3.0.5, 3.1.0), Struts 1.1, JSF 1.1, Apache MyFaces, jBPM, JMS (Java Message Service, IBM MQ), Drools, Oracle 11, PL/SQL, UML, OAW - Open Architecture Ware - Magic Draw 15.5, Eclipse EMF, Git, CVS, Apache POI, Swing, Apache Wicket 1.5.7, SAS, TOAD 10, SQL Devloper 3.2, Flyway
05/2010 ? 07/2011
Java-Entwicklung am Shop-System (Client und Server) für einen Telekommunikationsprovider. Konzept- und Design-Erstellung. Review von Fachanforderungen und Design-Dokumenten. Coaching von Offshore-Entwicklern. Incident-/Problem-Management.
Firmengröße: > 100000 Personen
Abteilungsgröße: > 200 Personen
Branche: IT, Telekommunikation
Während der Projektlaufzeit werden in einem multinationalen Umfeld u.a. folgende Aufgaben durchgeführt.
Java-Client-Entwicklung: Es werden Erweiterungen für die Shop-Anwendung (Rich-Client-Java) entwickelt. Sowohl für bestehenden als auch für neu entwickelten Code wird Bugfixing und Code-Review durchgeführt. Unit-Tests werden erstellt und bestehende erweitert. Die einzelnen Module werden als Eclipse-Plugins unter Verwendung des bestehenden MVC- und Dependency-Injection-Frameworks implementiert.
Java-Server-Entwicklung: Erweiterung bestehender Klassen des Servers. Die Server-Anwendung kommuniziert mit dem Shop-Client über HTTP/XML und mit weiteren Systemen aus dem Backend über definierte Schnittstellen. U.a. werden XML-Daten validiert und per XSLT transfomiert. Unit-Tests werden erstellt, erweitert und korrigiert. Branch-and-merge: Merges unterschiedlicher Branches werden durchgeführt.
Hudson/Jenkins CI (Continuous Integration): Ein Jenkins-System (früher Hudson) wird als Ablösung eines bestehenden CruiseControl-Systems konfiguriert. In einem SVN-Repository verwaltete Projekte werden eingerichtet. Ant-Skripte werden angepasst.
Dokument-Review: Es werden Reviews von Fachanforderungsdokumenten durchgeführt.
Konzepterstellung: Basierend auf Fachanforderungen werden Lösungs-Konzepte erstellt und mit dem Kunden abgestimmt. Diese werden größtenteils von Offshore-Entwicklern entwickelt.
Coaching von Offshore-Entwicklern: Offshore-Entwickler werden bei der Entwicklung neuer Komponenten und bei der Erstellung von Lösungs-Konzepten unterstützt.
Incident-/Problem-Management: Treten Probleme oder Fehler in der Software auf, werden diese in einem JIRA-System verwaltet. Der Incident-/Problem-Manager dient hier als direkte Schnittstelle zum Kunden um Priorisierung und Weiterverarbeitung entsprechend der SLAs (Service-Level-Agreements) abzustimmen. Tickets werden den zuständigen Personen zugewiesen und deren Abarbeitung im Zusammenhang erfolgter und geplanter Releases verfolgt.
DV-Umfeld:
Java 1.4, JDK 1.4, JUnit, Eclipse, Eclipse-Plugins, Swing, OOP, QS, Linux, Unix (Solaris), Oracle, Web Services, XML, XSD, XSL, XSLT, XPath, XQuery, Tomcat, JIRA, MVC, Solution-Design, Document-Review, Code-Review, CVS, SVN, Ant, CruiseControl, Hudson/Jenkins
12/2009 ? 04/2010
Java-Entwicklung von Web-Applikationen, Web Services, EJBs innerhalb einer SOA-Umgebung unter Verwendung von Tomcat, Stripes und Hibernate. Entwicklung von Unit-Tests. Durchführung von Tests über SoapUI. Security hardening.
Firmengröße: > 10000 Personen
Abteilungsgröße: > 100 Personen
Branche: IT, Logistik
Entwicklung im Rahmen des Projektes E-Postbrief von EJBs, JSPs, Web Services für das Billing-System innerhalb einer SOA-Umgebung unter Verwendung von Tomcat als Servlet Container, des Stripes Web Frameworks, Hibernate und JAX-WS.
Hauptsächlich werden Anwendungen zur Konfiguration und Wartung des Billing-Systems erweitert, fehlerbereinigt und optimiert.
Entwicklung von Unit-Tests.
Erstellung und Durchführung von WebService-Tests in SoapUI.
Konzeptionierung und Implementierung von Sicherheitsmechanismen zur Absicherung der Applikationen gegen bekannte Angriffsvektoren.
DV-Umfeld:
Java EE 5, JDK 5, JUnit, Eclipse, OOD, OOP, QS, Linux, Hibernate, Oracle, JAX-WS, Web Services, XML, WSDL, JSP, Stripes, Tomcat, EJB, SOA (Service Oriented Architecture), MVC, SoapUI
8/2009 ? 11/2009
Konzeptionierung und Entwicklung zur Daten-Transformation und -Auswertung eines Test-Systems mit Java (SE), Apache Derby 10.5(Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Optoelektronik
Projektplanung, -leitung und -durchführung unter Verwendung von einigen Aspekten der agilen Softwareentwicklung.
Ist-Aufnahme: Analyse der IT-Infrastruktur des Test-Systems, insbesondere der MS-Access-DB, in der die Testdaten gesammelt werden.
Konzeptionierung der Applikation zur Daten-Transformation u.a. unter Verwendung des UML-Plugins von Netbeans.
Entwicklung des DB-Schemas (Apache Derby), der Applikationen (100%-Java) und der Junit-Tests. Erstellung der Testumgebung. Verwendung des MVC-Patterns. Berichtsgenerierung erfolgt mit JasperReports. Erstellung der Berichte.
Entwicklung unter Solaris und Windows XP, Deployment auf Solaris, Windows XP und Windows 2003 Server.
DV-Umfeld:
Apache Derby10.5, GUI, Java (JSE), JDK, Junit, Netbeans 6.x, OO-Analyse, OO-Design, OO-Programmierung, QS, Unix (Solaris), SQL, SWING, UML, XML
1/2009 ? 7/2009
Portierung eines Warenwirtschaftssystems von C nach Java SE 6; PostgreSQL; Konzeptionierung (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Einzelhandel, Großhandel
Portierung eines Warenwirtschaftssystems von C nach Java unter Verwendung eines intern entwickelten Frameworks. Mitentwicklung innerhalb eines 11-köpfigen Teams (8 Entwickler, 3 QS). Java GUI-Komponenten werden nach dem MVC-pattern entwickelt. Als Grundlage dient Swing. Änderungen und Korrekturen am bestehenden C-Code werden durchgeführt.
Es wird eine 3-Schichten-Architektur verwendet. Der Server ist eine 100% Java-Anwendung, die bei Bedarf auf alte C-Komponenten zugreift. Der Client ist eine 100% Rich-Client Java-Anwendung. DBMS ist PostreSQL 8.3. Als persistence framework wird Apache iBatis verwendet.
Konzeptionierung und Modellierung (UML): Daten müssen aus Fassaden-Tabellen einer IBM DB2 Datenbank in Textdateien exportiert werden. Diese werden von einem anderen Prozess in die Datenbank importiert.
Konzeptionierung der Implementierung der Online-Hilfe über JavaHelp 2.0.
Verwendung von Design-Patterns.
Test-Automatisierung mit JUnit und EasyMock.
DV-Umfeld:
Anpassungsfähigkeit, CVS, DB2, Eclipse, Eigenverantwortliches Arbeiten, GUI, J2SE, Java, JDK, Junit, Linux, OO-Analyse, OO-Design, OO-Programmierung, PostgresSQL, SQL, StarOffice, SWING, Teamfähigkeit, UML, XML, Zuverlässig
10/2008 ? 12/2008
Web-Entwicklung Java, HTML, XML, MySQL (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Telekommunikation
Für ein auf Browsern und Diensten von Mobilfunkgeräten (Handy) abgestimmtes System wird eine internetfähige Administrationsanwendung erstellt. Das backend besteht aus Java Servlets. Für die Präsentationsschicht kommen Apache Velocity templates zum Einsatz. Als web container dient Apache Tomcat.
DV-Umfeld:
AJAX, HTML, J2EE, J2SE, JavaScript, Kommunikationsfähigkeit, Linux, mySQL, NetBeans, OO-Design, OO-Programmierung, Sun Solaris, SVN, Tomcat, Velocity, XML
5/2008 ? 9/2008
Entwicklung von Internet Community Portalen mit PHP, MySQL, XML, CSS, AJAX (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Medien
Entwicklung eines neuen Community-Portals in einem mehrköpfigen Team. Pflege eines bestehenden Community Portals. Beide Portale mit mehreren 100.000 PIs pro Tag.
Es wird streng nach dem MVC-Prinzip entwickelt (Zend Framework). Datenbankabfragen werden durch Einsatz von Memcache auch bei vielen Lese-/Schreibzugriffen performant gehalten.
Für die Anwendung aktueller Internet-Technologien (Web 2.0) kommt u.a. jQuery zum Einsatz.
DV-Umfeld:
AJAX, Eclipse, HTML, JavaScript, Kommunikationsfähigkeit, Kundenorientierung, mySQL, OO-Programmierung, PHP, SQL, SVN, XML, Teamfähigkeit
4/2007 ? 4/2008
Entwicklung eines neuen Intranet Portals mit JSE, JEE, EJB, JSP, AJAX, YUI (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Telekommunikation
Als Teil eines 4-Köpfigen-Teams: Mit-Entwicklung am Datenbank Schema, entsprechender EJBs, Klassen und Methoden für den Applikationslayer. Als DBMS dient Oracle 10g. Als persistence framework kommt Oracle TopLink (auch bekannt als EclipseLink) zum Einsatz.
Präsentationsschicht: Design und Entwicklung des Web-UIs wird mit JSPs unter Verwendung der Yahoo User Interface Library (YUI) realisiert.
Schwerpunkte: JEE 5, JSE 5, EJB 3, TopLink (EclipseLink), HTML, CSS, JavaScript, OOD, OOP, Software Buildcycle, Junit, YUI
DV-Umfeld:
AJAX, Apache, EJB, J2EE, J2SE, JPA, JavaScript, Kommunikationsfähigkeit, Linux, MS Internet Explorer, Netscape Navigator, OO-Design, OO-Programmierung, Oracle, PL-SQL, Sun Solaris, SVN, Tomcat, TopLink (EclipseLink), XML, Zuverlässig
9/2006 ? 3/2007
Software-Entwicklung am bestehenden Intranet-Portal mit PHP, PL/SQL, HTML, JavaScript (Freiberuflich)
Firmengröße:
Abteilungsgröße: > 200 Personen
Branche: Telekommunikation
Entwicklung neuer Module in PHP 5 innerhalb eines bestehenden Monitoring- und Auswertungs-Systems im Intranet. Hierfür werden neue Tabellen, Trigger in einer Oracle 9i Datenbank erstellt.
Bestehende Bibliotheken werden verwendet. Von anderen Teams/Abteilungen zur Verfügung gestellte Funktionalitäten werden zum Teil über Webservices via SOAP angesprochen.
Für eine bessere Benutzerfreundlichkeit kommt AJAX zum Einsatz.
Bestimmte Aufgaben werden durch Erstellung von Shell-Scripten (bash, ksh) und Perl-Scripten gelöst.
Grafiken werden mit JPGraph und der GD-Library, PDF-Dokumente mit Hilfe der FPDF-Bibliothek erstellt.
Schwerpunkte:
Erstellung neuer PHP5-Klassen, -Funktionen, PHP-Scripte und XHMTL Dokumente; Code-Analyse; Fehlerbehebung; SQL-Scripte für Oracle 9i; Teamfähigkeit.
DV-Umfeld:
AJAX, Apache, CVS, Eclipse, Eigenverantwortliches Arbeiten, Exceed, HTML, JavaScript, MS Internet Explorer, MS Office 2003, OO-Design, OO-Programmierung, Oracle, Oracle9i, Perl, PHP, PL-SQL, Shell-Scripts, SQL, Windows XP, XML
7/2006 ? 7/2006
First-Level-Support für MS Outlook 2003 (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branchen: Automobilbranche, Dienstleistung, IT
First-Level-Support für MS Outlook 2003 nach der Migration der Exchange Server von 5.5 nach 2003 und der Clients von MS Office 97 nach MS Office 2003
Schwerpunkte:
Einweisung der Benutzer in MS Outlook 2003; Übernahme alter Outlook 97-Daten; PST-Dateien
DV-Umfeld:
MS Office 2003, MS Outlook, Windows XP
3/2006 ? 5/2006
Java- und PHP Entwickler (Freiberuflich)
Firmengröße: > 10000 Personen
Abteilungsgröße:
Branchen: IT-Dienstleistungen
Optimierung der Performance, Benutzerfreundlichkeit und Stabilität eines bestehenden Konfigurationsmanagement-Systems.
Schwerpunkte:
Analysieren/Optimieren des bestehenden Quellcodes; Erstellen neuer Klassen und Methoden
DV-Umfeld:
Unix (HP-UX), J2SE, Linux, Objectivity, Oracle9i, PHP, SQL, XML
8/2005 ? 12/2006
Java- und DB-Entwickler (Firebird); Projektmanager (Freiberuflich)
Anpassung eines Warenwirtschaftssystems an die Umgebung eines Unternehmens aus der Mikrowellen-Technik
Firmengröße:
Abteilungsgröße:
Branche: Labor
Verwaltung der Bereiche Geräte, Service und Marketing.
Daten-Export in MS Access über JdbcOdbc Bridge.
Schwerpunkte: IST-Analyse (OOA/OO-Analyse); Kommunikation mit den Benutzern; Präsentation des Produktes; Support für Test, Installation, Customizing und Echtbetrieb auf MS Windows XP und MS Windows 2000 Server.
DV-Umfeld:
DBase, J2SE, JDBC, JDK, MS Office 2000, NetBeans, OO-Analyse, OO-Design, OO-Programmierung, SQL, SWING, Windows 2000, Windows XP
5/2005 ? 5/2005
Migration einer MS Access 97 Anwendung nach Access 2000; Support (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Industrie, Opto-Elektronic
Eine bestehende Anwendung für die Produktionsdatenerfassung eines Unternehmens aus der Opto-Elektronik wird von MS Access 97 nach MS Access 2000 migriert.
DV-Umfeld:
MS Office 2000, MS Office 95/97, MS-Access, MS-Visual Basic for Applications (VBA), Windows 2000, Windows XP
12/2004 ? 12/2004
Windows 2003 Server, XP Administration; Installation HP Server; C-Entwickler (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Ingenieurwesen, Industrie
Aufbau von zwei 19?-Schränken mit jeweils sieben HP ProLiant Servern.
Davon fungieren jeweils zwei (insgesamt vier) als redundante Siemens WinCC-Server und fünf (insgessamt zehn) als WinCC-Clients.
Zusätzlich ein Siemens PanelPC und eine WinCC Workstation (HP ProLiant).
Schwerpunkte:
Einbau der Server; Installation von MS Windows 2003 Server, XP; Erarbeitung eines einfachen Backup-/Restore-Vorganges, Realisierung desselbigen durch zusammenstellen einer netzwerkfähigen Bootdiskette mit eingebautem Restore-/Backup-Vorgang mit Norton Ghost; Anpassung von C-Code (Siemens WinCC-Bibliotheken) für die Migration.
DV-Umfeld:
C, HP-Server, MS-DOS, Norton Ghost, Windows 2003, Windows XP, Siemens WinCC
10/2004 ? 4/2005
Windows 2000 und 2003 Server Administration; MS SQL Server Administration; Trainer; C++-Entwickler; (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Industrie (Stahl, Aluminium, Kupfer)
Anteilige Inbetriebnahme eines Oberflächeninspektionssystems der Firma Parsytec. Schulung der Benutzer und der Techniker für die Instandhaltung
Schwerpunkte:
Erstellen eines produktiven Klassifikators; Fehleranalyse und -behebung im Windows-Netzwerk und im F/O-Netz zwischen Kameras und Windows Server; Erstellung einer C++-Applikation für die Datenkommunikation zwischen dem SIS und einer werksinternen IBM AS/400; Anpassung von Skripten in einer proprietären Skript-Sprache (PDL); Einrichten des Sicherungsservers und der automatischen Bandsicherung (CA ArcServe 11);
Schulung der Benutzer über Parsytec SIS, IT Grundlagen, Windows XP Grundlagen, CA ArcServe
DV-Umfeld:
ADO, C++, CA Arcserve, Englisch, HP-Server, Italienisch, MS-Access, MS-SQL-Server, Norton Ghost, PC Anywhere, SQL, Windows 2000, Windows 2003, Windows XP, PDL (proprietäre Skriptsprache)
4/2004 ? 8/2005
First- und Second-Level-Support; After-sales (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Industrie (Stahl, Aluminium, Kupfer)
First- und Second-Level-Support für Kunden von Oberflächeninspektionssystemen der Firma Parsytec aus der Stahlindustrie in Italien, Deutschland und Österreich.
Schwerpunkte: Verwaltung der Kontakte ausgewählter Kunden und der zugehörigen Support-Fälle, Fehleranalyse und -behebung, Schnittstelle zwischen der Firma Parsytec und seinen Kunden, PDL (proprietäre Skriptsprache).
DV-Umfeld:
C++, CA Arcserve, Englisch, HP-Server, Italienisch, MS-Access, MS-SQL-Server, Norton Ghost, PC Anywhere, SQL, Windows 2000, Windows 2003, Windows NT, Windows XP
11/2003 ? 3/2004
Implementierung propietärer S/W; MS SQL Server Administration; Trainer; C++-Entwickler (Freiberuflich)
Firmengröße: > 10000 Personen
Abteilungsgröße:
Branche: Industrie (Stahl)
Anteilige Inbetriebnahme eines Oberflächeninspektionssystems der Firma Parsytec. Schulung der Benutzer und der Techniker für die Instandhaltung.
Schwerpunkte: Erstellen eines produktiven Klassifikators; Fehleranalyse und -behebung im Windows-Netzwerk und im F/O-Netz zwischen Kameras und Windows Server; Erstellung einer C++-Applikation für die Datenkommunikation zwischen dem SIS und einer werksinternen IBM AS/400; Anpassung von Skripten in einer proprietären Skript-Sprache (PDL); Einrichten des Sicherungsservers und der automatischen Bandsicherung (CA ArcServe);
Schulung der Benutzer über Parsytec SIS, IT Grundlagen, Windows NT 4 Grundlagen, CA ArcServe
DV-Umfeld:
ADO, C++, CA Arcserve, Englisch, Italienisch, MS-Access, MS-SQL-Server, Norton Ghost, PC Anywhere, SCSI, SQL, Windows 2000, Windows NT
10/2003 ? 11/2003
C/C++-Entwickler; Tester (Freiberuflich)
Firmengröße:
Abteilungsgröße:
Branche: Industrie (Stahl)
Als Teil eines Entwicklerteams: Debugging und Test einer Applikation für eine Hochofensteuerung, First- und Second-Level-Support.
Die Anwendung wird von WIN16 auf WIN32 portiert und der Quellcode in diesem Zuge von C nach C++.
Schwerpunkte:
Programmverhalten und Performance analysieren, Log-Dateien auswerten. Kommunikation mit dem Entwicklerteam. Hotfixes erstellen und implementieren.
DV-Umfeld:
Borland Delphi (Object Pascal), C, C++, DBase, Delphi, MS Visual-C++, MS-Access, MS-Visual Studio, Windows XP
6/2003 ? 12/2006
Java- und DB-Architekt und -Entwickler zur Entwicklung eines Standard-Warenwirtschaftssystems. (Freiberuflich)
Firmengröße: < 10 Personen
Abteilungsgröße: < 10 Personen
Branche: IT
Das System ist voll parametrisierbar, über DB und Properties. Unternehmenswichtige Entitäten, wie Adressen, Angebote, Aufträge, Eingangs-/Ausgangsrechungen werden verwaltet. Auswertungen werden mit JasperReports erstellt. Datenexport in Formate wie CSV und dBase sind möglich.
Schwerpunkte:
Konzeptionierung der DB- und OO-Modelle (OOA, OOD); Entwicklung der Datenbank (Firebird), Businesslogik (Java 5: J2SE), GUI (Swing); Deployment: Java WebStart; Produkt-Dokumentation
DV-Umfeld:
DBase, GUI, Interbase, J2SE, JDBC, JDK, Linux, NetBeans, OO-Analyse, OO-Design, OO-Programmierung, SQL, StarOffice, SWING, Windows XP, XML
11/2002 ? 12/2002
Analyse; PHP- und DB-Entwickler (Firebird); Dokumentation; Präsentation (Angestellt)
Firmengröße:
Abteilungsgröße:
Branche: Beratungsunternehmen (Consulting)
Entwicklung eines Web basierten Change-Request-Tracking-Systems.
Es werden eine IST- und eine Kosten-/Nutzen-Analyse durchgeführt. Nach Erstellung eines Grobkonzeptes wird dieses in ein Feinkonzept umgesetzt.
Die Projektumsetzung besteht aus der Entwicklung der Datenbank und der PHP-Skripte für den Login-Vorgang, die Navigation in den verschiedenen Übersichten und der Online-Hilfe. Es wird ein SOLL-IST-Vergleich durchgeführt, das Projekt wird dokumentiert und anschließend präsentiert.
Schwerpunkte:
IST-Analyse; Grob-, Feinplanung; Erstellen des Datenbanklayouts mit Sybase PowerDesigner; Design einer intuitiven Web-Oberfläche; Dokumentation; Präsentation
DV-Umfeld:
Apache, HTML, Interbase, MS Internet Explorer, Netscape Navigator, PHP, Power Designer, SQL, Windows 2000
8/2001 ? 1/2002
Visual Basic 6 Entwickler; DB-Entwickler (MS SQL Server); Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: Beratungsunternehmen, Dienstleistung, IT-Dienstleistungen, Einzelhandel, Ingenieurwesen
Entwicklung einer Auftragsabwicklung als Erweiterung der Personal- und Adressverwaltung.
Verwaltet werden Angebote, Aufträge, Rechnungen, Leistungsnachweise, Eingangsrechnungen, etc.. Eingangs-/Ausgangszahlungen werden mit Solldaten verglichen.
Die Anwendung ist mandantenfähig, da die Daten für die unterschiedlichen Geschäftsbereiche teils unabhängig gepflegt und ausgewertet werden müssen.
Erstellung von Dokumenten und Auswertungen erfolgt über CrystalReports 6.
Schwerpunkte:
Konzeptionierung und Implementierung mit Visual Basic 6; Entwicklung der Datenbank (MS Enterprise Manager), der Businesslogik, der GUI und der Berichtsgenerierung (Crystal Reports 6);
Support für Test, Installation, Customizing und Echtbetrieb auf Windows 2000.
DV-Umfeld:
ADO, Crystal reports, GUI, MS Visual-Basic, MS-SQL-Server, MS-Visual Studio, SQL, Windows 2000
4/2001 ? 1/2002
Visual Basic 6 Entwickler; DB-Entwickler (MS SQL Server); Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: Beratungsunternehmen, Dienstleistung, IT-Dienstleistungen, Einzelhandel, Ingenieurwesen
Entwicklung einer Personal- und Adressverwaltung.
Adressdaten von Kunden, Lieferanten, Mitarbeiter werden verwaltet. Mitarbeiter spezifische Daten, wie Urlaub, Einsatzart, Schulungen, etc. werden gepflegt und für Planungen verwendet.
Die Berechtigungen für die Benutzer werden in 2 Ebenen verwaltet. Auf Applikationsebene über ein Admin-Fenster. Auf DB-Ebene, indem MS SQL Server-Gruppen im Zusammenhang mit Active Directory-Gruppen verwaltet werden.
Schwerpunkte:
Konzeptionierung und Implementierung mit Visual Basic 6; Entwicklung der Datenbank (MS Enterprise Managers), der Businesslogik, der GUI und der Berichtsgenerierung (Crystal Reports 6);
Support für Test, Installation, Customizing und Echtbetrieb auf Windows 2000.
DV-Umfeld:
ADO, Crystal reports, GUI, MS Visual-Basic, MS-SQL-Server, MS-Visual Studio, SQL, Windows 2000
2/2001 ? 2/2001
Entwickler MS Access 2000; Analyse; Planung (Freiberuflich)
Firmengröße: < 10 Personen
Abteilungsgröße: < 10 Personen
Branche: Werbung, Druck (Printing)
Planung und Entwicklung einer MS Access 2000 Datenbank zur Kunden- und Rechnungsverwaltung.
Auf Grund des Jahr 2000 Problems muss eine MS-DOS Anwendung zur Rechnungserstellung abgelöst werden.
Eine IST-Analyse, die Planung und Entwicklung einer MS Access 2000 Datenbank zur Kunden- und Rechnungsverwaltung werden durchgeführt.
Dezember 2001 wird die EURO-Umstellung durchgeführt.
Schwerpunkte:
Analyse, Planung, DB-Design
DV-Umfeld:
MS Office 2000, MS-Access, MS-Visual Basic for Applications (VBA), SQL, Windows 98
1/2001 ? 10/2001
Entwickler MS Access 97; Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: IT-Dienstleistungen, Industrie, Optoelektronik
Wartung einer MS Access 97 Datenbank für das Controlling.
Second- und Third-Level-Support für eine MS Access 97 Datenbank, welche für das Controlling eingesetzt wird. Daten werden über ODBC von einem Oracle-Server des Buchhaltungssystems ausgelesen.
Schwerpunkte:
Debugging (Fehleranalyse und -behebung)
DV-Umfeld:
DAO, MS Office 95/97, MS-Access, MS-Visual Basic for Applications (VBA), ODBC, Oracle, SQL
12/2000 ? 1/2002
Entwickler MS Access 97; MS Office 97; Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: IT-Dienstleistungen, Industrie, Optoelektronik
Wartung und Weiterentwicklung eines MS Access 97 Systems für die Produktionsdatenerfassung.
Second- und Third-Level-Support für eine MS Access 97 Datenbank. Entwicklung neuer Access-Formulare für die Eingabe und Access-Berichte für die Datenauswertung und SQL-Abfragen. Die Datenbank dient der Eingabe und Auswertung von Produktionsdaten eines Unternehmens aus der Opto-Elektronik. Über OLE sind weitere MS Office Produkte eingebunden.
Schwerpunkte:
Debugging (Fehleranalyse und -behebung); Reporting
DV-Umfeld:
ADO, DAO, MS Office 95/97, MS-Access, MS-Office, MS-Visual Basic for Applications (VBA), OLE, SQL, Windows 2000, Windows NT
10/2000 ? 12/2000
Entwickler MS Access 2000; MS Excel; Analyse; Support (Angestellt)
Firmengröße:
Abteilungsgröße:
Branchen: Bauhandwerk
Entwicklung einer MS Access 2000 Anwendung für das Controlling.
Für die Buchhaltung eines Unternehmens aus dem Baugewerbe muss, basierend auf eine Excel-Tabelle für das Controlling, eine MS Access Anwendung erstellt werden. Soll- und Ist-Daten werden eingegeben und ageben und ausgewertet.
Schwerpunkte:
Analyse von Excel-Sheets; DB Design; GUI-Entwicklung
DV-Umfeld:
MS Office 2000, MS Office 95/97, MS-Access, Windows 2000
Software-Entwickler, -Architekt
Methoden
--------
Design patterns
Objektorientierte Analyse (OOA) > 3 Jahre
Objektorientiertes Design (OOD) > 3 Jahre
Objektorientierte Programmierung (OOP) > 10 Jahre
Strukturierte Programmierung
UML > 1 Jahr
Standards / Frameworks
----------------------
AJAX
Apache iBatis
Apache Wicket Versionen 1.5.7
AOP (Aspect Oriented Programming) AspectJ
AWT (Abstract Window Toolkit)
EclipseLink (TopLink)
EJB
Hibernate (ORM) Versionen 3.x
JavaBeans
JAX-WS
jQuery
JSF (Java Server Faces) Versionen 1.1, 2.1
MS ADO (ActiveX Data Objects)
MS DAO (Data Access Objects)
ODBC
OLE
Richfaces 3.3, 4.5
RMI (Remote Method Invocation)
SOAP
Spring Versionen 2.5.5, 3.0.5, 3.1.0
Stripes Web Framework
Struts Versionen 1.1
Swing > 10 Jahre; Fortgeschrittener
Velocity
Web Services
WSDL
XML
XPath
XQuery
XSD
XSL
XSLT
YUI (Yahoo User Interface)
Tools
-----
Apache FOP
Apache HTTPD
Apache POI
CA Arcserve > 2 Jahre; zuletzt in 2005
CVS
Eclipse > 10 Jahre; Fortgeschrittener
Exceed
Flyway DB
Git
Hudson / Jenkins (CI-Server)
JasperReports > 5 Jahre; Fortgeschrittener
JIRA
Junit
Lotus Notes Versionen 7.x, 8.5
Mozilla Firefox
MS Internet Explorer Versionen 5.5 - 9
MS Outlook
MS Office
MS Visual Studio zuletzt in 2005
NetBeans > 10 Jahre; Fortgeschrittener
Netscape Navigator
Norton Ghost
OpenOffice
Parsytec SIS Inbetriebnahme durchgeführt und als Trainer tätig gewesen
PC Anywhere
Power Designer
SQL Developer
StarOffice
SVN (Subversion)
TeamCity (CI Server)
TOAD
Tomcat > 8 Jahre
WebSphere Versionen 6.1, 7; < 2 Jahre
Hibernate
EclipseLink (TopLink)
Apache iBatisAluminiumindustrie
Automobilbranche / Automotive (Automobilzulieferer/Telematik)
Bank
Bauhandwerk
Beratungsunternehmen
Dienstleistung
EDV-Dienstleistungen
Einzelhandel
Finanzdienstleistung
Forschung und Entwicklung
Großhandel
Immobilien
Ingenieurwesen
IT / Informations-Technologie
Labor
Logistik
Medien
Optoelektronik
Stahlindustrie
Telekommunikation / Mobilfunk (Telko / Telco)