-Weiterentwicklung und Support auf Basis des Informatica Product 360 8.1.x Produktes zur Verwaltung/Pflege von Produktinformationen.
-Implementierung der M-Industrie Schnittstelle auf Basis von Java Eclipse RCP im QIM-System sowie Erstellung der zugehörigen Mappings und Konfigurationen im QIM-System.
-Erstellung/Anpassungen der GUIs in Form von FlexUIs
-Durchführung von Client/Server Deployments in der Entwicklungs-, Test- und Produktivumgebung: Sprintinkrements sowie EBFs (Early Bug Fixes) und Hotfixes die von Informatica bereitgestellt wurden.
-Durchführung von Datenbank Updates und Datenbank Bereinigungen sowie Optimierungen (Generische Indexoptimierung abhängig von der Indexfragmentierung)
-Erstellung von Exporten auf Basis eigener Exportformatvorlagen
-Implementierung der Trustbox und DataNatuRe Schnittstelle auf Basis von REST basierten Java Webservices und Java Applications.
-Implementierung einer automatisch versandten Fehlermail als Java Application.
-Anpassung von Prozessen (z.B.Aufruf von Exportformatvorlagen via REST Calls, Abfrage ob Artikel LM,NNF oder Kombi ist) und Erstellung neuer Prozesse unter Verwendung des ActiveVOS Designers.
-Korrektur fehlerhafter Konfigurationen im QIM-Server, QIM-Client, Supplierportal, Audittrail, Websearch, ActiveMQ
-Implementierung eines Java basierten Konverter Tools um SQTS XML-Dateien in ein lesbareres Format umzuwandeln sowie Einbindung in den Export Prozeß.
-Erstellung von Bash Shell Scripts für die automatische Weiterverarbeitung von Exports
-Verwendung der List-API und Meta-API zur Erstellung REST basierter Datenabfragen
-Implementierung von Import Pre-/Postprocessing Anpassungen in Java Eclipse RCP Plugins z.B. zum Aufheben/Setzen des Schreibschutzes von Artikeln vor/nach dem Import.
-Erstellung von Auswertungen auf Basis von selbst erstellten Exportformatvorlagen.
-Implementierung der GDSN Schnittstelle auf Basis von REST basierten Java Webservices und Java Applications.
Umsetzung neuer Backend Funktionalität für das LOIS System,
welches Nachrichten empfängt, verarbeitet und verschickt.
Umsetzung zahlreicher Funktionalitäten im SCRUM Team wie z.B:
* Anpassung der GTIN Bestandsversorgung
* Erweiterter Wareneingang Nachricht Erzeugung bei Entladung
* Weitergabe der Entladebestaetigungsnachricht an Hadoop
* Erweiterung der Wareneingangsverlauf Tabelle
Backend:
* Modellierung von Nachrichten und Flows mit MagicDraw aus denen Code generiert wurde
* Implementierung von Messagehandlern auf Basis von Java 8, Lambda Ausdrücken sowie der Streaming API
*Erstellung von BPMN Prozessdiagrammen auf Basis von Bizagi Modeler
* Persistierung von Daten durch EJB 3/JPA und native SQL in IBM DB2
* Implementierung von Services, DAOs, BOs
* Verwendung von h-rider zur Sichtung von Cloudera Bigdata Daten
*Verwendung von Apache Drill zur Sichtung von MapR Bigdata Daten
*Verwendung von hue zum Management des Clusters:Deployment und Starten/Stoppen von jobs
* Client Requests mit Postman
* Subversion Versionsmanagement
* Umfangreiche Doku Erstellung im confluence WIKI
BigData:
* Migration von Cloudera nach MapR
* Erstellung von DRILL Abfragen
* Programmatische Erweiterung von DRILL mit Custom Function
* Implementierung von Batch Jobs
* Abfrage von BigData Daten mit ElasticSearch (MapR) bzw SolR (Cloudera)
* Persistierung von BigData Daten mit Hadoop API in HBase
* Parallelisierung on Tasks im Cluster mit Apache Spark API
Frontend:
Umsetzung neuer Funktionen in LORA Web, welches eine Browserbasierte GUI für den Zugriff auf die BigData Daten bereitstellt. Als Framework für die GUI wird Wicket eingesetzt. Als Application Server jBOSS.
* Erweiterung der Startseite um die berechtigungsabhängige Anzeige von Wareneingangsdaten
* Implementierung der Suche nach Wareneingangsdaten.
* Anzeige von Detaildaten zu einem ausgewählten Wareneingang.
* Inline/Dialog Editierung/Validierung der Detaildaten.
Sonstiges:
* Verwendung von subversion als Versionsmanagement
* Verwendung von Quickbuild als CI (Continous Integration) Umgebung
* Einsatz von Eclipse als IDE
Implementierung der Netz Engpasserkennung als Microservice auf Basis von Spring Boot. Implementierung eines Netzengpass Importers gegen eine REST Schnittstelle auf Basis einer YAML Schnittstellen Spezifikation. Implementierung eines weiteren Importers zur Ermittlung von Flexibilitäten für jeden Engpass.
Zeitgesteuerte Antriggung der Import Logik (REST Aufruf) auf Basis von Spring Scheduling. Implementierung einer Kommandoschnittstelle für die gequeute asynchrone Verarbeitung von Kommandos auf Basis eines Receivers. Erstellung eines gemeinsam nutzbaren Importers für die Einbindung einer REST basierten Zeitschnittstelle für Simulationen. Implementierung von Unit Tests für die Importer.
Auswertung der Log-Files auf Basis von Kibana/Elastic Search.
Vorgehensmodell:SCRUM
Stichwörter: Analysen, git, JEE, Websphere 8, eclipse, maven, Agiles Projektmanagement,JIRA, bamboo
Stichwörter: MS Visio, Design, SQL, Powerdesigner
Stichwörter: Java 6, Swing, EDT, Clearcase, DB2, HOST (z/OS), FEST Testframework
Stichwörter: Java Server Faces (JSF), Webservices,Seam Framework, JBoss, Tomcat,
Oracle, Enterprise Architect 7.1, MDA, subversion, JSF, Ajax,Clearcase,
Glassfish
Stichwörter: JBoss, Spring, Hibernate, Apache Service Mix (SOA), Eclipse, cvs, subversion,
Hudson/Jenkins,Signavio,BPMN,jUnit,JPA, Sybase,Webservice,XFire
dem Berechtigungssystem (BEPPO) sowie dem Verwaltungssystem
für Konzernvertriebspartnerstammdaten (KVPS)
Bei allen Systemen ging es um Bugfixing und Weiterentwicklung.
Meine ersten Tätigkeiten bezogen sich auf das KVPS System bei
dem es um Fehlerbehebung und Implementierung neuer Funktionen
gemäß einer ca. 20 seitigen Spezifikation ging. Das System ist
eine webbasierte Java Anwendung. Technisch wurden dafür
Websphere, JSP, Struts, XML und DB2 eingesetzt.
Danach bezogen sich die Tätigkeiten hauptsächlich auf FPL und
BEPPO. Beide Systeme sind keine webbasierten sondern Swing
basierte Richclient-Systeme. Beides sind Client/Server-Systeme
die auf Basis des hauseigenen MIF-Frameworks die Kommunikation
realisieren. Serverseitig wird noch Websphere MQ für die
Kommunikation mit dem HOST verwendet. Für BEPPO (Berechtigungssystem)
habe ich den vorhanden Webservice auf Basis des IBM WS-Frameworks
(von externen Kollegen aus Minsk bereitgestellt) auf das Apache
Axis 2 1.3 und 1.4.1 migiriert. Dieser Webservice provisioniert
(verteilt) Berechtigungsdaten dezentral an verschiedene Anwendungen.
Die Daten können dabei in DB2 oder Oracle persistiert werden.
Als Persistenzframework wurde dabei Hibernate verwendet. Dann
habe ich eine API für den Zugriff der Anwendungen auf diese
Daten implementiert. Im zweiten Schritt habe ich die Provisionierung
sowie die API performance-optimiert. Für die API habe ich für die
Prüfung auf Korrektheit zusätzliche automatisierte Tests implementiert
die mehrere Millionen Datensätze über Nacht geprüft haben.
Für das FPL System habe ich eine neue API konzeptioniert und implementiert
die die Datenspeicherung/Abfrage eines Teils der Anwendungsdaten
komplett neu implementierte. Ziel war es dabei das Anwendungen auf
diese Daten über eine enheitliche Schnittstelle zugreifen können
ohne dabei das interne Datenmodell kennen zu müssen (Blackbox) und
zukünftig erwarteten Datenbankpflege Aufwand zu minimieren.
Diese Ziele wurden erreicht. Die API löst dabei bisherige
HOST-Kommunikation ab und greift stattdessen auf Daten innerhalb
von DB2 zu. Eine eigens bereitgestellt SQL-ähnliche Syntax hilft
dabei mit wenig Aufwand Daten abzufragen oder (logische) Tabellen
anzulegen und Daten einzufügen. Client-seitig wurden zahlreiche
Änderungen an den Swing basierten Clients vorgenommen. Eine
Referenzimplementierung für die Benutzung der API habe ich mit
der GUI Implementierung von ?Prämissen? und ?FPLTab+? in FPL vorgenommen.
Einen Teil von Aufgaben/Defects habe ich auf Englisch spezifiziert und
an externe Kollegen aus Minsk delegiert. Die Kommmunikation mit
diesen Kollegen lief dabei ausschließlich auf eMail/Skype Basis.
Für das Defect Management wurde HP Quality Center 9.2 verwendet.
Hibernate, IBM WS (Webservice), Apache Axis 2 1.3/1.4.1,log4j,
xml, MIF (Method Invocation Framework)
eBanking Umfeld
Bugfixing bestehender Prio 1-3 Produktions Probleme. Einsatz
von Eclipse als IDE. Konsequente Verwendung des Spring
Frameworks und dessen Constructor/Setter ? Injection für die
Anwendungs- und Workflow Konfiguration sowie die Hibernate
Integration (Verwendung der Transaktionsmanagement-
konfiguration von Spring). Einsatz von Struts und JSPs für die
serverseitige Implementierung des MVC Patterns. Verwendung des
Hibernate 3 Frameworks für die Persistierung von Objekten in
der relationalen DB2 Datenbank. Lösung von Produktionsproblemen
z.B. beim gleichzeitigen Schreiben mehrerer Anwendungen in
dieselbe Datenbank. Verwendung des Apache Axis2 Frameworks für
die Implementierung von Webservices (ebpe-Gateway, BAP-Gateway)
zur Entkoppelung der Anbindung an eBanking Services die von
JBF (Java Banking Framework) Servern bereitgestellt werden.
Verwendung von Spring Remote DAOs zur Entkoppelung der
Persistenz-Schicht. Integration der Netcredit Anwendung in die
bestehende eBanking Anwendung. Performance Analyse für die
bestehende eBanking Anwendung in der GUI Schicht unter
Verwendung des dortigen Velocity Frameworks. Verwendung von
subversion und cvs als Versionsmanagement Tool. Modultests auf
Basis von jUnit und Firefox Selenium. Netcredit wird von
zahlreichen Banken wie z.B. Vereinsbanken und PSD-Banken
Standalone oder in eBanking integriert eingesetzt.
Toirtoise, Squirrel, IBM DB2, xml, Lotus Notes
Kernkraftwerken
Verwendung des hauseigenen Java-Frameworks zur Erstellung
von Java Swing Masken auf Basis des Group Layouts. Erstellung
von zahlreichen Masken gemäß funktionaler Spezifikation und
Implementierung von UI-Logiken. Bereitstellung von Schnittstellen
und Adaptern zur flexiblen Anbindung von Persistenz- Implementierungen. Teilweise Änderung von bestehendem Persistenz / Utility Code. Oracle 10 Performance Tests mit mehreren Millionen per Skript selbst generierten Attributen. Als IDE kam Eclipse 3.2 mit einigen Plugins wie z.B. PMD für die Steigerung
der Softwarequlität zum Einsatz. Implementierung von JUnit Tests.
Stichwörter: Java,Swing, Group Layout
Analyse der Fehlersitutation für SDX (Secure Data Exchange)
Anwendung bei STIHL. Analyse bestehender JSPs/Servlets/
Skripte und XML-Transformation auf XPATH-Basis.
Implementierung eines neuen Session Handlings sowie Behebung
von Fehlern bei der XML/XSL-Transformation.
Analyse von JVM Coredumps zur Auffindung von Bugs.
Als Testund Produktionssystem kam AIX zum Einsatz.
Als IDE wurde Eclipse verwendet. Als Servlet Engine wurde
Tomcat 4.1.3 eingesetzt. SDX wurde nach meinen
Fehlerbehebungen produktiv eingesetzt.
Stichwörter : Java,JSP,Servlets,XPATH,XML,SSL
Erstellung von UseCases. Implementierung der email-Anbindung
für MWI (Message Waiting Indication) auf SIP (Session
Initiation Protocol Basis)nach RFC 3842.
Modultest der Implementierung
nach den UseCases. Anwendungstest unter Verwendung von
sipp zum Senden/Empfangen von Nachrichten auf SIP-Basis.
Bereitstellung von Testdaten auf IBM DB2 Basis.
Stichwörter : C++,SIP,Voip,Voice Over IP
SSL Kommunikation zwischen Client und Server sowohl
auf Windows wie auch auf Unix Systemen.
Eingesetzt wurde OpenSSL 0.9.6.
Stichwörter : C,SSLauf Java Basis
Optimierung des Problemlösungsworkflows, so dass nun
Koordinatoren alle Fragen erhalten, für die keine Experten
gefunden wurden.
Dynamische Generierung von HTML-Seiten
mit JSPs auf Basis von Struts sowie den zugehörigen
Actions sowie Form Beans zur Verarbeitung der Requests.
Abbildung der Business Logik in Geschäftsobjekten, auf die
über Corba Server zugegriffen wurde. Nutzung von OpenORB als
ORB. Verwendung des Persistenz-Frameworks Hibernate in
Kombination mit den Datenbanken
MySQL 5.0,Oracle 9.1 und DB2 als Datenbank. Performance
Verbesserung durch Reduktion der Corba Aufrufe.
Verwendung von Spring zur Konfiguration von Datenquellen
sowie zur Implementierung eines Performance Interceptors.
Einsatz von Apache Axis 2 als SOAP Implementierung
zur Realisierung eines WebServices zur Abfrage von
Fragen eines globalen Datenpools. Serverseitige
Implementierung des WebServices auf Basis von Tomcat 5.5
sowie SSL.
Weiterentwicklung und Pflege der selbsterstellten fachlichen
Anforderungsspezifikation
Verwendung der Eclipse 3.1 IDE unter SuSE Linux 10.
Verwendung des Apache Webservers 2.x in Kombination mit
Tomcat 5.5 als Servlet Engine.
Hibernate, Apache Axis, WebServices, SOAP, SSL
Anpassung der automatisierten Installationsroutinen in
C++ auf eine neue Hardwareumgebung.
Anpassung der Konfigurationsdateien fuer die Unattended
Installation unter Windows NT.
Aufbau des kompletten LBB Clustersystems.
Konfiguration des LBB Clustersystems.
Erstellung von MSI Paketen mit Wise Tools.
Automatisierte Installation des PDC und BDC.
Automatisierte Installation von Microsoft Cluster
Server, Internet Explorer, pcAnywhere, pragma, Diskeeper,
RAID Treiber und RAID Software (GAM).
Performance Optimierung der automatisierten
Installation, Automatisierte Netzwerkkonfiguration,
Image Generierung mit Ghost 7.5, Dokumentation
Java:
Automatisierte Tests zur Überprüfung der korrekten
Systeminstallation auf Java Basis.
Spezifikation und Implementierung einer Java
Test-Klassenbibliothek zur kompfortablen
Systemprüfung. Verwendung von Java um den angedachten
Cluster-Softwarewechsel nach Unix zu vereinfachen.
Entwicklung von JSPs und Servlets für eine bestehende
Web-Anwendung. Als IDE wurde IntelliJ eingesetzt. Als
Applicationserver Resin. Als Backend wurden die
Datenbankserver Oracle 9i und MS-SQL Server eingesetzt.
Bei der Anwendung ging es um ein Medizinisches
Informationssystem für Siemens Medical Solutions.
Erstellung einer Entwicklerdokumentation.
Stichwörter : J2EE,JSP,Servlet
Native Unix auf Interix SFU (Services For Unix). Korn Shell Script Portierung.
Änderungen an bestehender Windows DLL in der Sprache C.
Einsatz der Anwendung unter VMWare GSX Server.
Entwicklung einer Statusüberwachung für den portierten
Plot Server in vbs Script. Generierung der Ausgabe
im dynamischen HTML Format. Erstellung einer ausführlichen
Entwickler-Dokumentation wobei Diagramme mit Visio erstellt
wurden. Anbindung an die bestehenden
Dokumentenverwaltungssysteme vdos und ematrix.
Einrichtung des Microsoft ftp servers per MMC.
Einrichtung einer remote shell unter Interix um remote
Statusabfragen zu ermöglichen. Durchführung von
Softwaretests. Übernahme in den Produktivbetrieb.
Portierung der Anwendung (ca. 50 Dateien) ideas auf Unix
Shell Script Basis nach Visual Basic Script (vbs).
vbs Skript auf WSH Basis zur automatisierten Deinstallation
bestimmter Druckverbindungen auf ca. 800 PCs.
Skript auf Basis des Windows Scripting Host (WSH) zur
automatisierten Anlegung von Druckerqueues für Benutzer
einer bestimmten Gruppe nach dem Login. Einsatz
des Spy tools zur Analyse vorhandener Methoden und
Attribute im WSH Namensraum.
Java:
Portierung der Shell Scripte auf eine
moderne Java-Architektur. Spezifikation des
Klassendiagrammes. Implementierung des
Klassen-Designs. Erstellung einer Multithreaded
Java Plot-Server Anwendung. Ziel war die Ablösung
der alten Shell Scripts durch eine moderne Java
Anwendung die flexibel auf Windows wie auch auf
Unix Systemen einsetzbar ist.
Entwicklung einer sehr dynamischen Popup Menükomponente
für das Infomanagement-System auf DHTML/HTML/Java Script Basis,
SSL-gestützter Paßwortschutz,
Mergen von Daten aus verschiedenen Baumstrukturen, CSS,
Hilfesystem auf HTML-Basis, Implementierung von server-
funktionalität in c-ähnlicher Sprache OScript, Debugging von
HTML-Seiten mit Homesite, Generierung einiger HTML
Seiten mit ASP, Datenkonvertierung mit Perl
Entwicklung eines Expertensystems basierend auf J2EE Technologien.
Einsatz des Application Servers JRun 3.1, der mittlerweile durch Tomcat 4.1
ersetzt wurde. Verwendung von Cascading Style Sheets (CSS)
für ein einheitliches Masken-Erscheinungsbild. Einsatz von
Servlets für die Seitengenerierung. Abbildung der Business
Logik auf EJBs (Wrapper unter JRun) und Corba Server
(Exolab OpenORB) für eine spätere Performance-Skalierung. Als
Datenbanken kommen MySQL,IBM DB2,Oracle 9 unter
Verwendung von JDBC zum Einsatz. Datenmodellierung mit
Powerdesigner 7.UML-Diagramme mit TogetherJ zur
Absicherung der Softwarequalität. Verwendung von Container
Managed Persistence (CMP) und EJBQL. Dynamische HTML
Seitengenerierung auf Java Servlet Basis.Logging mit
log4j. Generierung/Verarbeitung von xml-Files auf Basis
des Castor-Frameworks. Erstellung eines
Testkonzeptes mit Testfällen. Ausführung von Last und
Multithread Tests auf Basis von Apache JMeter 1.8.1.
Einrichtung von SuSE Linux 8.1 als eMail Server (sendmail),
DNS Server (bind8), cvs Server und MySQL Datenbank Server.
Softwaretests auf Linux (Kernel 2.6) und Windows.
Powerdesigner 7,TogetherJ., Oracle, DB2, MySQL, OpenORB, Linux
Eclipse IDE.
Portierung und Neuentwicklung eines Correlation Viewers für
Korrelationen und Volatilitäten von NT nach Solaris.
Umsetzung mehrerer Teilprojekte.
C++:
Umgesetzt wurden Windows DLLs und DCOM
Server (ATL basiert) nach Unix. Dabei wurde die Standard Template
Library (STL) und die Rogue Wave Library DBTools für
Datenbankzugriffe verwendet. Als Terminalprogramm kam
Exceed zum Einsatz. Erstellung von make Dateien für die Kompilierung
einzelner Verzeichnisse und des kompletten Projektes.
Implementation eines C++ basierten Corba Servers für die
effiziente Bereitstellung sehr großer Korrelationsmatrizen und
Volatilitätsvektoren. Als ORB wurde Iona Orbix 3 verwendet.
Java:
Implementation von mehreren Java Corba Testclients zur
Verifikation der Corba Server Funktionalität.
Entwicklung eines Administratortools für den Correlation
Corba Server basierend auf Java RMI. Implementierung der
Funktionen:
Hinzufügen von DataSets,kopieren von DataSets, holen von
DataSets, holen von vorhandenen Datentypen, holen von
Zeiträumen zu denen Daten vorliegen, holen von vorhandenen
Pools und entfernen von DataSets.
Implementation mehrerer RMI Testclients zur Verifikation der
RMI Server Funktionalität.
Als Java IDE kam Visual Age 3.5 zum Einsatz.
Das Projekt war geprägt durch einen hohen Zeitdruck und einer hohen
Technologiedichte wurde aber in Time erfolgreich beendet.
Template Library),IBM Visual Age 3.5,MS-Visual C++ 6.0
Implementation von Schnittstellen auf CORBA Basis in C++ für
die Business Transaction im Private Banking
Bereich. Frontendseitige Anbindung durch CORBA IDL.
Backendseitige Anbindung zum EBS (Electronic Brokerage System)
per MQ Series. Implementation der Auslandszahlungsverkehrs-
Schnittstelle (AZV) für Private Banking.
Backendseitige Anbindung zur Tandem per MOM-Software
(Message Oriented Middleware) MQ Series von IBM.
Versionsmanagement mit cvs. Dokumentation im XML-Format
nach vorgegebener DTD. Portfolioübersicht durch Anbindung
an MCBS (Multi Channel Brokerage System). Datenkonvertierung
nach XML und umgekehrt mit DOM-Parser und SAX. Implementation
eigener CORBA Test-Clients. Laufzeit-Tests auf IFR-Basis
(Interface Repository) mit bsjtt (business server java test
tool).
Visio, dbx, cvs, MQ Series, XML, DOM-Parser, SAX,bsjtt,
Orbix,Orbacus,VMS
Teilprojektleitung und Entwicklung eines
Administrationswerkzeuges für Mediendaten (Redaktionssystem)
Design eines User Interfaces. Design einer GUI und
Datenbank-Klassenhierarchie. SQL zum Zugriff auf Oracle 8.1.6
Datenbank-Server. Eigener Aufbau,Installation und Wartung von
Oracle 8.1.6. Verwendung der NLS (National Language Support)
Klassen von Oracle für internationale Sprachunterstützung.
Verwendung von JDBC 2.0 für performantere Aktualisierungen.
Verwendung des Level 4 Thin-Treibers für einfache
Java-Client-Installation. Vorort Unterstützung beim
Kunden.
J2SE,Swing,OOP
Software : Oracle 8.1.6,T.O.A.D,SQL-PLUS,Powerdesigner 8,PVCS,JBuilder 3.5, MS-Project
Beginn eines Projektes zur Verwaltung von Budgets, Aktien,
frei definierbaren Konten in Java (JDK 1.2).
Datenbankzugriff per JDBC/TCP-IP auf selbstinstallierten/
konfigurierten MySQL-Datenbank-Server. GUI-Programmierung
(Layouts, Listener, Kontrollelemente) mit Swing-API
(JDK 1.2).
2)Apache Webserver Installation/Konfiguration
Installation/Konfiguration des Apache-Webservers 1.3.11
für Windows NT. Implementation von CGI-Programmen in ANSI C
(Konsolenprogramm) zur dynamischen HTML-Seitengenerierung.
Verwendung von Cascading Style Sheets (CSS), Rückgabe der
HTML-Ausgabe via Standardausgabe über Web-Server und
zurück zum Web-Client. Verbesserung der Effizienz der
Seitengenerierung durch Servlets zunächst mit Apache JServ,
dann Umstellung auf Application Server JRun. Anbindung der
Servlets an MySQL-Datenbank-Server per native JDBC-Treiber
(Level2).
3)EJB
Testweise Bereitstellung von Enterprise Java Beans mit
Application Server JRun für middleware-unabhängigen Zugriff
auf Session-Beans via JNDI und serverseitige Instanzierung.
Implementierung von Datenbank-Routinen zur Datenspeicherung-
wiederherstellung in den Beans.
Entwicklung von GUI (Mandanten/Anbieter) auf Client-Seite mit
Swing-API, Serverkommunikation mit RMI, Konverter/
Schnittstellen-Programmierung d.h. Konvertierung von
Datenbständen in die Formate der Telekomanwendungen und
umgekehrt auf RMI-Server-Seite in Java, Oracle 8-Datenbank
und IBM DB2 für das Datenmanagement insbesondere
Oracle SQL-Plus, Oracle Worksheet bzw. Toad. Zugriff auf
Datenbank-Server via Level-4-JDBC-Treiber. Zuständig für
komplexesten Bereich: Girokontenumschaltung. Vorort-
Unterstützung beim Kunden im Bereich Girokontenumschaltung.
Performance-Verbesserung bei Schnittstellenerzeugung durch
selbstentwickelten Cache. Erarbeitung von UML-Designs:
DV-Konzepte. Forward-Engineerung/Reverse-Engineering mit
Rational Rose und Vorträge vor dem Kunden.
Versions 2.0,Rational Rose,JProbe Profiler,IBM DB2
ActiveX Control-Entwicklung: Entwicklung einer eigenen
Grid-Control mit Spezialfunktionen und Druckmöglichkeiten.
Embeddable auch in MS-Access-Container. Auswertung von
Zahlenmaterial durch vielfältige Darstellung als Diagramme mit
MS Access (VBA). Installationsprogramm für MS-Access und der
erforderlichen Access-Programmdateien mit
Benutzerauthentifikation
Zeitliche Planung von Architekurprojekten mit relativen
und absoluten Abhängigkeiten. Drucken von Projektplänen.
2)Projektverwaltung
Zentrales Dokumentenmanagementsystem für die Verwaltung von
Projektplänen, AVA-Dokumenten, Kostenplanungen, und
Formularen.Einfache grafische Benutzerschnittstelle mit
Drag&Drop-Unterstützung.
3)Rechenblatt
Entwicklung einer DLL für die Berechnung von mathematischen
Ausdrücken. Unterstüzung von unären und binären Operatoren,
beliebige Klammertiefe,Punkt vor Strich-Rechnung,
boolesche Ausdrücke, trigonometrische Operatoren, relationale
Operatoren.
Darstellung der Komponente in einem scrollbaren RTF-Container.
Unterstützung von Textformatierung innerhalb der Ausdrücke
(z.B.Farbeformatierung,Schriftstile)
Unterstützung von Kommentaren zwischen mathematischen Ausdrücken.
Kompfortable kontextsensitive Integration des Rechenblattes in
allen Textfeldern deren Inhalt sich aus mathematischen
Ausdrücken zusammengesetzt hat.
Ausdruck von Formeln mit Kommentaren.
4)Drucksystem
Kompfortabler Ausdruck von Formularen. Integration einer
Seitenvorschau. Unterstützung von Bildern in der Vorschau
und im Druck.
5)Adreßverwaltung
6)Formulare
Implementation von Formularen mit integrierter Kalkulation für
Kostenschätzung, Kostenberechnung, Kostenanschlag.
Ausdruck von Formularen.
Alleinige Entwicklung einer relationalen Datenbank in 100 %
pure Java. Konzepterstellung. Implementation typischer
Datenbankoperationen zur Tabellenerstellung,
Tabellenreorganisation, Indexdefinition (Einfach, kombiniert)
über beliebig viele Felder, Feldbezeichner längenmäßig
unbegrenzt. Typangabe nicht erforderlich:dadurch beliebig
lange Zahlen, Zeichenketten. Implementation einer
SQL-ähnlichen Abfragesprache mit eigener Syntax, die effizient
verarbeitbar ist.
Entwicklung einer multimedialen Präsentation von Macrovision.
Konzepterstellung, Konstruktion der notwendigen Geometrie
mit 3D-Studio MAX R2. Animation der Geometriedaten.
Entwicklung von Audio-Daten mit Music Maker 2000.
Sampling vorhander Musikdaten. Editierung dieser Musikdaten +
Erstellung einer musikalischen Komposition
(per Sequenzer 6 Spuren benutzt). Entwicklung des
Präsentationprogrammes in Object Pascal. Symbiose aus
Echtzeit-Animation + vorberechneter AVI-Animation.
Automatische Umschaltung in den geforderten Grafikmodus
640*480*16 Bit)
Entwicklung von Boss Assistant, Verantwortlich für die
Implementation einer eigenen formalen Sprache (VQL) und deren
Abarbeitung durch einen selbstentwickelten Interpreter.
Parallelisierung der Programmverarbeitung durch Multithreading.
Lösung von Synchronisationsproblemen. Implementation einer
Prozeßverwaltung mit der Möglichkeit jederzeit
Prozeß-Prioritäten zu ändern, einen Prozeß anzuhalten, oder
einen Prozeß zu einem beliebigem Zeitpunkt automatisch zu
starten. Schnellstart-Oberfläche ähnlich dem Windows Desktop.
Automatismen-Definition zum automatischen Start von Prozessen
mit verschiedenen Ablaufparametern. Archivierung-/
Rearchivierung von Datenbeständen
Entwicklung eines CAD-Programmes in Visual C++2.x
unter Windows NT.Implementiert wurden insbesondere:
Grundkörper (Ellipsoid, Quader, Kegel). Vektoroperationen,
Matrizenberechnungen (insbes.inverse Matrix),
Zentralprojektion, Planare geometrische Projektion,
Darstellung als Drahtgitter oder als Flächenmodell mit den
Shadingarten: Phong-Shading, Gauroud-Shading, Flat-Shading.
Texture-Mapping (Farbtextur-Mapping) . Hidden-Surface mit
z-Buffer Algorithmus und Painters-Algorithmus, Lichtquellen
(Ambient-, Richtungs-,Punkt-,Spot-). Lösung kaufmännischer
Probleme in Cobol
2)Implementation einer Lizenzverwaltung und -Erstellung in
Turbo Pascal, objektorientiert unter Verwendung der
Turbo Vision für eine konsistente Benutzeroberfläche.
Schaffung der Möglichkeit dieses Programm von der
DOS-Mailbox (Single-Task-Betriebssystem) zu starten
(Front Door).
3)Berechnung von Wohnraummöbeln per Excel-
Tabelle , VBA und angebundener DLL.
4)Implementation einer kompfortablen Kundenverwaltung in
Paradox unter Verwendung der dortigen teilweise
objektorientierten Programmiersprache.
Computergrafik-Demo - Entwicklung schnellster mathematischer
Routinen zur Lösung von Vektoroperationen, Matrizenberechnungen
sowie Projektionen auf FPU 80387 Basis in Assembler -
Math. Definition der Grundkörper in Turbo Pascal mit
effizientester Struktur für schnellste Darstellung -
Synchronisation der Darstellung auf 70 Hz durch direkte
Ansteuerung des Monitor-Kathodenstrahles per CRT-Controller.
Turbo Profiler
Mailbox-Entwicklung (Project Brain-Trust BBS) Entwicklung
eines Konzeptes für eine Mailbox, die funktional besser als
die damalige Remote Access 2.0 war, da komplette Foren mit
Informationsaustausch, Datenaustausch usw. möglich waren.
Implementation der Mailbox mit Aspect Script (ca. 30000
Zeilen) und Inbetriebnahme.
Lösung eines berechenbaren Optimierungsproblems bei dem es um
die Suche nach dem kürzesten Weg eines Käfers um einen
Ikosaeder ging. Jede Fläche darf und muß genau 1 mal betreten
werden.
Lösung eines berechenbaren Optimierungsproblems bei dem ein
Postbote Post in einem Hochhaus verteilen muß und den
kürzesten Weg ermitteln muß.
Lösung eines Problems, bei dem ein Replace-Interpreter mit
Editor nach vorgegebener formaler Sprache implementiert
werden mußte und Zeichenketten-Probleme auf diese Sprache
abgebildet und gelöst werden mußten
Lösung einer Aufgabe, bei der ein Problem auf eine
Turingmaschine abgebildet und als TM-Programm formuliert
werden mußte.
Stichwörter : Turbo Pascal, AlgorithmenImplementierung der Schachregeln, des optimierten
Kombinations-Baumes, sowie Alpha-/Beta- cut offs zur
Einsparung der Untersuchung von Stellungen in C.
Erreichte Halbtiefe: 7 (486,33 Mhz)
Spiel: 4 gewinnt (Anwender gegen Computer)
Implementierung der Grafik sowie Grafikeffekte. Implementation
der Pseudocomputerintelligenz mit MinMax-Algorithmus.
Stichwörter : Turbo PascalGravitationssimulation Definition von Planeten durch
Massendef, Radius und Positionsangabe und anschließende
Gravitationsberechnung eines Satelliten bei vorgegebener
Startposition. Grafische Darstellung der Satellitenbahn.
Stichwörter : Borland C für Windows, Windows API
-Weiterentwicklung und Support auf Basis des Informatica Product 360 8.1.x Produktes zur Verwaltung/Pflege von Produktinformationen.
-Implementierung der M-Industrie Schnittstelle auf Basis von Java Eclipse RCP im QIM-System sowie Erstellung der zugehörigen Mappings und Konfigurationen im QIM-System.
-Erstellung/Anpassungen der GUIs in Form von FlexUIs
-Durchführung von Client/Server Deployments in der Entwicklungs-, Test- und Produktivumgebung: Sprintinkrements sowie EBFs (Early Bug Fixes) und Hotfixes die von Informatica bereitgestellt wurden.
-Durchführung von Datenbank Updates und Datenbank Bereinigungen sowie Optimierungen (Generische Indexoptimierung abhängig von der Indexfragmentierung)
-Erstellung von Exporten auf Basis eigener Exportformatvorlagen
-Implementierung der Trustbox und DataNatuRe Schnittstelle auf Basis von REST basierten Java Webservices und Java Applications.
-Implementierung einer automatisch versandten Fehlermail als Java Application.
-Anpassung von Prozessen (z.B.Aufruf von Exportformatvorlagen via REST Calls, Abfrage ob Artikel LM,NNF oder Kombi ist) und Erstellung neuer Prozesse unter Verwendung des ActiveVOS Designers.
-Korrektur fehlerhafter Konfigurationen im QIM-Server, QIM-Client, Supplierportal, Audittrail, Websearch, ActiveMQ
-Implementierung eines Java basierten Konverter Tools um SQTS XML-Dateien in ein lesbareres Format umzuwandeln sowie Einbindung in den Export Prozeß.
-Erstellung von Bash Shell Scripts für die automatische Weiterverarbeitung von Exports
-Verwendung der List-API und Meta-API zur Erstellung REST basierter Datenabfragen
-Implementierung von Import Pre-/Postprocessing Anpassungen in Java Eclipse RCP Plugins z.B. zum Aufheben/Setzen des Schreibschutzes von Artikeln vor/nach dem Import.
-Erstellung von Auswertungen auf Basis von selbst erstellten Exportformatvorlagen.
-Implementierung der GDSN Schnittstelle auf Basis von REST basierten Java Webservices und Java Applications.
Umsetzung neuer Backend Funktionalität für das LOIS System,
welches Nachrichten empfängt, verarbeitet und verschickt.
Umsetzung zahlreicher Funktionalitäten im SCRUM Team wie z.B:
* Anpassung der GTIN Bestandsversorgung
* Erweiterter Wareneingang Nachricht Erzeugung bei Entladung
* Weitergabe der Entladebestaetigungsnachricht an Hadoop
* Erweiterung der Wareneingangsverlauf Tabelle
Backend:
* Modellierung von Nachrichten und Flows mit MagicDraw aus denen Code generiert wurde
* Implementierung von Messagehandlern auf Basis von Java 8, Lambda Ausdrücken sowie der Streaming API
*Erstellung von BPMN Prozessdiagrammen auf Basis von Bizagi Modeler
* Persistierung von Daten durch EJB 3/JPA und native SQL in IBM DB2
* Implementierung von Services, DAOs, BOs
* Verwendung von h-rider zur Sichtung von Cloudera Bigdata Daten
*Verwendung von Apache Drill zur Sichtung von MapR Bigdata Daten
*Verwendung von hue zum Management des Clusters:Deployment und Starten/Stoppen von jobs
* Client Requests mit Postman
* Subversion Versionsmanagement
* Umfangreiche Doku Erstellung im confluence WIKI
BigData:
* Migration von Cloudera nach MapR
* Erstellung von DRILL Abfragen
* Programmatische Erweiterung von DRILL mit Custom Function
* Implementierung von Batch Jobs
* Abfrage von BigData Daten mit ElasticSearch (MapR) bzw SolR (Cloudera)
* Persistierung von BigData Daten mit Hadoop API in HBase
* Parallelisierung on Tasks im Cluster mit Apache Spark API
Frontend:
Umsetzung neuer Funktionen in LORA Web, welches eine Browserbasierte GUI für den Zugriff auf die BigData Daten bereitstellt. Als Framework für die GUI wird Wicket eingesetzt. Als Application Server jBOSS.
* Erweiterung der Startseite um die berechtigungsabhängige Anzeige von Wareneingangsdaten
* Implementierung der Suche nach Wareneingangsdaten.
* Anzeige von Detaildaten zu einem ausgewählten Wareneingang.
* Inline/Dialog Editierung/Validierung der Detaildaten.
Sonstiges:
* Verwendung von subversion als Versionsmanagement
* Verwendung von Quickbuild als CI (Continous Integration) Umgebung
* Einsatz von Eclipse als IDE
Implementierung der Netz Engpasserkennung als Microservice auf Basis von Spring Boot. Implementierung eines Netzengpass Importers gegen eine REST Schnittstelle auf Basis einer YAML Schnittstellen Spezifikation. Implementierung eines weiteren Importers zur Ermittlung von Flexibilitäten für jeden Engpass.
Zeitgesteuerte Antriggung der Import Logik (REST Aufruf) auf Basis von Spring Scheduling. Implementierung einer Kommandoschnittstelle für die gequeute asynchrone Verarbeitung von Kommandos auf Basis eines Receivers. Erstellung eines gemeinsam nutzbaren Importers für die Einbindung einer REST basierten Zeitschnittstelle für Simulationen. Implementierung von Unit Tests für die Importer.
Auswertung der Log-Files auf Basis von Kibana/Elastic Search.
Vorgehensmodell:SCRUM
Stichwörter: Analysen, git, JEE, Websphere 8, eclipse, maven, Agiles Projektmanagement,JIRA, bamboo
Stichwörter: MS Visio, Design, SQL, Powerdesigner
Stichwörter: Java 6, Swing, EDT, Clearcase, DB2, HOST (z/OS), FEST Testframework
Stichwörter: Java Server Faces (JSF), Webservices,Seam Framework, JBoss, Tomcat,
Oracle, Enterprise Architect 7.1, MDA, subversion, JSF, Ajax,Clearcase,
Glassfish
Stichwörter: JBoss, Spring, Hibernate, Apache Service Mix (SOA), Eclipse, cvs, subversion,
Hudson/Jenkins,Signavio,BPMN,jUnit,JPA, Sybase,Webservice,XFire
dem Berechtigungssystem (BEPPO) sowie dem Verwaltungssystem
für Konzernvertriebspartnerstammdaten (KVPS)
Bei allen Systemen ging es um Bugfixing und Weiterentwicklung.
Meine ersten Tätigkeiten bezogen sich auf das KVPS System bei
dem es um Fehlerbehebung und Implementierung neuer Funktionen
gemäß einer ca. 20 seitigen Spezifikation ging. Das System ist
eine webbasierte Java Anwendung. Technisch wurden dafür
Websphere, JSP, Struts, XML und DB2 eingesetzt.
Danach bezogen sich die Tätigkeiten hauptsächlich auf FPL und
BEPPO. Beide Systeme sind keine webbasierten sondern Swing
basierte Richclient-Systeme. Beides sind Client/Server-Systeme
die auf Basis des hauseigenen MIF-Frameworks die Kommunikation
realisieren. Serverseitig wird noch Websphere MQ für die
Kommunikation mit dem HOST verwendet. Für BEPPO (Berechtigungssystem)
habe ich den vorhanden Webservice auf Basis des IBM WS-Frameworks
(von externen Kollegen aus Minsk bereitgestellt) auf das Apache
Axis 2 1.3 und 1.4.1 migiriert. Dieser Webservice provisioniert
(verteilt) Berechtigungsdaten dezentral an verschiedene Anwendungen.
Die Daten können dabei in DB2 oder Oracle persistiert werden.
Als Persistenzframework wurde dabei Hibernate verwendet. Dann
habe ich eine API für den Zugriff der Anwendungen auf diese
Daten implementiert. Im zweiten Schritt habe ich die Provisionierung
sowie die API performance-optimiert. Für die API habe ich für die
Prüfung auf Korrektheit zusätzliche automatisierte Tests implementiert
die mehrere Millionen Datensätze über Nacht geprüft haben.
Für das FPL System habe ich eine neue API konzeptioniert und implementiert
die die Datenspeicherung/Abfrage eines Teils der Anwendungsdaten
komplett neu implementierte. Ziel war es dabei das Anwendungen auf
diese Daten über eine enheitliche Schnittstelle zugreifen können
ohne dabei das interne Datenmodell kennen zu müssen (Blackbox) und
zukünftig erwarteten Datenbankpflege Aufwand zu minimieren.
Diese Ziele wurden erreicht. Die API löst dabei bisherige
HOST-Kommunikation ab und greift stattdessen auf Daten innerhalb
von DB2 zu. Eine eigens bereitgestellt SQL-ähnliche Syntax hilft
dabei mit wenig Aufwand Daten abzufragen oder (logische) Tabellen
anzulegen und Daten einzufügen. Client-seitig wurden zahlreiche
Änderungen an den Swing basierten Clients vorgenommen. Eine
Referenzimplementierung für die Benutzung der API habe ich mit
der GUI Implementierung von ?Prämissen? und ?FPLTab+? in FPL vorgenommen.
Einen Teil von Aufgaben/Defects habe ich auf Englisch spezifiziert und
an externe Kollegen aus Minsk delegiert. Die Kommmunikation mit
diesen Kollegen lief dabei ausschließlich auf eMail/Skype Basis.
Für das Defect Management wurde HP Quality Center 9.2 verwendet.
Hibernate, IBM WS (Webservice), Apache Axis 2 1.3/1.4.1,log4j,
xml, MIF (Method Invocation Framework)
eBanking Umfeld
Bugfixing bestehender Prio 1-3 Produktions Probleme. Einsatz
von Eclipse als IDE. Konsequente Verwendung des Spring
Frameworks und dessen Constructor/Setter ? Injection für die
Anwendungs- und Workflow Konfiguration sowie die Hibernate
Integration (Verwendung der Transaktionsmanagement-
konfiguration von Spring). Einsatz von Struts und JSPs für die
serverseitige Implementierung des MVC Patterns. Verwendung des
Hibernate 3 Frameworks für die Persistierung von Objekten in
der relationalen DB2 Datenbank. Lösung von Produktionsproblemen
z.B. beim gleichzeitigen Schreiben mehrerer Anwendungen in
dieselbe Datenbank. Verwendung des Apache Axis2 Frameworks für
die Implementierung von Webservices (ebpe-Gateway, BAP-Gateway)
zur Entkoppelung der Anbindung an eBanking Services die von
JBF (Java Banking Framework) Servern bereitgestellt werden.
Verwendung von Spring Remote DAOs zur Entkoppelung der
Persistenz-Schicht. Integration der Netcredit Anwendung in die
bestehende eBanking Anwendung. Performance Analyse für die
bestehende eBanking Anwendung in der GUI Schicht unter
Verwendung des dortigen Velocity Frameworks. Verwendung von
subversion und cvs als Versionsmanagement Tool. Modultests auf
Basis von jUnit und Firefox Selenium. Netcredit wird von
zahlreichen Banken wie z.B. Vereinsbanken und PSD-Banken
Standalone oder in eBanking integriert eingesetzt.
Toirtoise, Squirrel, IBM DB2, xml, Lotus Notes
Kernkraftwerken
Verwendung des hauseigenen Java-Frameworks zur Erstellung
von Java Swing Masken auf Basis des Group Layouts. Erstellung
von zahlreichen Masken gemäß funktionaler Spezifikation und
Implementierung von UI-Logiken. Bereitstellung von Schnittstellen
und Adaptern zur flexiblen Anbindung von Persistenz- Implementierungen. Teilweise Änderung von bestehendem Persistenz / Utility Code. Oracle 10 Performance Tests mit mehreren Millionen per Skript selbst generierten Attributen. Als IDE kam Eclipse 3.2 mit einigen Plugins wie z.B. PMD für die Steigerung
der Softwarequlität zum Einsatz. Implementierung von JUnit Tests.
Stichwörter: Java,Swing, Group Layout
Analyse der Fehlersitutation für SDX (Secure Data Exchange)
Anwendung bei STIHL. Analyse bestehender JSPs/Servlets/
Skripte und XML-Transformation auf XPATH-Basis.
Implementierung eines neuen Session Handlings sowie Behebung
von Fehlern bei der XML/XSL-Transformation.
Analyse von JVM Coredumps zur Auffindung von Bugs.
Als Testund Produktionssystem kam AIX zum Einsatz.
Als IDE wurde Eclipse verwendet. Als Servlet Engine wurde
Tomcat 4.1.3 eingesetzt. SDX wurde nach meinen
Fehlerbehebungen produktiv eingesetzt.
Stichwörter : Java,JSP,Servlets,XPATH,XML,SSL
Erstellung von UseCases. Implementierung der email-Anbindung
für MWI (Message Waiting Indication) auf SIP (Session
Initiation Protocol Basis)nach RFC 3842.
Modultest der Implementierung
nach den UseCases. Anwendungstest unter Verwendung von
sipp zum Senden/Empfangen von Nachrichten auf SIP-Basis.
Bereitstellung von Testdaten auf IBM DB2 Basis.
Stichwörter : C++,SIP,Voip,Voice Over IP
SSL Kommunikation zwischen Client und Server sowohl
auf Windows wie auch auf Unix Systemen.
Eingesetzt wurde OpenSSL 0.9.6.
Stichwörter : C,SSLauf Java Basis
Optimierung des Problemlösungsworkflows, so dass nun
Koordinatoren alle Fragen erhalten, für die keine Experten
gefunden wurden.
Dynamische Generierung von HTML-Seiten
mit JSPs auf Basis von Struts sowie den zugehörigen
Actions sowie Form Beans zur Verarbeitung der Requests.
Abbildung der Business Logik in Geschäftsobjekten, auf die
über Corba Server zugegriffen wurde. Nutzung von OpenORB als
ORB. Verwendung des Persistenz-Frameworks Hibernate in
Kombination mit den Datenbanken
MySQL 5.0,Oracle 9.1 und DB2 als Datenbank. Performance
Verbesserung durch Reduktion der Corba Aufrufe.
Verwendung von Spring zur Konfiguration von Datenquellen
sowie zur Implementierung eines Performance Interceptors.
Einsatz von Apache Axis 2 als SOAP Implementierung
zur Realisierung eines WebServices zur Abfrage von
Fragen eines globalen Datenpools. Serverseitige
Implementierung des WebServices auf Basis von Tomcat 5.5
sowie SSL.
Weiterentwicklung und Pflege der selbsterstellten fachlichen
Anforderungsspezifikation
Verwendung der Eclipse 3.1 IDE unter SuSE Linux 10.
Verwendung des Apache Webservers 2.x in Kombination mit
Tomcat 5.5 als Servlet Engine.
Hibernate, Apache Axis, WebServices, SOAP, SSL
Anpassung der automatisierten Installationsroutinen in
C++ auf eine neue Hardwareumgebung.
Anpassung der Konfigurationsdateien fuer die Unattended
Installation unter Windows NT.
Aufbau des kompletten LBB Clustersystems.
Konfiguration des LBB Clustersystems.
Erstellung von MSI Paketen mit Wise Tools.
Automatisierte Installation des PDC und BDC.
Automatisierte Installation von Microsoft Cluster
Server, Internet Explorer, pcAnywhere, pragma, Diskeeper,
RAID Treiber und RAID Software (GAM).
Performance Optimierung der automatisierten
Installation, Automatisierte Netzwerkkonfiguration,
Image Generierung mit Ghost 7.5, Dokumentation
Java:
Automatisierte Tests zur Überprüfung der korrekten
Systeminstallation auf Java Basis.
Spezifikation und Implementierung einer Java
Test-Klassenbibliothek zur kompfortablen
Systemprüfung. Verwendung von Java um den angedachten
Cluster-Softwarewechsel nach Unix zu vereinfachen.
Entwicklung von JSPs und Servlets für eine bestehende
Web-Anwendung. Als IDE wurde IntelliJ eingesetzt. Als
Applicationserver Resin. Als Backend wurden die
Datenbankserver Oracle 9i und MS-SQL Server eingesetzt.
Bei der Anwendung ging es um ein Medizinisches
Informationssystem für Siemens Medical Solutions.
Erstellung einer Entwicklerdokumentation.
Stichwörter : J2EE,JSP,Servlet
Native Unix auf Interix SFU (Services For Unix). Korn Shell Script Portierung.
Änderungen an bestehender Windows DLL in der Sprache C.
Einsatz der Anwendung unter VMWare GSX Server.
Entwicklung einer Statusüberwachung für den portierten
Plot Server in vbs Script. Generierung der Ausgabe
im dynamischen HTML Format. Erstellung einer ausführlichen
Entwickler-Dokumentation wobei Diagramme mit Visio erstellt
wurden. Anbindung an die bestehenden
Dokumentenverwaltungssysteme vdos und ematrix.
Einrichtung des Microsoft ftp servers per MMC.
Einrichtung einer remote shell unter Interix um remote
Statusabfragen zu ermöglichen. Durchführung von
Softwaretests. Übernahme in den Produktivbetrieb.
Portierung der Anwendung (ca. 50 Dateien) ideas auf Unix
Shell Script Basis nach Visual Basic Script (vbs).
vbs Skript auf WSH Basis zur automatisierten Deinstallation
bestimmter Druckverbindungen auf ca. 800 PCs.
Skript auf Basis des Windows Scripting Host (WSH) zur
automatisierten Anlegung von Druckerqueues für Benutzer
einer bestimmten Gruppe nach dem Login. Einsatz
des Spy tools zur Analyse vorhandener Methoden und
Attribute im WSH Namensraum.
Java:
Portierung der Shell Scripte auf eine
moderne Java-Architektur. Spezifikation des
Klassendiagrammes. Implementierung des
Klassen-Designs. Erstellung einer Multithreaded
Java Plot-Server Anwendung. Ziel war die Ablösung
der alten Shell Scripts durch eine moderne Java
Anwendung die flexibel auf Windows wie auch auf
Unix Systemen einsetzbar ist.
Entwicklung einer sehr dynamischen Popup Menükomponente
für das Infomanagement-System auf DHTML/HTML/Java Script Basis,
SSL-gestützter Paßwortschutz,
Mergen von Daten aus verschiedenen Baumstrukturen, CSS,
Hilfesystem auf HTML-Basis, Implementierung von server-
funktionalität in c-ähnlicher Sprache OScript, Debugging von
HTML-Seiten mit Homesite, Generierung einiger HTML
Seiten mit ASP, Datenkonvertierung mit Perl
Entwicklung eines Expertensystems basierend auf J2EE Technologien.
Einsatz des Application Servers JRun 3.1, der mittlerweile durch Tomcat 4.1
ersetzt wurde. Verwendung von Cascading Style Sheets (CSS)
für ein einheitliches Masken-Erscheinungsbild. Einsatz von
Servlets für die Seitengenerierung. Abbildung der Business
Logik auf EJBs (Wrapper unter JRun) und Corba Server
(Exolab OpenORB) für eine spätere Performance-Skalierung. Als
Datenbanken kommen MySQL,IBM DB2,Oracle 9 unter
Verwendung von JDBC zum Einsatz. Datenmodellierung mit
Powerdesigner 7.UML-Diagramme mit TogetherJ zur
Absicherung der Softwarequalität. Verwendung von Container
Managed Persistence (CMP) und EJBQL. Dynamische HTML
Seitengenerierung auf Java Servlet Basis.Logging mit
log4j. Generierung/Verarbeitung von xml-Files auf Basis
des Castor-Frameworks. Erstellung eines
Testkonzeptes mit Testfällen. Ausführung von Last und
Multithread Tests auf Basis von Apache JMeter 1.8.1.
Einrichtung von SuSE Linux 8.1 als eMail Server (sendmail),
DNS Server (bind8), cvs Server und MySQL Datenbank Server.
Softwaretests auf Linux (Kernel 2.6) und Windows.
Powerdesigner 7,TogetherJ., Oracle, DB2, MySQL, OpenORB, Linux
Eclipse IDE.
Portierung und Neuentwicklung eines Correlation Viewers für
Korrelationen und Volatilitäten von NT nach Solaris.
Umsetzung mehrerer Teilprojekte.
C++:
Umgesetzt wurden Windows DLLs und DCOM
Server (ATL basiert) nach Unix. Dabei wurde die Standard Template
Library (STL) und die Rogue Wave Library DBTools für
Datenbankzugriffe verwendet. Als Terminalprogramm kam
Exceed zum Einsatz. Erstellung von make Dateien für die Kompilierung
einzelner Verzeichnisse und des kompletten Projektes.
Implementation eines C++ basierten Corba Servers für die
effiziente Bereitstellung sehr großer Korrelationsmatrizen und
Volatilitätsvektoren. Als ORB wurde Iona Orbix 3 verwendet.
Java:
Implementation von mehreren Java Corba Testclients zur
Verifikation der Corba Server Funktionalität.
Entwicklung eines Administratortools für den Correlation
Corba Server basierend auf Java RMI. Implementierung der
Funktionen:
Hinzufügen von DataSets,kopieren von DataSets, holen von
DataSets, holen von vorhandenen Datentypen, holen von
Zeiträumen zu denen Daten vorliegen, holen von vorhandenen
Pools und entfernen von DataSets.
Implementation mehrerer RMI Testclients zur Verifikation der
RMI Server Funktionalität.
Als Java IDE kam Visual Age 3.5 zum Einsatz.
Das Projekt war geprägt durch einen hohen Zeitdruck und einer hohen
Technologiedichte wurde aber in Time erfolgreich beendet.
Template Library),IBM Visual Age 3.5,MS-Visual C++ 6.0
Implementation von Schnittstellen auf CORBA Basis in C++ für
die Business Transaction im Private Banking
Bereich. Frontendseitige Anbindung durch CORBA IDL.
Backendseitige Anbindung zum EBS (Electronic Brokerage System)
per MQ Series. Implementation der Auslandszahlungsverkehrs-
Schnittstelle (AZV) für Private Banking.
Backendseitige Anbindung zur Tandem per MOM-Software
(Message Oriented Middleware) MQ Series von IBM.
Versionsmanagement mit cvs. Dokumentation im XML-Format
nach vorgegebener DTD. Portfolioübersicht durch Anbindung
an MCBS (Multi Channel Brokerage System). Datenkonvertierung
nach XML und umgekehrt mit DOM-Parser und SAX. Implementation
eigener CORBA Test-Clients. Laufzeit-Tests auf IFR-Basis
(Interface Repository) mit bsjtt (business server java test
tool).
Visio, dbx, cvs, MQ Series, XML, DOM-Parser, SAX,bsjtt,
Orbix,Orbacus,VMS
Teilprojektleitung und Entwicklung eines
Administrationswerkzeuges für Mediendaten (Redaktionssystem)
Design eines User Interfaces. Design einer GUI und
Datenbank-Klassenhierarchie. SQL zum Zugriff auf Oracle 8.1.6
Datenbank-Server. Eigener Aufbau,Installation und Wartung von
Oracle 8.1.6. Verwendung der NLS (National Language Support)
Klassen von Oracle für internationale Sprachunterstützung.
Verwendung von JDBC 2.0 für performantere Aktualisierungen.
Verwendung des Level 4 Thin-Treibers für einfache
Java-Client-Installation. Vorort Unterstützung beim
Kunden.
J2SE,Swing,OOP
Software : Oracle 8.1.6,T.O.A.D,SQL-PLUS,Powerdesigner 8,PVCS,JBuilder 3.5, MS-Project
Beginn eines Projektes zur Verwaltung von Budgets, Aktien,
frei definierbaren Konten in Java (JDK 1.2).
Datenbankzugriff per JDBC/TCP-IP auf selbstinstallierten/
konfigurierten MySQL-Datenbank-Server. GUI-Programmierung
(Layouts, Listener, Kontrollelemente) mit Swing-API
(JDK 1.2).
2)Apache Webserver Installation/Konfiguration
Installation/Konfiguration des Apache-Webservers 1.3.11
für Windows NT. Implementation von CGI-Programmen in ANSI C
(Konsolenprogramm) zur dynamischen HTML-Seitengenerierung.
Verwendung von Cascading Style Sheets (CSS), Rückgabe der
HTML-Ausgabe via Standardausgabe über Web-Server und
zurück zum Web-Client. Verbesserung der Effizienz der
Seitengenerierung durch Servlets zunächst mit Apache JServ,
dann Umstellung auf Application Server JRun. Anbindung der
Servlets an MySQL-Datenbank-Server per native JDBC-Treiber
(Level2).
3)EJB
Testweise Bereitstellung von Enterprise Java Beans mit
Application Server JRun für middleware-unabhängigen Zugriff
auf Session-Beans via JNDI und serverseitige Instanzierung.
Implementierung von Datenbank-Routinen zur Datenspeicherung-
wiederherstellung in den Beans.
Entwicklung von GUI (Mandanten/Anbieter) auf Client-Seite mit
Swing-API, Serverkommunikation mit RMI, Konverter/
Schnittstellen-Programmierung d.h. Konvertierung von
Datenbständen in die Formate der Telekomanwendungen und
umgekehrt auf RMI-Server-Seite in Java, Oracle 8-Datenbank
und IBM DB2 für das Datenmanagement insbesondere
Oracle SQL-Plus, Oracle Worksheet bzw. Toad. Zugriff auf
Datenbank-Server via Level-4-JDBC-Treiber. Zuständig für
komplexesten Bereich: Girokontenumschaltung. Vorort-
Unterstützung beim Kunden im Bereich Girokontenumschaltung.
Performance-Verbesserung bei Schnittstellenerzeugung durch
selbstentwickelten Cache. Erarbeitung von UML-Designs:
DV-Konzepte. Forward-Engineerung/Reverse-Engineering mit
Rational Rose und Vorträge vor dem Kunden.
Versions 2.0,Rational Rose,JProbe Profiler,IBM DB2
ActiveX Control-Entwicklung: Entwicklung einer eigenen
Grid-Control mit Spezialfunktionen und Druckmöglichkeiten.
Embeddable auch in MS-Access-Container. Auswertung von
Zahlenmaterial durch vielfältige Darstellung als Diagramme mit
MS Access (VBA). Installationsprogramm für MS-Access und der
erforderlichen Access-Programmdateien mit
Benutzerauthentifikation
Zeitliche Planung von Architekurprojekten mit relativen
und absoluten Abhängigkeiten. Drucken von Projektplänen.
2)Projektverwaltung
Zentrales Dokumentenmanagementsystem für die Verwaltung von
Projektplänen, AVA-Dokumenten, Kostenplanungen, und
Formularen.Einfache grafische Benutzerschnittstelle mit
Drag&Drop-Unterstützung.
3)Rechenblatt
Entwicklung einer DLL für die Berechnung von mathematischen
Ausdrücken. Unterstüzung von unären und binären Operatoren,
beliebige Klammertiefe,Punkt vor Strich-Rechnung,
boolesche Ausdrücke, trigonometrische Operatoren, relationale
Operatoren.
Darstellung der Komponente in einem scrollbaren RTF-Container.
Unterstützung von Textformatierung innerhalb der Ausdrücke
(z.B.Farbeformatierung,Schriftstile)
Unterstützung von Kommentaren zwischen mathematischen Ausdrücken.
Kompfortable kontextsensitive Integration des Rechenblattes in
allen Textfeldern deren Inhalt sich aus mathematischen
Ausdrücken zusammengesetzt hat.
Ausdruck von Formeln mit Kommentaren.
4)Drucksystem
Kompfortabler Ausdruck von Formularen. Integration einer
Seitenvorschau. Unterstützung von Bildern in der Vorschau
und im Druck.
5)Adreßverwaltung
6)Formulare
Implementation von Formularen mit integrierter Kalkulation für
Kostenschätzung, Kostenberechnung, Kostenanschlag.
Ausdruck von Formularen.
Alleinige Entwicklung einer relationalen Datenbank in 100 %
pure Java. Konzepterstellung. Implementation typischer
Datenbankoperationen zur Tabellenerstellung,
Tabellenreorganisation, Indexdefinition (Einfach, kombiniert)
über beliebig viele Felder, Feldbezeichner längenmäßig
unbegrenzt. Typangabe nicht erforderlich:dadurch beliebig
lange Zahlen, Zeichenketten. Implementation einer
SQL-ähnlichen Abfragesprache mit eigener Syntax, die effizient
verarbeitbar ist.
Entwicklung einer multimedialen Präsentation von Macrovision.
Konzepterstellung, Konstruktion der notwendigen Geometrie
mit 3D-Studio MAX R2. Animation der Geometriedaten.
Entwicklung von Audio-Daten mit Music Maker 2000.
Sampling vorhander Musikdaten. Editierung dieser Musikdaten +
Erstellung einer musikalischen Komposition
(per Sequenzer 6 Spuren benutzt). Entwicklung des
Präsentationprogrammes in Object Pascal. Symbiose aus
Echtzeit-Animation + vorberechneter AVI-Animation.
Automatische Umschaltung in den geforderten Grafikmodus
640*480*16 Bit)
Entwicklung von Boss Assistant, Verantwortlich für die
Implementation einer eigenen formalen Sprache (VQL) und deren
Abarbeitung durch einen selbstentwickelten Interpreter.
Parallelisierung der Programmverarbeitung durch Multithreading.
Lösung von Synchronisationsproblemen. Implementation einer
Prozeßverwaltung mit der Möglichkeit jederzeit
Prozeß-Prioritäten zu ändern, einen Prozeß anzuhalten, oder
einen Prozeß zu einem beliebigem Zeitpunkt automatisch zu
starten. Schnellstart-Oberfläche ähnlich dem Windows Desktop.
Automatismen-Definition zum automatischen Start von Prozessen
mit verschiedenen Ablaufparametern. Archivierung-/
Rearchivierung von Datenbeständen
Entwicklung eines CAD-Programmes in Visual C++2.x
unter Windows NT.Implementiert wurden insbesondere:
Grundkörper (Ellipsoid, Quader, Kegel). Vektoroperationen,
Matrizenberechnungen (insbes.inverse Matrix),
Zentralprojektion, Planare geometrische Projektion,
Darstellung als Drahtgitter oder als Flächenmodell mit den
Shadingarten: Phong-Shading, Gauroud-Shading, Flat-Shading.
Texture-Mapping (Farbtextur-Mapping) . Hidden-Surface mit
z-Buffer Algorithmus und Painters-Algorithmus, Lichtquellen
(Ambient-, Richtungs-,Punkt-,Spot-). Lösung kaufmännischer
Probleme in Cobol
2)Implementation einer Lizenzverwaltung und -Erstellung in
Turbo Pascal, objektorientiert unter Verwendung der
Turbo Vision für eine konsistente Benutzeroberfläche.
Schaffung der Möglichkeit dieses Programm von der
DOS-Mailbox (Single-Task-Betriebssystem) zu starten
(Front Door).
3)Berechnung von Wohnraummöbeln per Excel-
Tabelle , VBA und angebundener DLL.
4)Implementation einer kompfortablen Kundenverwaltung in
Paradox unter Verwendung der dortigen teilweise
objektorientierten Programmiersprache.
Computergrafik-Demo - Entwicklung schnellster mathematischer
Routinen zur Lösung von Vektoroperationen, Matrizenberechnungen
sowie Projektionen auf FPU 80387 Basis in Assembler -
Math. Definition der Grundkörper in Turbo Pascal mit
effizientester Struktur für schnellste Darstellung -
Synchronisation der Darstellung auf 70 Hz durch direkte
Ansteuerung des Monitor-Kathodenstrahles per CRT-Controller.
Turbo Profiler
Mailbox-Entwicklung (Project Brain-Trust BBS) Entwicklung
eines Konzeptes für eine Mailbox, die funktional besser als
die damalige Remote Access 2.0 war, da komplette Foren mit
Informationsaustausch, Datenaustausch usw. möglich waren.
Implementation der Mailbox mit Aspect Script (ca. 30000
Zeilen) und Inbetriebnahme.
Lösung eines berechenbaren Optimierungsproblems bei dem es um
die Suche nach dem kürzesten Weg eines Käfers um einen
Ikosaeder ging. Jede Fläche darf und muß genau 1 mal betreten
werden.
Lösung eines berechenbaren Optimierungsproblems bei dem ein
Postbote Post in einem Hochhaus verteilen muß und den
kürzesten Weg ermitteln muß.
Lösung eines Problems, bei dem ein Replace-Interpreter mit
Editor nach vorgegebener formaler Sprache implementiert
werden mußte und Zeichenketten-Probleme auf diese Sprache
abgebildet und gelöst werden mußten
Lösung einer Aufgabe, bei der ein Problem auf eine
Turingmaschine abgebildet und als TM-Programm formuliert
werden mußte.
Stichwörter : Turbo Pascal, AlgorithmenImplementierung der Schachregeln, des optimierten
Kombinations-Baumes, sowie Alpha-/Beta- cut offs zur
Einsparung der Untersuchung von Stellungen in C.
Erreichte Halbtiefe: 7 (486,33 Mhz)
Spiel: 4 gewinnt (Anwender gegen Computer)
Implementierung der Grafik sowie Grafikeffekte. Implementation
der Pseudocomputerintelligenz mit MinMax-Algorithmus.
Stichwörter : Turbo PascalGravitationssimulation Definition von Planeten durch
Massendef, Radius und Positionsangabe und anschließende
Gravitationsberechnung eines Satelliten bei vorgegebener
Startposition. Grafische Darstellung der Satellitenbahn.
Stichwörter : Borland C für Windows, Windows API
Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.
"Der Consultant hat für uns verschiedene Projekte zur Programmentwicklung durchgeführt. Er hat Projekte übernommen und fertiggestellt und eigene Projekte angefangen und beendet. Seine Aufgaben hat er schnell und gründlich durchgeführt. Der Consultant verfügt über sehr gute Grundkenntnisse und kann sich schnell in verschiedene Aufgabenbereiche einarbeiten."
— Projekt versch. Projekte zur SW-Entwicklung für den Architekturbereich, 03/98-06/99
Referenz durch Geschäftsführer SJ Software GmbH vom 18.10.01