Software Design, Programming, Architecture, C/C++, Java, Linux, Hardware
Aktualisiert am 28.03.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 14.04.2024
Verfügbar zu: 100%
davon vor Ort: 100%
c++
linux
embedded
c
software design
perl
hardware
windows
sql
Python
Systementwicklung
Deutsch
Englisch

Einsatzorte

Einsatzorte

Deutschland, Schweiz, Österreich
gerne auch remote
möglich

Projekte

Projekte

1 Jahr 7 Monate
2022-07 - 2024-01

Embedded Linux Development in C++ (medical)

C++ Entwicklung Medizintechnik C++ CI/CD zmq
C++ Entwicklung Medizintechnik

Bug Fixing, Feature Entwicklung, Systementwicklung
Analyse komplexer Fehler mit speziellem shared memory -Trace-Konzept.

GCC CLANG Atlassian JIRA Jazz BitBucket google protobuf CMake Bourne-again-shell
C++ CI/CD zmq
Getinge Pulsion
remote, Feldkirchen
5 Monate
2022-02 - 2022-06

Hardware Testentwicklung

Software-Entwickler, Hardware-Tester Linux C++ Elektronik
Software-Entwickler, Hardware-Tester

Anpassungen der Advantest-V93000-Funktions- und Performance-Tests für CPUs, und Wafer
Entwicklung in C++ zur Erweiterung der Kunden-spezifischen Test-Infrastruktur für Setups mit parallelen Test Patterns.

advantest v93000 Red Hat Linux
Linux C++ Elektronik
IBM
remote
1 Jahr 2 Monate
2020-11 - 2021-12

C++ Entwicklung für Medizintechnik

SW-Entwickler Embedded Linux C++ Qt ...
SW-Entwickler

Für ein Embedded-Multiprozessor-Multi-OS-System entstand ein Logging-Subsystem.

Meine Aufgabe war es, eine Logging-Infrastruktur zu entwerfen und umzusetzen, welche gut in die spezielle Systemarchitektur passt.

Das Logging Modul muss in einer Offline-Umgebung bis zu 2 Jahre lang möglichst viele Daten speichern und bei Speicherknappheit weniger interessante Daten verwerfen. Es darf unter keinen Umständen die Hauptanwendung stören.

Anhand eines in Perl entwickelten Code-Analyse- und Generierungswerkzeugs konnten spezielle Komponenten im Anwendungscode so modifiziert werden, dass eine Art C++-Inspection möglich wurde. Auf diese Weise kann die Logging-Auswertung aus kompakt geloggten CAN Nachrichten auf C++-Symbole zurückverweisen.

Die Laufzeit-Logging-Komponente kombiniert C++ Abstraktion (bis C++14) mit hoch performantem Realtime-C-Level-Systemcode (shared memory, sockets), so dass auch bei größeren Datenmengen die Anwendung nicht ausgebremst werden kann. Verhalten der Logging-Komponente kann zur Compile- und zur Laufzeit detailliert konfiguriert werden, um ggfs auch bei der Entwickler-Fehlersuche zu unterstützen.

QtCreator Ubuntu Debian CMake
Embedded Linux C++ Qt Verteilte Systeme CAN Perl Git Subversion Scrum Feldbus Echtzeitprogrammierung Bourne-again-shell
Soering
remote
9 Monate
2020-02 - 2020-10

mehrere kleinere Projekte

Software Entwickler C++ 3D-Geometry CAN-Bus ...
Software Entwickler

Robotics, SW-Architektur Franka Emika (März-April 2020)
Für einen Roboter-Hersteller sollte die SW-Architektur eines Sicherheits-Moduls weiterentwickelt und in Design und Implementierung überführt werden. Leider wurde dieses Projekt Corona-bedingt auf unbestimmte Zeit verschoben.


Prototyp für Endlager-Planung (April 2020)

Im Rahmen einer Projektaquise wurde ein Prototyp entwickelt,  welcher 3D-Meshes einliest und diese miteinander vereinigt.

Schwerpunkt war die Behandlung von 3D-Körpern, die sich nicht überlappen.

Unterschreitet deren Abstand  einen bestimmten Wert, soll trotzdem eine geeignete Vereinigung erfolgen.

Der Prototyp wurde in C++ entwickelt unter Verwendung der freien Bibliothek 'cork', welche  3D-boolsche Operationen ausführen kann. Dazu mussten die vom Auftraggeber bereitgestellten Daten noch aufbereitet werden. Anschließend wurden geeignete Objekte hinzu generiert, damit sich nur knapp berührende Objekte tatsächlich wie spezifiziert überlappen.

Leider hat der erfolgreiche Prototyp dem Kunden vor allem deutlich gemacht, dass seine eigentlichen Probleme ganz woanders liegen, so dass eine Beauftragung nicht zustande kam.


SSD-Test für BBraun, Melsungen

Entwicklung eines speziellen Lasttests einer SSD für Embedded Linux. Ziel war der Nachweis an den Hersteller, dass die Spezifikation nicht eingehalten wurde. Dieser Nachweis konnte erbracht und dokumentiert werden. Dauer Juni-Juli 2020


CAN Schnittstelle für Deditec (Juli-August 2020)
Basierend auf einem Prototyp sollte eine weitere CAN-Schnittstelle an einen Raspberry PI3 mittels Overlays angebunden werden, so dass diese per Standard-API zu nutzen gewesen wäre. Innerhalb der anvisierten Zeit konnte dieses Problem (erwartungsgemäß) nicht gelöst werden, zumal der Kunde nicht bereit bzw. in der Lage war, die erforderliche Doku zu seinem Prototypen bereit zu stellen.

Raspberry Pi Linux cork Ubuntu Debian Raspian openSUSE
C++ 3D-Geometry CAN-Bus Hardware Elektronik
verschiedene
Homeoffice
6 Monate
2019-06 - 2019-11

Embedded, persistent Logging für Medizingeräte

Software-Entwickler C++ Linux Embedded ...
Software-Entwickler

Für eine unter einem Embedded-Linux (Karo, kernel 2.6.24) laufendes C++/Qt4 Beatmungsgerät (Notfallmedizin) wurde folgendes durchgeführt:

- Analyse des existierenden Logging-Systems

- Bereitstellen einer Logging Architektur, welche die Persistenz von Log Einträgen tatsächlich sicherstellt auch im Falle von Brown Out etc.

- Anpassen des Designs an die konkrete Embedded-Umgebung mit Realtime-Anforderungen

- Implementieren in C++,  Test

Ubuntu Debian Qt CMake
C++ Linux Embedded Systementwicklung Qt Git CMake Echtzeitprogrammierung Bourne-again-shell
Weinmann Emergency
Hamburg/remote
2 Monate
2019-04 - 2019-05

Documentation/Handover/BugFix

Software Entwickler
Software Entwickler
Im Zuge der Übergabe an den Nachfolger wurde umfangreiche Dokumentation auf Englisch erstellt. Sie umfasste auch zahlreiche UML-Dokumente (class,sequence,activity,state)
plantuml
Phoenix Bancaria
Trento
4 Monate
2018-12 - 2019-03

C++/MQ/JMS Messaging Development on AS400/iSeries/Windows

Software Entwickler C++ As400 MultiThreading ...
Software Entwickler

Für den Endkunden wurde die Kommunikation einer AS400/iSeries- sowie Windows-Legacy Anwendung um asynchrones, verteiltes Messaging via MQ-Series und JMS  erweitert.

Schwerpunkt war neben der Analyse des unvollständig dokumentierten Bestands-Codes die C++Codierung korrekter MQ-Header vom Typ MQRFH2 für die JMS  Transportschicht.
Das Projekt wurde wegen strategischen Entscheidungen des Endkunden C&A nach drei Monaten eingestellt.

AS400 windows 7 gcc MQSeries Visual Studio openSUSE
C++ As400 MultiThreading CCSID EBCDIC JMS
IBM GmbH
Düsseldorf
10 Monate
2018-03 - 2018-12

AS400 on Linux: Code improvement, performance, maintenance

Software Developer, SW-Architect automated test C++11 Bourne-again-shell
Software Developer, SW-Architect

In order to support the projects migration towards production large transaction procedures had been applied on big data sets.

Adaptions of my previously development high speed tracing modules allowed detailed performance analysis.

The detected bottlenecks could then be fixed by specific adaptions to business level coding.

Some rework on C++-generics speeded up compilation.

All project code was ported to comply c++11 standard.

Red Hat Linux CMake scons
automated test C++11 Bourne-again-shell
Phoenix Bancaria
Trento
8 Monate
2017-07 - 2018-02

AS400 on Linux: Performance Tools

SW-Developer c++ perl system programming ...
SW-Developer

In order to collect detailed performance analysis data a new trace tool was designed (and programmed):

requirements:

- no changes in generated business level code necessary

- nano second resolution

- max 5% impact on run time performance

- 0 impact if turned off by configuration

- up to 300MB trace data per second

- off line trace analysis


My solution involved system level C-programming to pass trace data efficiently via shared memory as well as high-level C++-abstractions to allow for flexible tracing configuration both at run time and compile time.

A separate set of Perl-scripts was provided to analyze the generated trace data. Call graphs with accumulated times were generated as well as informative spread sheets on various performance details.

openSUSE IBM AS/400 Atlassian JIRA
c++ perl system programming shared mem Posix Git Subversion UML
Phoenix Bancaria
Trento/Italien
5 Jahre
2012-07 - 2017-06

AS400/RPG/CL/DB2 on Linux: extension of functionality

Software Developer C++ AS400 RPG ...
Software Developer

Together with 2 colleages the already provided functionality of AS400/RPG/CL/DB2-emulation was extended, again using 'Modern C++' approaches.

Due to the R&E nature of the project many components had to be redesigned because of newly 'discovered' features etc.

Together with testing responsibles I extended the existing test framework using perl and python.
C++ AS400 RPG perl python Git Subversion Atlassian JIRA UML scons CMake Bourne-again-shell
Phoenix Bancaria
Trento
1 Jahr
2011-07 - 2012-06

AS400 on Linux/Unix: CL support

Software Developer cl as400 c++ ...
Software Developer

CL scripts had to be converted into a CL-like syntax compilable by standard C++ and preprocessor.

To support such 'domain specific' C++ preprocessor macros and C++-templates are developed.

Test framework extensions using perl and python.

cl as400 c++ Python Perl Atlassian JIRA CMake Git Subversion modern c++
Phoenix Bancaria
Trento/Italy
1 Jahr
2010-07 - 2011-06

AS400 on linux/UNIX: runtime environment

Software Architect, Developer C++ RPG AS400 ...
Software Architect, Developer

Based on the previously developed, monolithic prototype a runtime environment needs to implement fuctionality of an AS400's 'session'.

Converted RPG and CL code need to be invoked via very specific call interface.


I successfully designed and implemented those components using test driven development approach. All new components were integrated via CI/CD by providing python test scripts.

jira git SVN openSUSE
C++ RPG AS400 SQL perl python scons
Phoenix Bancaria
Trento
1 Jahr 11 Monate
2008-08 - 2010-06

RPG/DB2/AS400 on Linux: prototype

SW Architecture/Design, Programming C++ SQL python ...
SW Architecture/Design, Programming
Meine Aufgaben:

  • Beratung in C++-spezifischen Fragestellungen, "Modern C++"
  • Analyse der RPG/DDS-Datenbankzugriffe des Kunden
  • Entwurf und Umsetzung eines C++-Sql-DB-Zugriffsmodells, welches die spezifischen Eigenschaften der AS400 abbilden kann
  • Implementierung der Generierungs-Templates für die neu zu erstellenden DB-Zugriffsschichten.
  • Entwicklung eines IO Testkonzepts einschließlich von RPG-Code sowie des Regressions-Testframeworks zum Laufzeit-Vergleich der RPG Programme mit den equivalenten, generierten
     C++ Programmen. Mitverantwortlich für Pflege/Erweiterung der Tool-Chain(python,perl,scons ..)
MYSQL scons Subversion IBM AS400 openSUSE
C++ SQL python JSON RPGIV CL/400 Perl Git Subversion Atlassian JIRA UML modern C++
Phoenix Bancaria
Trento/Italy
1 Jahr 5 Monate
2007-02 - 2008-06

Modellpflege eines Automotive-Multimedia-Systems

Assistent des SW-Architekten, Developer C++ QNX CppUnit ...
Assistent des SW-Architekten, Developer
  • Weiterentwicklung eines fachlich/technischen Konzepts
    'Entwicklungsbegleitendes Testen' im Rahmen des firmeneigenen Frameworks und Anpassung an das Projekt
  • Entwicklung einer Strategie, um eine gute Testabdeckung der Entwicklertests zu erreichen
  • Unterstützung der Entwickler beim Testen
  • QNX-Systementwicklung in C
  • Unterstützung der Projektarchitektur durch Systemanalyse
  • Entwicklung systemnaher Komponenten zur Systemstabilität und 'post mortem'-Analyse
  • Entwicklung von Skripten zur trace Analyse
  • Koordination der Fehleranalyse
  • Auswertung von QNX kernel traces
C++ QNX CppUnit XML perl
Harman Becker
6 Monate
2006-09 - 2007-02

3D-Analyse-Werkzeug zur Anpassung und Demonstration von Algorithmen der 3D-Datenerfassung (Kamera, Laser-Triangulierung)

C++ Boost Linux ...
  • Entwurf der Algorithmen, Design, Programmierung
C++ Boost Linux OpenGL Qt
ACT Systems
1 Jahr 9 Monate
2005-02 - 2006-10

VoIP-Projekt eines großen deutschen Telekommmunikations- unternehmens mit extremen Anforderungen an Skalierung, Verfügbarkeit, Standard-Konformität

C++ Boost Xerces ...
  • Erweiterung des Java-Clients um neue Funktionen
  • Anpassung an 'Corporate Design'
  • Entwurf und Implementierung von Erweiterungen an der hauseigenen VoIP-Plattform unter besonderer Berücksichtung des asynchronen Kommunikations- und Hochverfügbarkeits- Architektur
  • Entwicklung eines VOIP Clients mit 'seamless takeover' zwischen verschiedenen WLAN-Netzen
  • Erstellung eines serverseitigen C++-Wrappers um die SNMP-Standard-Bibliothek NetSnmp
C++ Boost Xerces VoIP SIP XML Java Perl AIX Linux SNMP IP ACE Patterns Subversion Posix
IBM (freiberuflich)
Frankfurt am Main
2 Jahre
2003-01 - 2004-12

Simulation von Stellwerkkomponenten

Software Entwickler XML Tcp/Ip ISO-C++ ...
Software Entwickler

Zur Abnahme größerer Steuerungsanlagen sind regressionsfähige Lasttests einschließlich Simulation der zu steuernden Anlagenteile erforderlich

Ausgehend von bestehenden (Alt-)Simulatoren wird eine
C++-Simulationsframework von mir verantwortlich entwickelt
und in den Testlabors eingesetzt. Schwerpunkte sind neben
Portierbarkeit (Linux,Windows,gcc,VC++) die Konfigurierbarkeit
der parallelen Workflow-Threads sowie die Integration in bestehende Simulationsumgebungen und Prozesse.
Genutzt wurde MDA (Model Driven Architecture) und "Modern C++".

RedHat openSUSE Fedora
XML Tcp/Ip ISO-C++ Boost Java Perl WindowsNT/2000 Linux ClearCase ClearQuest Continuous Integration
Alcatel TAS (freiberuflich)
Stuttgart
5 Monate
2002-07 - 2002-11

Funkgestützte Datenversorgung der Zug-Flotte

Software-Designer, Developer JAVA J2EE ARIS/UML ...
Software-Designer, Developer

Innerhalb eines Infrastrukturprojekts zur funkgestützten Datenversorgung der Zug-Flotte wurde von mir ein (UML-basiertes)   DV-Konzept für die Web-basierte technische und fachliche   Administration erstellt.

Parallel dazu stellte ich einen Prototyp aus Java-Servlets bereit.

Die Konzeption der Oracle-Datenbank wurde von mir als Coaching-Teilprojekt mit einer Berufsanfängerin umgesetzt.

Die umfangreichen, vom Kunden bereitgestellten ARIS-Konzept-Dokumente waren semantisch inkonsistent. Dank eines nebenher entwickelten Perl-Skripts konnten die Fehler identifiziert und korrigiert werden.

ClearCase ClearQuest ARIS WebLogic Oracle
JAVA J2EE ARIS/UML Perl
IBM, DB Systems, DB Reise und Touristik (freiberuflich)
Frankfurt am Main
10 Monate
2001-08 - 2002-05

sicherheitsrelevante, webbasierte Datenhaltung

Software-Entwickler JAVA J2EE
Software-Entwickler

In einer fortgeschrittenen Projektphase wurde das Security/ Benutzerkonzept von mir  überarbeitet, implementiert und in die Anwendungsarchitektur integriert.

WebLogic Oracle TopLink Visual Cafe Solaris 9
JAVA J2EE
Unisys, Europäische Zentralbank (freiberuflich)
Frankfurt am Main
1 Jahr
2000-07 - 2001-06

"Neues Vertriebssystem DB Reise & Touristik" (e-Commerce-System)

Teamleiter, SW Architekt Perl C++ Boost ...
Teamleiter, SW Architekt

Als Technischer Leiter des Teams "Kommunikationsarchitektur"
verantwortlich für Entwicklung eines UML-getriebenen Code-Generators (Perl/Java/C++/XML) als Enterprise Application Intergration (EAI) Werkzeug.

Neben der Entwicklung der sicheren Transportschicht unter Nutzung der Message Routing Software Tuxedo waren die Schwerpunkte Design/Coding Standards , Portabilität, Wartbarkeit, Training der Anwendungsentwickler.

Bea Tuxedo ClearQuest ClearCase BEA Weblogic Tandem Developer Suite
Perl C++ Boost JAVA XML/XPath OOA/OOD/UML/Rational Rose EJB JSP Servlets HTML/JavaScript MDA (Model Driven Architecture)
TLC-GmbH (festangestellt) (DB AG)
Frankfurt am Main
8 Monate
1999-11 - 2000-06

Betriebsdatenverteilung

Software-Entwickler, Architekt JAVA Multithreading sockets ...
Software-Entwickler, Architekt

Analyse, Design und Implementierung einer ausfallsicheren
Datenverteilung an 700 unbesetzte Endgeräte via ftp

Schwerpunkt war u.a. die zuverlässige Erkennung von Unterbrechungen der Netzwerkverbindungen bei verschiedenen Kommunikationspartnern (Windows NT3.x, NT4, Solaris) sowie das Wiederaufsetzen der Datenübertragung.

Es entstand ein RFC-konformer FTP-Client in JAVA sowie ein Ftp-Manager, welcher die Verteilung von der Zentrale über die Server in den Niederlassungen an die Endgeräte sicherstellte.

Windows NT Solaris 9
JAVA Multithreading sockets fail-over ftp (rfc959)
TLC-GmbH (festangestellt)
Frankfurt am Main
4 Monate
1999-07 - 1999-10

2D-Visualisierung graph-basierter Daten

C++ Boost QT ...

Wiederverwendbare Komponente zur 2D-Visualisierung graph-basierter Daten. Design und Programmierung eines Prototyps mit Schwerpunkt auf Knoten- bzw. Kanten-bezogene Benutzerinteraktion

C++ Boost QT OpenGL Linux Windows NT4
TLC-GmbH (festangestellt)
Frankfurt am Main
10 Monate
1998-09 - 1999-06

Projekt Integrierte Netzoptimierung (PIN)

VisualC++ GNU C++ Boost ...
  • Redesign (Entflechtung) eines existierenden Prototyps (VisualC++)
  • Design  einer maschinenlesbaren Darstellung geplanter Infrastruktur-massnahmen bei DB-Netz-AG
  • Implementierung von C++-STL-basierten
    Optimierungsalgorithmen ("Simulated Annealing", "Greedy", "Tabu-Search")
VisualC++ GNU C++ Boost MS-Access SQL Windows NT4 Linux Design Patterns
TLC-GmbH (festangestellt)
5 Monate
1998-08 - 1998-12

Wetterdatenverteilung im Intranet der DB-Netz AG

JAVA Multithreading SUN Solaris ...

Ein spezieller, überwachter Applikations-Server holt Wetter-vorhersagen vom Deutschen Wetterdienst in das DB-Intranet.
Gesteuert durch Schlüssel werden die Daten in regionale
Lotus-Notes Datenbanken eingespielt.
Analyse, Design, Implementierung

JAVA Multithreading SUN Solaris ftp TCP/IP
TLC-GmbH (festangestellt)
4 Monate
1998-05 - 1998-08

Datenverarbeitung im Trassenmanagement (DB Netz AG)

SmallTalk (parc place) Oracle SUN Solaris ...
  • Qualitätssicherung (QS), Softwaretest
  • Entwurf eines Prozessmodells für QS, Abnahme und Bug-Tracking des Grossprojekts
SmallTalk (parc place) Oracle SUN Solaris Windows NT3.51
TLC-GmbH (festangestellt)

Aus- und Weiterbildung

Aus- und Weiterbildung

1 Monat
2016-09 - 2016-09

Seminar CSM (2 days)

Certified Scrum Master (CSM), Agile42, Berlin
Certified Scrum Master (CSM)
Agile42, Berlin

Das Zertifikat kann auf Nachfrage eingesehen werden.

Position

Position

SW Entwicklung (Architektur,Design,agil,OO) . C++, Java, Perl, SQL, Unix/Linux/Embedded/Window

Kompetenzen

Kompetenzen

Top-Skills

c++ linux embedded c software design perl hardware windows sql Python Systementwicklung

Schwerpunkte

C++ C++11/14/17
Experte
Verteilte Systeme, Protokolle
Experte
Embedded Linux
Experte
CAD, 3D Meshes, Algorihmen
Experte
Lineare Algebra, Numerik, Algorithmen
Fortgeschritten
Code- Generierung/Konvertierung
Experte

Produkte / Standards / Erfahrungen / Methoden

ACE Patterns
automated test
Bea Tuxedo
BEA Weblogic
BEA/Compaq-Tuxedo
Boost
CAN
CCSID
ClearCase
ClearQuest
Continuous Integration
EBCDIC
Konvertiereung zwischen Codepages
EJB
Embedded
gcc
gcc/g++
git
HTML/JavaScript
jira
MDA (Model Driven Architecture)
Microservices
MISRA C++
MQ
auch JMS over MQ
OOA/OOD/UML/Rational Rose
OpenGL
QtCreator
scons
Scrum
Servlets
Subversion
Systementwicklung
Tandem Developer Suite
Visual Studio
Visual Studio C++
VoIP
Xerces
XML
  • Kommandozeile + xemacs
  • Borland IDE
  • VisualC++/Visual Studio
  • Tandem Developer Suite
  • jdk 1.2/1.3/5 ... Visual Cafe 4.5
  • weblogic 5.1 Application Server
  • toplink 2.5.1, 3.6
  • gnu-make, nmake
  • UML,Rational Rose, together
  • Rational ClearCase

2D/3D-CAD-Algorithmen, 3D Visualisierung (openGL), Algorithmenentwicklung (als C++ Templates)
Design Patterns
Enterprise Application Integration (EAI) (J2EE, Tuxedo, Edifact, XML)
Model Driven Architecture, Model Driven Design:

Codegenerierung (u.a. Kommunikations-Frameworks)
XML, XPath, XSLT für Datenmodellierung, Kommunikation, Persistenz
Workflow
Netzwerk-Programmierung
IP, TCP, UDP, RFC-Protokolle wie http, ftp, smtp, pop etc.
VoIP: Protokolle SIP, RTP, RTCP

Betriebssysteme

AIX
AS400
Embedded Linux
IRIX
Mehrere Jahre Anwendungsentwicklung
Linux
opensuse,ubuntu,debian,redhat,...
MS-DOS
Mehrere Jahre Anwendungsentwicklung, auch low-level
OS/400
basic operations, RPG and c++ development
QNX
shared mem
SUN OS, Solaris
Posix Programmierung
SUN Solaris
system programming
Tandem
OSH
Ubuntu
Unix
AIX, QNX, Solaris, IRIX
Windows
Win32 API Programmierung
windows 7
Windows NT4
WindowsNT/2000

Programmiersprachen

ANSI C++
Assembler
SAB 80X51 Familie, Intel 80X86
Boost
verschiedene Bibliotheken, z.T. jetzt Standard
C
sehr gute Kenntnisse, K.R. und ANSI
C++
auch C++11,C++14,C++17
C++0x
C++11
CL/400
basic scripting
CppUnit
Delphi
Delphi 3.0
Emacs
Anwenderkenntnisse
Imake, GNU-Make, Make-Maker etc...
Anwendung diverser make-Derivate
ISO-C++
Java
mehrere Projekte Java 1.1/1.2, Java2, EJB etc.
JavaScript
mehrere Projekte Java 1.1/1.2, Java2, EJB etc.
JSON
JSP
overlay
Pascal
Delphi 3.0
Perl
gute Erfahrung in Skripte,Anwendungsentwicklung,OO
PL/SQL
Prototypentwicklung
Prolog
basic data analysis development
Python
Skripte und Anwendungen
Qt
Prototypentwicklung bis QT5
RPG
gute Kenntnisse RPGIV
RPGIV
Shell
csh, ksh, bash, Anwenderkenntnisse
STL
C++ Templates, STL-Erweiterungen
TeX, LaTeX
Anwenderkenntnisse
UML
XML/XPath
Xt, Motif
yacc/lex
einige kleinere tools erstellt
XML, XSLT, XPath als Konfigurations und Generierungswerkzeug

Datenbanken

Access
BDE
DAO
als MS-Access API
DB2
mit RPG/AS400 und SQL/AIX/C++
Interbase
mit Borland DBE
JDBC
Gute Entwicklerkenntnisse bis jdbc2.0
MySQL
verschiedene, auch komplexe Prototypen
ODBC
generisches C++ OR-Mapping
Oracle
gute Design, Entwicklungserfahrung bis Oracle 8i
Paradox
mit Borland DBE
Postgres
verschiedene, auch komplexe Prototypen
SQL
SQL92,SQL99
SQLite
TANDEM NONSTOP SQL
Erfahrung mit OR-Mapping, toolgestützt (TopLink) und vor allem durch generische Ansätze z.B. aus C++, Java oder Perl

Datenkommunikation

CORBA
Grundkenntnisse
EDIFACT
Grundkenntnisse
ftp
ftp (rfc959)
Internet, Intranet
IP
JMS
C++/Java auch jms over MQ
Message Queuing
C++/Java Wrapper für TUXEDO etc. mit Codegenerator
MQSeries
Multithreading
parallele Schnittstelle
low level Zugriff in Assembler, C
RFC
Java-FTP-Client, div. SIP Komponenten
RS232
RS232-Kommunikation mit embedded Systems
SIP
SMTP
Mehrere eMail Clients in Perl/Java
SNMP
NetSnmp, Entwicklung eines C++ Wrappers für NetSnmp (Server)
sockets
TCP/IP
mehrere Projekte, BSD/Win/Java-Socket API
Windows Netzwerk
allgemein TCP/IP, Basiskenntnisse Administration
Winsock
Anwendungsportierung von BSD-Sockets auf Winsock
Entwicklung portabler Anwendungsprotokolle auf Basis von Standards (TCP/IP, XML, etc.)

Hardware

AS/400
RPG/CL/C++ programming, conversion to C++
embedded Systeme
"bare metal" mit AVR,SAB80C535, QNX, embedded Linux
Hardware entwickelt
diverse Analogelektronik, RS232-Terminal, I²C, SPI, ADC, CAN
IBM AS400
innodisk
Mikrocontroller
AVR, SAB8051, ARM Prozessoren
PC
Hardwareentwicklung für ISA Bus (Prototyp)
raspberry pi compute module
Silicon-Graphics
Indigo I/II
SUN
Sparc, E4000, E1000
Tandem
Vektor-/Parallelrechner
Parsytec Transputersysteme

Berechnung / Simulation / Versuch / Validierung

gnuplot

Branchen

Branchen

Software allgemein

Hardware/Elektronik
Medizintechnik

Verkehr (Bahn)
Internet (eCommerce)
Bau (CAD-Entwicklung)
Verpackung/Logistik
Telekommunikation (VoIP)
Bank (Security)
Automotive

Einsatzorte

Einsatzorte

Deutschland, Schweiz, Österreich
gerne auch remote
möglich

Projekte

Projekte

1 Jahr 7 Monate
2022-07 - 2024-01

Embedded Linux Development in C++ (medical)

C++ Entwicklung Medizintechnik C++ CI/CD zmq
C++ Entwicklung Medizintechnik

Bug Fixing, Feature Entwicklung, Systementwicklung
Analyse komplexer Fehler mit speziellem shared memory -Trace-Konzept.

GCC CLANG Atlassian JIRA Jazz BitBucket google protobuf CMake Bourne-again-shell
C++ CI/CD zmq
Getinge Pulsion
remote, Feldkirchen
5 Monate
2022-02 - 2022-06

Hardware Testentwicklung

Software-Entwickler, Hardware-Tester Linux C++ Elektronik
Software-Entwickler, Hardware-Tester

Anpassungen der Advantest-V93000-Funktions- und Performance-Tests für CPUs, und Wafer
Entwicklung in C++ zur Erweiterung der Kunden-spezifischen Test-Infrastruktur für Setups mit parallelen Test Patterns.

advantest v93000 Red Hat Linux
Linux C++ Elektronik
IBM
remote
1 Jahr 2 Monate
2020-11 - 2021-12

C++ Entwicklung für Medizintechnik

SW-Entwickler Embedded Linux C++ Qt ...
SW-Entwickler

Für ein Embedded-Multiprozessor-Multi-OS-System entstand ein Logging-Subsystem.

Meine Aufgabe war es, eine Logging-Infrastruktur zu entwerfen und umzusetzen, welche gut in die spezielle Systemarchitektur passt.

Das Logging Modul muss in einer Offline-Umgebung bis zu 2 Jahre lang möglichst viele Daten speichern und bei Speicherknappheit weniger interessante Daten verwerfen. Es darf unter keinen Umständen die Hauptanwendung stören.

Anhand eines in Perl entwickelten Code-Analyse- und Generierungswerkzeugs konnten spezielle Komponenten im Anwendungscode so modifiziert werden, dass eine Art C++-Inspection möglich wurde. Auf diese Weise kann die Logging-Auswertung aus kompakt geloggten CAN Nachrichten auf C++-Symbole zurückverweisen.

Die Laufzeit-Logging-Komponente kombiniert C++ Abstraktion (bis C++14) mit hoch performantem Realtime-C-Level-Systemcode (shared memory, sockets), so dass auch bei größeren Datenmengen die Anwendung nicht ausgebremst werden kann. Verhalten der Logging-Komponente kann zur Compile- und zur Laufzeit detailliert konfiguriert werden, um ggfs auch bei der Entwickler-Fehlersuche zu unterstützen.

QtCreator Ubuntu Debian CMake
Embedded Linux C++ Qt Verteilte Systeme CAN Perl Git Subversion Scrum Feldbus Echtzeitprogrammierung Bourne-again-shell
Soering
remote
9 Monate
2020-02 - 2020-10

mehrere kleinere Projekte

Software Entwickler C++ 3D-Geometry CAN-Bus ...
Software Entwickler

Robotics, SW-Architektur Franka Emika (März-April 2020)
Für einen Roboter-Hersteller sollte die SW-Architektur eines Sicherheits-Moduls weiterentwickelt und in Design und Implementierung überführt werden. Leider wurde dieses Projekt Corona-bedingt auf unbestimmte Zeit verschoben.


Prototyp für Endlager-Planung (April 2020)

Im Rahmen einer Projektaquise wurde ein Prototyp entwickelt,  welcher 3D-Meshes einliest und diese miteinander vereinigt.

Schwerpunkt war die Behandlung von 3D-Körpern, die sich nicht überlappen.

Unterschreitet deren Abstand  einen bestimmten Wert, soll trotzdem eine geeignete Vereinigung erfolgen.

Der Prototyp wurde in C++ entwickelt unter Verwendung der freien Bibliothek 'cork', welche  3D-boolsche Operationen ausführen kann. Dazu mussten die vom Auftraggeber bereitgestellten Daten noch aufbereitet werden. Anschließend wurden geeignete Objekte hinzu generiert, damit sich nur knapp berührende Objekte tatsächlich wie spezifiziert überlappen.

Leider hat der erfolgreiche Prototyp dem Kunden vor allem deutlich gemacht, dass seine eigentlichen Probleme ganz woanders liegen, so dass eine Beauftragung nicht zustande kam.


SSD-Test für BBraun, Melsungen

Entwicklung eines speziellen Lasttests einer SSD für Embedded Linux. Ziel war der Nachweis an den Hersteller, dass die Spezifikation nicht eingehalten wurde. Dieser Nachweis konnte erbracht und dokumentiert werden. Dauer Juni-Juli 2020


CAN Schnittstelle für Deditec (Juli-August 2020)
Basierend auf einem Prototyp sollte eine weitere CAN-Schnittstelle an einen Raspberry PI3 mittels Overlays angebunden werden, so dass diese per Standard-API zu nutzen gewesen wäre. Innerhalb der anvisierten Zeit konnte dieses Problem (erwartungsgemäß) nicht gelöst werden, zumal der Kunde nicht bereit bzw. in der Lage war, die erforderliche Doku zu seinem Prototypen bereit zu stellen.

Raspberry Pi Linux cork Ubuntu Debian Raspian openSUSE
C++ 3D-Geometry CAN-Bus Hardware Elektronik
verschiedene
Homeoffice
6 Monate
2019-06 - 2019-11

Embedded, persistent Logging für Medizingeräte

Software-Entwickler C++ Linux Embedded ...
Software-Entwickler

Für eine unter einem Embedded-Linux (Karo, kernel 2.6.24) laufendes C++/Qt4 Beatmungsgerät (Notfallmedizin) wurde folgendes durchgeführt:

- Analyse des existierenden Logging-Systems

- Bereitstellen einer Logging Architektur, welche die Persistenz von Log Einträgen tatsächlich sicherstellt auch im Falle von Brown Out etc.

- Anpassen des Designs an die konkrete Embedded-Umgebung mit Realtime-Anforderungen

- Implementieren in C++,  Test

Ubuntu Debian Qt CMake
C++ Linux Embedded Systementwicklung Qt Git CMake Echtzeitprogrammierung Bourne-again-shell
Weinmann Emergency
Hamburg/remote
2 Monate
2019-04 - 2019-05

Documentation/Handover/BugFix

Software Entwickler
Software Entwickler
Im Zuge der Übergabe an den Nachfolger wurde umfangreiche Dokumentation auf Englisch erstellt. Sie umfasste auch zahlreiche UML-Dokumente (class,sequence,activity,state)
plantuml
Phoenix Bancaria
Trento
4 Monate
2018-12 - 2019-03

C++/MQ/JMS Messaging Development on AS400/iSeries/Windows

Software Entwickler C++ As400 MultiThreading ...
Software Entwickler

Für den Endkunden wurde die Kommunikation einer AS400/iSeries- sowie Windows-Legacy Anwendung um asynchrones, verteiltes Messaging via MQ-Series und JMS  erweitert.

Schwerpunkt war neben der Analyse des unvollständig dokumentierten Bestands-Codes die C++Codierung korrekter MQ-Header vom Typ MQRFH2 für die JMS  Transportschicht.
Das Projekt wurde wegen strategischen Entscheidungen des Endkunden C&A nach drei Monaten eingestellt.

AS400 windows 7 gcc MQSeries Visual Studio openSUSE
C++ As400 MultiThreading CCSID EBCDIC JMS
IBM GmbH
Düsseldorf
10 Monate
2018-03 - 2018-12

AS400 on Linux: Code improvement, performance, maintenance

Software Developer, SW-Architect automated test C++11 Bourne-again-shell
Software Developer, SW-Architect

In order to support the projects migration towards production large transaction procedures had been applied on big data sets.

Adaptions of my previously development high speed tracing modules allowed detailed performance analysis.

The detected bottlenecks could then be fixed by specific adaptions to business level coding.

Some rework on C++-generics speeded up compilation.

All project code was ported to comply c++11 standard.

Red Hat Linux CMake scons
automated test C++11 Bourne-again-shell
Phoenix Bancaria
Trento
8 Monate
2017-07 - 2018-02

AS400 on Linux: Performance Tools

SW-Developer c++ perl system programming ...
SW-Developer

In order to collect detailed performance analysis data a new trace tool was designed (and programmed):

requirements:

- no changes in generated business level code necessary

- nano second resolution

- max 5% impact on run time performance

- 0 impact if turned off by configuration

- up to 300MB trace data per second

- off line trace analysis


My solution involved system level C-programming to pass trace data efficiently via shared memory as well as high-level C++-abstractions to allow for flexible tracing configuration both at run time and compile time.

A separate set of Perl-scripts was provided to analyze the generated trace data. Call graphs with accumulated times were generated as well as informative spread sheets on various performance details.

openSUSE IBM AS/400 Atlassian JIRA
c++ perl system programming shared mem Posix Git Subversion UML
Phoenix Bancaria
Trento/Italien
5 Jahre
2012-07 - 2017-06

AS400/RPG/CL/DB2 on Linux: extension of functionality

Software Developer C++ AS400 RPG ...
Software Developer

Together with 2 colleages the already provided functionality of AS400/RPG/CL/DB2-emulation was extended, again using 'Modern C++' approaches.

Due to the R&E nature of the project many components had to be redesigned because of newly 'discovered' features etc.

Together with testing responsibles I extended the existing test framework using perl and python.
C++ AS400 RPG perl python Git Subversion Atlassian JIRA UML scons CMake Bourne-again-shell
Phoenix Bancaria
Trento
1 Jahr
2011-07 - 2012-06

AS400 on Linux/Unix: CL support

Software Developer cl as400 c++ ...
Software Developer

CL scripts had to be converted into a CL-like syntax compilable by standard C++ and preprocessor.

To support such 'domain specific' C++ preprocessor macros and C++-templates are developed.

Test framework extensions using perl and python.

cl as400 c++ Python Perl Atlassian JIRA CMake Git Subversion modern c++
Phoenix Bancaria
Trento/Italy
1 Jahr
2010-07 - 2011-06

AS400 on linux/UNIX: runtime environment

Software Architect, Developer C++ RPG AS400 ...
Software Architect, Developer

Based on the previously developed, monolithic prototype a runtime environment needs to implement fuctionality of an AS400's 'session'.

Converted RPG and CL code need to be invoked via very specific call interface.


I successfully designed and implemented those components using test driven development approach. All new components were integrated via CI/CD by providing python test scripts.

jira git SVN openSUSE
C++ RPG AS400 SQL perl python scons
Phoenix Bancaria
Trento
1 Jahr 11 Monate
2008-08 - 2010-06

RPG/DB2/AS400 on Linux: prototype

SW Architecture/Design, Programming C++ SQL python ...
SW Architecture/Design, Programming
Meine Aufgaben:

  • Beratung in C++-spezifischen Fragestellungen, "Modern C++"
  • Analyse der RPG/DDS-Datenbankzugriffe des Kunden
  • Entwurf und Umsetzung eines C++-Sql-DB-Zugriffsmodells, welches die spezifischen Eigenschaften der AS400 abbilden kann
  • Implementierung der Generierungs-Templates für die neu zu erstellenden DB-Zugriffsschichten.
  • Entwicklung eines IO Testkonzepts einschließlich von RPG-Code sowie des Regressions-Testframeworks zum Laufzeit-Vergleich der RPG Programme mit den equivalenten, generierten
     C++ Programmen. Mitverantwortlich für Pflege/Erweiterung der Tool-Chain(python,perl,scons ..)
MYSQL scons Subversion IBM AS400 openSUSE
C++ SQL python JSON RPGIV CL/400 Perl Git Subversion Atlassian JIRA UML modern C++
Phoenix Bancaria
Trento/Italy
1 Jahr 5 Monate
2007-02 - 2008-06

Modellpflege eines Automotive-Multimedia-Systems

Assistent des SW-Architekten, Developer C++ QNX CppUnit ...
Assistent des SW-Architekten, Developer
  • Weiterentwicklung eines fachlich/technischen Konzepts
    'Entwicklungsbegleitendes Testen' im Rahmen des firmeneigenen Frameworks und Anpassung an das Projekt
  • Entwicklung einer Strategie, um eine gute Testabdeckung der Entwicklertests zu erreichen
  • Unterstützung der Entwickler beim Testen
  • QNX-Systementwicklung in C
  • Unterstützung der Projektarchitektur durch Systemanalyse
  • Entwicklung systemnaher Komponenten zur Systemstabilität und 'post mortem'-Analyse
  • Entwicklung von Skripten zur trace Analyse
  • Koordination der Fehleranalyse
  • Auswertung von QNX kernel traces
C++ QNX CppUnit XML perl
Harman Becker
6 Monate
2006-09 - 2007-02

3D-Analyse-Werkzeug zur Anpassung und Demonstration von Algorithmen der 3D-Datenerfassung (Kamera, Laser-Triangulierung)

C++ Boost Linux ...
  • Entwurf der Algorithmen, Design, Programmierung
C++ Boost Linux OpenGL Qt
ACT Systems
1 Jahr 9 Monate
2005-02 - 2006-10

VoIP-Projekt eines großen deutschen Telekommmunikations- unternehmens mit extremen Anforderungen an Skalierung, Verfügbarkeit, Standard-Konformität

C++ Boost Xerces ...
  • Erweiterung des Java-Clients um neue Funktionen
  • Anpassung an 'Corporate Design'
  • Entwurf und Implementierung von Erweiterungen an der hauseigenen VoIP-Plattform unter besonderer Berücksichtung des asynchronen Kommunikations- und Hochverfügbarkeits- Architektur
  • Entwicklung eines VOIP Clients mit 'seamless takeover' zwischen verschiedenen WLAN-Netzen
  • Erstellung eines serverseitigen C++-Wrappers um die SNMP-Standard-Bibliothek NetSnmp
C++ Boost Xerces VoIP SIP XML Java Perl AIX Linux SNMP IP ACE Patterns Subversion Posix
IBM (freiberuflich)
Frankfurt am Main
2 Jahre
2003-01 - 2004-12

Simulation von Stellwerkkomponenten

Software Entwickler XML Tcp/Ip ISO-C++ ...
Software Entwickler

Zur Abnahme größerer Steuerungsanlagen sind regressionsfähige Lasttests einschließlich Simulation der zu steuernden Anlagenteile erforderlich

Ausgehend von bestehenden (Alt-)Simulatoren wird eine
C++-Simulationsframework von mir verantwortlich entwickelt
und in den Testlabors eingesetzt. Schwerpunkte sind neben
Portierbarkeit (Linux,Windows,gcc,VC++) die Konfigurierbarkeit
der parallelen Workflow-Threads sowie die Integration in bestehende Simulationsumgebungen und Prozesse.
Genutzt wurde MDA (Model Driven Architecture) und "Modern C++".

RedHat openSUSE Fedora
XML Tcp/Ip ISO-C++ Boost Java Perl WindowsNT/2000 Linux ClearCase ClearQuest Continuous Integration
Alcatel TAS (freiberuflich)
Stuttgart
5 Monate
2002-07 - 2002-11

Funkgestützte Datenversorgung der Zug-Flotte

Software-Designer, Developer JAVA J2EE ARIS/UML ...
Software-Designer, Developer

Innerhalb eines Infrastrukturprojekts zur funkgestützten Datenversorgung der Zug-Flotte wurde von mir ein (UML-basiertes)   DV-Konzept für die Web-basierte technische und fachliche   Administration erstellt.

Parallel dazu stellte ich einen Prototyp aus Java-Servlets bereit.

Die Konzeption der Oracle-Datenbank wurde von mir als Coaching-Teilprojekt mit einer Berufsanfängerin umgesetzt.

Die umfangreichen, vom Kunden bereitgestellten ARIS-Konzept-Dokumente waren semantisch inkonsistent. Dank eines nebenher entwickelten Perl-Skripts konnten die Fehler identifiziert und korrigiert werden.

ClearCase ClearQuest ARIS WebLogic Oracle
JAVA J2EE ARIS/UML Perl
IBM, DB Systems, DB Reise und Touristik (freiberuflich)
Frankfurt am Main
10 Monate
2001-08 - 2002-05

sicherheitsrelevante, webbasierte Datenhaltung

Software-Entwickler JAVA J2EE
Software-Entwickler

In einer fortgeschrittenen Projektphase wurde das Security/ Benutzerkonzept von mir  überarbeitet, implementiert und in die Anwendungsarchitektur integriert.

WebLogic Oracle TopLink Visual Cafe Solaris 9
JAVA J2EE
Unisys, Europäische Zentralbank (freiberuflich)
Frankfurt am Main
1 Jahr
2000-07 - 2001-06

"Neues Vertriebssystem DB Reise & Touristik" (e-Commerce-System)

Teamleiter, SW Architekt Perl C++ Boost ...
Teamleiter, SW Architekt

Als Technischer Leiter des Teams "Kommunikationsarchitektur"
verantwortlich für Entwicklung eines UML-getriebenen Code-Generators (Perl/Java/C++/XML) als Enterprise Application Intergration (EAI) Werkzeug.

Neben der Entwicklung der sicheren Transportschicht unter Nutzung der Message Routing Software Tuxedo waren die Schwerpunkte Design/Coding Standards , Portabilität, Wartbarkeit, Training der Anwendungsentwickler.

Bea Tuxedo ClearQuest ClearCase BEA Weblogic Tandem Developer Suite
Perl C++ Boost JAVA XML/XPath OOA/OOD/UML/Rational Rose EJB JSP Servlets HTML/JavaScript MDA (Model Driven Architecture)
TLC-GmbH (festangestellt) (DB AG)
Frankfurt am Main
8 Monate
1999-11 - 2000-06

Betriebsdatenverteilung

Software-Entwickler, Architekt JAVA Multithreading sockets ...
Software-Entwickler, Architekt

Analyse, Design und Implementierung einer ausfallsicheren
Datenverteilung an 700 unbesetzte Endgeräte via ftp

Schwerpunkt war u.a. die zuverlässige Erkennung von Unterbrechungen der Netzwerkverbindungen bei verschiedenen Kommunikationspartnern (Windows NT3.x, NT4, Solaris) sowie das Wiederaufsetzen der Datenübertragung.

Es entstand ein RFC-konformer FTP-Client in JAVA sowie ein Ftp-Manager, welcher die Verteilung von der Zentrale über die Server in den Niederlassungen an die Endgeräte sicherstellte.

Windows NT Solaris 9
JAVA Multithreading sockets fail-over ftp (rfc959)
TLC-GmbH (festangestellt)
Frankfurt am Main
4 Monate
1999-07 - 1999-10

2D-Visualisierung graph-basierter Daten

C++ Boost QT ...

Wiederverwendbare Komponente zur 2D-Visualisierung graph-basierter Daten. Design und Programmierung eines Prototyps mit Schwerpunkt auf Knoten- bzw. Kanten-bezogene Benutzerinteraktion

C++ Boost QT OpenGL Linux Windows NT4
TLC-GmbH (festangestellt)
Frankfurt am Main
10 Monate
1998-09 - 1999-06

Projekt Integrierte Netzoptimierung (PIN)

VisualC++ GNU C++ Boost ...
  • Redesign (Entflechtung) eines existierenden Prototyps (VisualC++)
  • Design  einer maschinenlesbaren Darstellung geplanter Infrastruktur-massnahmen bei DB-Netz-AG
  • Implementierung von C++-STL-basierten
    Optimierungsalgorithmen ("Simulated Annealing", "Greedy", "Tabu-Search")
VisualC++ GNU C++ Boost MS-Access SQL Windows NT4 Linux Design Patterns
TLC-GmbH (festangestellt)
5 Monate
1998-08 - 1998-12

Wetterdatenverteilung im Intranet der DB-Netz AG

JAVA Multithreading SUN Solaris ...

Ein spezieller, überwachter Applikations-Server holt Wetter-vorhersagen vom Deutschen Wetterdienst in das DB-Intranet.
Gesteuert durch Schlüssel werden die Daten in regionale
Lotus-Notes Datenbanken eingespielt.
Analyse, Design, Implementierung

JAVA Multithreading SUN Solaris ftp TCP/IP
TLC-GmbH (festangestellt)
4 Monate
1998-05 - 1998-08

Datenverarbeitung im Trassenmanagement (DB Netz AG)

SmallTalk (parc place) Oracle SUN Solaris ...
  • Qualitätssicherung (QS), Softwaretest
  • Entwurf eines Prozessmodells für QS, Abnahme und Bug-Tracking des Grossprojekts
SmallTalk (parc place) Oracle SUN Solaris Windows NT3.51
TLC-GmbH (festangestellt)

Aus- und Weiterbildung

Aus- und Weiterbildung

1 Monat
2016-09 - 2016-09

Seminar CSM (2 days)

Certified Scrum Master (CSM), Agile42, Berlin
Certified Scrum Master (CSM)
Agile42, Berlin

Das Zertifikat kann auf Nachfrage eingesehen werden.

Position

Position

SW Entwicklung (Architektur,Design,agil,OO) . C++, Java, Perl, SQL, Unix/Linux/Embedded/Window

Kompetenzen

Kompetenzen

Top-Skills

c++ linux embedded c software design perl hardware windows sql Python Systementwicklung

Schwerpunkte

C++ C++11/14/17
Experte
Verteilte Systeme, Protokolle
Experte
Embedded Linux
Experte
CAD, 3D Meshes, Algorihmen
Experte
Lineare Algebra, Numerik, Algorithmen
Fortgeschritten
Code- Generierung/Konvertierung
Experte

Produkte / Standards / Erfahrungen / Methoden

ACE Patterns
automated test
Bea Tuxedo
BEA Weblogic
BEA/Compaq-Tuxedo
Boost
CAN
CCSID
ClearCase
ClearQuest
Continuous Integration
EBCDIC
Konvertiereung zwischen Codepages
EJB
Embedded
gcc
gcc/g++
git
HTML/JavaScript
jira
MDA (Model Driven Architecture)
Microservices
MISRA C++
MQ
auch JMS over MQ
OOA/OOD/UML/Rational Rose
OpenGL
QtCreator
scons
Scrum
Servlets
Subversion
Systementwicklung
Tandem Developer Suite
Visual Studio
Visual Studio C++
VoIP
Xerces
XML
  • Kommandozeile + xemacs
  • Borland IDE
  • VisualC++/Visual Studio
  • Tandem Developer Suite
  • jdk 1.2/1.3/5 ... Visual Cafe 4.5
  • weblogic 5.1 Application Server
  • toplink 2.5.1, 3.6
  • gnu-make, nmake
  • UML,Rational Rose, together
  • Rational ClearCase

2D/3D-CAD-Algorithmen, 3D Visualisierung (openGL), Algorithmenentwicklung (als C++ Templates)
Design Patterns
Enterprise Application Integration (EAI) (J2EE, Tuxedo, Edifact, XML)
Model Driven Architecture, Model Driven Design:

Codegenerierung (u.a. Kommunikations-Frameworks)
XML, XPath, XSLT für Datenmodellierung, Kommunikation, Persistenz
Workflow
Netzwerk-Programmierung
IP, TCP, UDP, RFC-Protokolle wie http, ftp, smtp, pop etc.
VoIP: Protokolle SIP, RTP, RTCP

Betriebssysteme

AIX
AS400
Embedded Linux
IRIX
Mehrere Jahre Anwendungsentwicklung
Linux
opensuse,ubuntu,debian,redhat,...
MS-DOS
Mehrere Jahre Anwendungsentwicklung, auch low-level
OS/400
basic operations, RPG and c++ development
QNX
shared mem
SUN OS, Solaris
Posix Programmierung
SUN Solaris
system programming
Tandem
OSH
Ubuntu
Unix
AIX, QNX, Solaris, IRIX
Windows
Win32 API Programmierung
windows 7
Windows NT4
WindowsNT/2000

Programmiersprachen

ANSI C++
Assembler
SAB 80X51 Familie, Intel 80X86
Boost
verschiedene Bibliotheken, z.T. jetzt Standard
C
sehr gute Kenntnisse, K.R. und ANSI
C++
auch C++11,C++14,C++17
C++0x
C++11
CL/400
basic scripting
CppUnit
Delphi
Delphi 3.0
Emacs
Anwenderkenntnisse
Imake, GNU-Make, Make-Maker etc...
Anwendung diverser make-Derivate
ISO-C++
Java
mehrere Projekte Java 1.1/1.2, Java2, EJB etc.
JavaScript
mehrere Projekte Java 1.1/1.2, Java2, EJB etc.
JSON
JSP
overlay
Pascal
Delphi 3.0
Perl
gute Erfahrung in Skripte,Anwendungsentwicklung,OO
PL/SQL
Prototypentwicklung
Prolog
basic data analysis development
Python
Skripte und Anwendungen
Qt
Prototypentwicklung bis QT5
RPG
gute Kenntnisse RPGIV
RPGIV
Shell
csh, ksh, bash, Anwenderkenntnisse
STL
C++ Templates, STL-Erweiterungen
TeX, LaTeX
Anwenderkenntnisse
UML
XML/XPath
Xt, Motif
yacc/lex
einige kleinere tools erstellt
XML, XSLT, XPath als Konfigurations und Generierungswerkzeug

Datenbanken

Access
BDE
DAO
als MS-Access API
DB2
mit RPG/AS400 und SQL/AIX/C++
Interbase
mit Borland DBE
JDBC
Gute Entwicklerkenntnisse bis jdbc2.0
MySQL
verschiedene, auch komplexe Prototypen
ODBC
generisches C++ OR-Mapping
Oracle
gute Design, Entwicklungserfahrung bis Oracle 8i
Paradox
mit Borland DBE
Postgres
verschiedene, auch komplexe Prototypen
SQL
SQL92,SQL99
SQLite
TANDEM NONSTOP SQL
Erfahrung mit OR-Mapping, toolgestützt (TopLink) und vor allem durch generische Ansätze z.B. aus C++, Java oder Perl

Datenkommunikation

CORBA
Grundkenntnisse
EDIFACT
Grundkenntnisse
ftp
ftp (rfc959)
Internet, Intranet
IP
JMS
C++/Java auch jms over MQ
Message Queuing
C++/Java Wrapper für TUXEDO etc. mit Codegenerator
MQSeries
Multithreading
parallele Schnittstelle
low level Zugriff in Assembler, C
RFC
Java-FTP-Client, div. SIP Komponenten
RS232
RS232-Kommunikation mit embedded Systems
SIP
SMTP
Mehrere eMail Clients in Perl/Java
SNMP
NetSnmp, Entwicklung eines C++ Wrappers für NetSnmp (Server)
sockets
TCP/IP
mehrere Projekte, BSD/Win/Java-Socket API
Windows Netzwerk
allgemein TCP/IP, Basiskenntnisse Administration
Winsock
Anwendungsportierung von BSD-Sockets auf Winsock
Entwicklung portabler Anwendungsprotokolle auf Basis von Standards (TCP/IP, XML, etc.)

Hardware

AS/400
RPG/CL/C++ programming, conversion to C++
embedded Systeme
"bare metal" mit AVR,SAB80C535, QNX, embedded Linux
Hardware entwickelt
diverse Analogelektronik, RS232-Terminal, I²C, SPI, ADC, CAN
IBM AS400
innodisk
Mikrocontroller
AVR, SAB8051, ARM Prozessoren
PC
Hardwareentwicklung für ISA Bus (Prototyp)
raspberry pi compute module
Silicon-Graphics
Indigo I/II
SUN
Sparc, E4000, E1000
Tandem
Vektor-/Parallelrechner
Parsytec Transputersysteme

Berechnung / Simulation / Versuch / Validierung

gnuplot

Branchen

Branchen

Software allgemein

Hardware/Elektronik
Medizintechnik

Verkehr (Bahn)
Internet (eCommerce)
Bau (CAD-Entwicklung)
Verpackung/Logistik
Telekommunikation (VoIP)
Bank (Security)
Automotive

Vertrauen Sie auf GULP

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das GULP Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.