### 01/2013 - aktuell new ink UG
Für die new ink UG soll ein System zur generierung von e-Magazinen erstellt werden, welches automatisiert Daten von verschiedenen Datenquellen aggregiert und in ein einheitliches Datenmodell überführt. Die Entwicklung der browserbasierten Anwendung wird auf basis des Symfony2 Frameworks mit Propel und einer PostgreSQL-Datenbank durchgeführt.
- PHP5 mit Symfony2 und Propel
- Zend Server 5
- OpenShift
- PostgreSQL
- diverse XML eingangsformate
- ePub und Mobil als Ausgabeformate
- Git zur Versionsverwaltung
### 03/2004 – 12/2012 Telekom Deutschland
Erweiterung und Wartung einer Intranetanwendung zur Mobilfunknetzkonfiguration
Das Mobilfunknetz von T-Mobile besteht aus Techniken verschiedener Anbieter.
Für die Planung des Mobilfunknetzes wird intern ein Tools verwendet, welches
sämtliche Netzdaten in unterschiedlichen Formaten (XML, CSV, TXT etc.)
importiert und mit den planerischen Daten vergleicht. Auf Basis der
festgestellten Unterschiede werden anschließend Skripte generiert, die die
gewünschten Änderungen ins Netz einbringen. Es handelt sich also um ein
erweitertes Mediation Device, welches Bestandteil der Toolkette zur
Konfiguration des Mobilfunknetzes ist.
Um die Anforderungen an das System zu verstehen war es nötig, sich intensiv
in die Architektur von Mobilfunknetzen (GSM, UMTS und LTE) einzuarbeiten.
Insbesondere sind Kenntnisse der Formate Raml2 (XML) von Nokia (inzwischen
NSN, Nokia Siemens Networks) und CNAI von Ericsson notwendig.
Die Anwendung ist in PHP realisiert und verwendet eine Oracle Datenbank zur
Speicherung der Daten. Die einzelnen Funktionen sind sehr datenbanklastig,
weil teilweise Millionen von Daten miteinander verglichen werden müssen.
Eine große Herausforderung ist dabei die Optimierung der SQL-Statements.
Neben der Erweiterung der Anwendung im Team galt es auch die interne
Softwareentwicklungsinfrastruktur zu verbessern:
* Als Versionskontrollsystem musste ein CVS-Server aufgesetzt und die
Teammitglieder in dessen Benutzung eingeführt werden (inzwischen Subversion).
* Für die Softwareentwicklung war die IDE Eclipse mit der PHP Erweiterung
einzuführen (inzwischen ZendStudio).
* PHP wurde von der Version 4 auf Version 5 umgestellt.
* Um Zukunftssicherheit zu gewährleisten wurde eine "weiche Migration" zu
objektorientierter Programmierung eingeleitet. Dazu wurde schrittweise eine
Mehrschichtenarchitektur (N-tier) entwickelt, um Businesslogik,
Datenbankzugriffe und Darstellung von einander zu trennen. Ereignisorientiert
können dabei Prozesse gestartet werden. Für wachsende Teile des Systems wird
inzwischen auf ZendFramework gesetzt.
- Objektorientierte Softwareentwicklung in PHP5, Enterprise Design Pattern
nach GOF und Fowler
- Zend Server
- RHEL
– SQL und PL/SQL für Oracle
– Eclipse/Zend Studio, SQLDeveloper, DBVisualizer
– XML, HTML, JavaScript, CSS
– CVS, Subversion
– Shell-Programmierung
### 12/2003 - 01/2004 Sony Europe, e-solutions
Erweiterung einer Product Management Webanwendung auf Basis des TRIGO-Systems
Für Sony Europe sollten auf Basis des TRIGO-Systems zusätzliche Funktionen
für das Product Management Tool umgesetzt werden. Die notwendigen Masken und
Backendskripte waren in TRIGO-Script – einer JSP ähnlichen Sprache – zu
implementierten.
– TRIGO-Script (JSP)
– HTML, JavaScript, CSS
### 02/2003 - 09/2003 T-Mobile Deutschland
Testsystemerstellung und Testdurchführung für ein OSS-System.
Die Software "OSS-Communication Bus" verbindet verschiedene Systeme bei
T-Mobile (z.B. Wirknetzabbildung, Service Teams etc.), die jeweils eine
eigene Datenhaltung haben, aber teilweise die selben oder ähnliche Daten
verwenden. Dazu werden die verschiedenen Informationseinheiten vom Bus
entgegengenommen, für die einzelnen Systeme ggf. ein Mapping durchgeführt
und den Zielsystemen zugeführt.
Für die Testsystemerstellung mussten Shell- und PL/SQL-Skripte (Oracle 8)
erstellt werden, die Informationseinheiten in Quellsystemen erzeugen und
das korrekte Mapping zu den Zielsystemen überprüfen. Die Ergebnisse der
Tests wurden in Rational ClearQuest festgehalten.
- PL/SQL Programmierung (Oracle 8)
- Shell Programmierung
- Rational ClearQuest
### 12/2001 - 01/2003 TECON Systems AG
Technische Projektleitung und Softwareentwicklung Release 2 des TECON
Extended Mediation Devices (TXMD)
Das TXMD ist eine Mediation Software Lösung, die es ermöglicht, Rohdaten
in unterschiedlichsten Formaten (Binär, ASCII, CSV etc.) über ein
Übertragungsprotokoll einzulesen, die einzelnen Datensätze zu bearbeiten
(Validitätsprüfung, Duplicate Check, Assembly etc.) und in ein beliebiges
Ausgabeformat umzuwandeln.
Für Release 2 des TXMD wurde ein vollständiges Redesign hinsichtlich
Performancesteigerung und Skalierbarkeit durchgeführt, sowie eine eigene
Programmiersprache für Filter entwickelt. Über eine CORBA-Schnittstelle
konnte man die wichtigsten Funktionalitäten über ein Frontend (Java)
erreichen. Das Frontend stellte außerdem komfortable und intuitive
Konfigurationsmöglichkeiten zur Verfügung und einen Editor für die
Programmierung von Filtern.
Übersicht über die eingesetzten Techniken: XML, dynamsiche Libraries,
Bison, Threads, ACE/TAO, CORBA, Design Pattern, UML (RationalRose) etc.
- Teamleitung
- Anforderungsmanagement
- OOA und OOD für Backend und Frontend
- OOI in C/C++ (STL, Libraries, ACE/TAO) und Java
### 01/2001 - 11/2001 TECON Systems AG
Softwareentwicklung bei Release 1 des TECON Extended Mediation Devices (TXMD)
Das Release 1 des TXMD wurde als eine Menge von separaten
Softwarekomponenten realisiert, die via Interprozesskommunikation (IPC)
die eingelesenen Datensätze verarbeiteten. Daher war ein Schwerpunkt die
Systemprogrammierung unter Unix und die Erstellung einer C++ Bibliothek,
die die wichtigsten IPC Themen (Message Queues, Pipes, Signals/SignalHandler)
abdeckte. Für die Verarbeitung der einzelnen Dateien und der enthaltenen
Datensätze wurde ein XML-Datenstrom aufgebaut, der über Pipes von Filter zu
Filter geleitet wurde. Vollständig bearbeitete Datensätze wurden am Ende
des Datenstroms von einem Konverter in das Zielformat umgewandelt.
Übersicht über die eingesetzten Techniken: XML, statische und dynamische
Libraries, Unix Systemprogrammierung, Design Pattern, UML (RationalRose) etc.
- OOA, OOD
- OOI in C++ (STL, Libraries)
- Systemprogrammierung, Erstellung einer Library
### 10/2000 - 12/2000 ID-PRO Deutschland GmbH
Erstellung eines generischen Frontends für die Netzwerkadministrationslösung
"PaulA" basierend auf XML und XSLT
PaulA ist eine Harware-/Software-Lösung, die die Administration von Rechnern
in einem heterogenen Netzwerk ermöglicht. Auf Basis des Common Information
Models (CIM) wurden Provider in Perl entwickelt, die Services für die
jeweilige Plattform implementierten.
Für das Browser basierte Frontend musste ein generisches XML-Modell erstellt
werden (DTD), über das sich alle Funktionalitäten von PaulA abbilden lassen.
XSLT-Skripte wurden erzeugt, um die einzelnen Funktionen und Masken in
HTML-Seiten zu konvertieren.
- Perl-Skripte/-Module, Einbindung in Apache
- HTML und JavaScript
### 04/2000 - 05/2000 Praktikum bei CSG in Köln
Entwicklung von Administrations- und Monitoring-Tools für den WebSphere
Payment Manager von IBM
- Entwicklung in JAVA (AWT, JDBC)