Senior Software-Entwickler C/C++ Qt CORBA PHP Perl Datenbanken GeoInformatik Webapplikationen MATLAB Simulink Windows UNIX Linux
Aktualisiert am 10.10.2018
Profil
Freiberufler / Selbstständiger
Verfügbar ab: 01.01.2019
Verfügbar zu: 60%
davon vor Ort: 100%
Deutsch
(Muttersprache)
Englisch
(fließend, schriftsicher)
Französisch
(erw. Schulkenntnisse)
Italienisch
(Schulkenntnisse)
Latein
Spanisch
(erw. Urlauberspanisch)

Einsatzorte

Einsatzorte

Österreich, Schweiz, Deutschland

Deutschland: bevorzugt: D8 (wg. Wohnortnähe)

D0, D1, D2, D3, D4, D5, D6, D7 und D9 für Einsätze bis ca. 12 Wochen

nicht möglich

Projekte

Projekte

Zeitraum:     10.2007-06.2009
Projekt:      Entwicklung von GeoObjekten für ein Mautprojekt
Branche:      Automotive, Telco, Telematik
Rolle:        Entwicklung
Tätigkeiten:  Konzeption, Softwareentwicklung, Test
Umgebung:     MATLAB, Navteq GDF 3.0, MSSQL Server 2000, MSSQL Server 2005, RCS
Beschreibung: - Datenbank- und SQL-Abfrage-Modellierung in einer eigensentwickelten

 Metabeschreibung, Entwicklung eines SQL-Generators

      - Optimierung Datenbankaufbau und SQL-Abfragen

  - Automatisierung des zuvor weitgehend manuell erfolgten Workflow zur

 Erstellung von GeoObjekten

  - Testentwurf und -implementierung

  - Durchführung verschiedener Demoszenarien

  


Zeitraum:     07.2006-09.2007
Projekt:      Toolkette zur modellbasierten Softwareentwicklung im Unternehmen
Branche:      Automotive (BMW)
Rolle:        Entwicklung und Test
Tätigkeiten:  - Evaluierung von Richtlinien in Simulink/Stateflow-Modellen

  - Implementierungen für den (Simulink-)Richtlinienchecker

  - Betrieb, Weiterentwicklung und Betreuung eines Tools zur

 Variantenverwaltung von Simulink-Modellen

  - Erfassung von Matlab/Toolbox Bedarf im Unternehmen, Ausarbeitung

 einer Lizenzoptimierungsstrategie

  - Erfassung von Anforderungen für einen Matlab-Releasewechsel

  - Durchführung von Regressionstests (MIL) bei großen Simulink-Modellen

  - Design, Implementierung und Test eines webbasierten Fehlermeldenwesen im

 Rahmen der Validierungssuite

  - Verwaltung von Windowsservern in der Abteilung

Umgebung:     Matlab, Simulink, Stateflow, Targetlink, Windriver Diab Compiler, Exact,

  PHP, MySql 5.0, Apache, Eclipse, Windows, Subversion, XML, Mantis, Flex LM,

  Perl, Eigenimplementierungen



Zeitraum:     05.2006-06.2006
Projekt:      Mitarbeit bei prototypischer Implementierung einer Matlab Toolbox
Branche:      Mathworks (über ein Ingenieur-Büro)
Rolle:        Entwicklung
Umgebung:     Matlab, Simulink
Beschreibung: Propagierung von Signalskalierungen in Simulink-Modellen


Zeitraum:     01.2006-05.2006
Projekt:      Import von Navteq GFD 3.0 Daten in eine SQL-Datenbank
Branche:      Telematik (AGES)
Rolle:        Entwicklung
Tätigkeiten:  Portierung C# -> Matlab, Performance-Optimierung SQL-Zugriffe,

  Datenbankumstrukturierung und -erweiterung, Implementierung und Test

Umgebung:     MATLAB, C#, MSSQL Server 2000, RCS
Beschreibung: Für die satellitengestützte Mauterhebung werden von Navteq bereitgestellte

  Geodaten in sog. Geo-Objekte transformiert. Diese dienen zur schnellen

  Identifikation von z.B. Autobahnabschnitten oder Mautzonen in Innenstädten.


Zeitraum:     2005
Projekt:      privates NDA-Projekt
Umgebung:     C++, Perl, PHP, Linux, Windows, CORBA, Qt, MySql


Zeitraum:     1999-2005
Projekt:      OSCAR (Operating System for the Control of Autonomous Robots)
Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Angestellter, wiss. Assistent, Projektleitung  bei Mitarbeit

  zahlreicher Studenten, Entwurf, Implementierung und Test, Support,

  technische Betreuung des mobilen Roboters und

  Systemverwaltung dessen Linux-Rechnernetzes

Tätigkeiten:  Forschung und Entwicklung, Programmierung, Test, Dokumentation
Umgebung:     C++, GNU-Tools (gcc, gdb, cvs, make, autotools, flex, bison),

  Qt-Bibliothek, qwt, STL, XML, doxygen, bash/shell Scripting, HTML, CORBA

  (Orbacus, OmniOrb), CORBA IDL, OpenGL, CCD-Kameras, Laserscanner, CAN-Bus,

  IEEE1394 (FireWire), RS232

Beschreibung: Design und Implementierung der komponentenbasierten Systemarchitektur OSCAR

  als OpenSource Projekt im Rahmen der Dissertation:


  OSCAR stellt eine verteilte Laufzeitumgebung bereit, die typische

  Komponenten, wie sie auf robotischen Systemen auftreten

  (Sensordatenverarbeitung, Interpretation, Modelle, Steuerungskomponenten,

  ...), miteinander verknüpft. Das entworfene Komponentenmodell besitzt eine

  einfach zu nutzende API, die die CORBA-basierte Kommunikation kapselt;

  der Komponentenprogrammierer benötigt somit keine CORBA-Kenntnisse.

  Kernstück der Architektur ist eine verhaltensbasierte Ablaufsteuerung, die

  die Aktivität der als OSCAR-Komponenten implementierten Verhaltensmodule

  entsprechend der aktuellen Situation unter Berücksichtigung der

  vorhandenen Ressourcen steuert.

  Das Framework OSCAR besitzt eine Vielzahl von graphischen offline- und

  online-Tools, mit denen z.B. Komponenten verwaltet oder der Ablauf von

  Applikationen überwacht werden kann. Die Komponenten selbst sind

  hauptsächlich für einen mobilen Roboter entstanden (Z.T. wurde auch

  Legacy-Code integriert.), für den auch eine Simulationsumgebung

  realisiert wurde. OSCAR wurde im Rahmen des DFG-geförderten Projekts EvI

  (Exploration von Innenräumen mit optischen Sensoren) realisiert und auch

  im EU-Projekt ActiPret eingesetzt.



Zeitraum:     1998-2003
Projekt:      Neuaufbau und Leitung des Praktikums "Roboter Sehen"
Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Angestellter, wiss. Assistent
Umgebung:     Linux, gcc, make, RCS, HALCON, Matrox/Bt848-Framegrabber,

  Kamerakalibrierung, mobiler Roboter "Lpi" (Eigenkonstruktion).

Beschreibung: Das Praktikum "Roboter Sehen" basiert auf dem Projektkurs-Konzept des

  u.g. "Praktikum Software-Engineering". Der Unterrichtsteil umfasst die

  Einführung in grundlegende Konzepte der (industriellen) Bildverarbeitung.

  In individuell durchzuführenden Vorstudien lernen Studenten der Elektro-

  und Informationstechnik ab dem 6. Semester die Entwicklungsumgebung (Linux,

  GNU-Tools) und das CAVE-Tool HALCON kennen. Im Projektteil, für den zwei

  Teams gebildet werden, entsteht eine Steuerungssoftware für einen mobilen

  Kleinroboter. Die Aufgabenstellung lautet hier "Find Life on Mars!". In

  einem der Marsoberfläche nachempfundenen Hindernisparcours müssen Objekte

  mit dem (zusätzlich mit Manipulator ausgestatteten) Roboter aufgesammelt

  und anhand eines Musters identifiziert werden. Das Szenario wird dabei mit

  Hilfe einer an der Decke befestigten Farb-CCD-Kamera beobachtet. Die zu

  erstellende Software muss entsprechend verschiedene Bildverarbeitungsmodule

  sowie eine Auflaufsteuerung beinhalten.

  Beide Teams treten zum Abschluß des Kurs im "Roboter-Rennen" gegeneinander

  an.


  Das Praktikum wurde 1999 nach erstmaliger Durchführung mit dem

  studentischen Preis der Lehre, dem  "Trafo" ausgezeichnet.



Zeitraum:     1997-2002
Projekt:      Leitung und Überarbeitung Praktikum "Software Engineering"
Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Angestellter
Umgebung:     Linux, gcc, make, RCS/CVS, FreeBSD sockets (und CORBA), X11/Qt-Bibliothek,

  mobiler Roboter "Lpi" (Eigenkonstruktion).

Beschreibung: Im Projektkurs "Software Engineering" kommen Studenten der Elektro- und

  Informationstechnik ab dem 7. Semester mit Aspekten des Software

  Engineering und der Durchführung von Projekten in Teamarbeit in Berührung.

  Der Kurs besteht aus einem Unterrichtsteil (V-Modell, Teammanagement,

  Entwicklungsumgebung, ...) sowie einem praktischen Teil, für den die

  Studenten in zwei konkurrierende Teams eingeteilt werden. Aufgabe ist es

  hier, für einen kleinen mobilen Roboter mit taktiler Sensorik ein

  Software-Paket zu erstellen und dabei alle Phasen eines Software Projekts

  auf Basis des V-Modells inkl. Dokumentation "durchzuspielen":

  Die auf verschiedene Prozesse aufzuteilende Software muss dabei den Roboter

  autonom durch ein unbekanntes Labyrinth steuern und den Wegeplanungs-

  algorithmus visualisieren. In einer abschließenden, öffentlichen

  Veranstaltung treten beide Teams gegeneinander an und müssen die

  Funktionalität ihrer Software unter Beweis stellen.


Zeitraum:     1997-1999
Projekt:      Systemadministration von Linux-Rechnern
Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        Systemverwalter
Tätigkeiten:  Administration
Umgebung:     Linux-Distribution Debian
Beschreibung: auf Anfrage


Zeitraum:     1997/1998
Projekt:      Entwicklung eines BV-Algorithmus' zur Lageerkennung von Zahnrädern

  auf einem SMP-Linux-Rechner (im Rahmen des BFS-geförderten Projekts FORMICROSYS)

Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Angestellter
Tätigkeiten:  Forschung und Entwicklung, Programmierung, Test, Dokumentation
Umgebung:     Linux SMP, C/C++, gcc, gdb, RCS, shared memory, make,

  Qt-Bibliothek, Matlab, HALCON (für Rapid Prototyping), Matrox Framegrabber, RS-232

Beschreibung: Das Fügen von Zahnrädern in Uhrwerksgehäuse erfordert

  Positioniergenauigkeiten, die nach dem Stand der Technik Mitte

  der 1990er Jahre maschinell nicht erreichbar sind. In einem Teilprojekt

  von FORMICROSYS wurde eine Mikropositioniereinrichtung (MPE) entworfen,

  die an einen Standard-Industrieroboter geflanscht wird und mit Hilfe

  von Piezostäben in zwei Freiheitsgraden bewegt werden kann, um z.B. durch

  die Bewegung des Roboterarms entstehende Vibrationen kompensieren zu

  können. Für die Fügeapplikation wurde nebst Greifer eine CCD-Kamera

  sowie ein Ringlicht in die MPE integriert. Der von mir entwickelte

  Algorithmus bestimmte die genaue Position des teilweise durch den

  Greifer verdeckten Zahnrads im Greifer (spez. Algorithmus mit

  Ellipsenausgleichrechnung) sowie die Lage des Uhrwerks (mittels

  subpixelgenauen Template-Matching). Der Algorithmus wurde dabei parallel

  ausgelegt, um die Prozessoren des Linux-PCs optimal nutzen zu können.

  Die IPC erfolgte über Shared Memory. Referenzpositionen (Modell des

  Zahnrads und des Gehäuses) wurden mittels Qt-Bibliothek im Kamerabild

  augmentiert.



Zeitraum:     02.1997-05.1997
Projekt:      Erstellung eines interaktiven Tools zur intrinsischen Kalibierung

  von CCD-Kameras

Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Hilfskraft
Umgebung:     Linux, Framegrabber Matrox Millenium, C/C++, GNU Tools, xforms, freie

  BV-Bibliothek "Vista"

Tätigkeiten:  Konzeption, Programmierung, Test
Beschreibung: auf Anfrage


Zeitraum:     1996-1997
Projekt:      Diplomarbeit: "Objekterkennung anhand von 3D-Strukturen zur Lokalisation

  eines autonomen mobilen Roboters"

Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Umgebung:     Unix, Alpha DEC, Linux, C++, gcc, gdb, shared memory, xforms, make, RCS, LaTeX
Beschreibung: auf Anfrage


Aus- und Weiterbildung

Aus- und Weiterbildung

1989 Abitur (Durchschnittsnote 1.9)
1997 Diplom der Elektro- und Informationstechnik, TU München (Abschlussnote 1.9, Diplomarbeit 1.0)

Kompetenzen

Kompetenzen

Produkte / Standards / Erfahrungen / Methoden

Erfahrungen im Bereich:
o Anwendungs- und Systemprogrammierung
o Spezifikation, Design, Programmierung, Testverfahren

Methoden:
o OOA/OOD: Design Patterns
o UML (Grundzüge)
o MultiThread-Programmierung


Produkte:
o GNU: u.a. gcc, emacs, vi, CVS, RCS, make, autotools
o OSS: Kdevelop
o Windows: VC++, Visual Studio, minGW
o CORBA: Orbacus, omniORB
o GUI: Trolltech Qt3/4
o UML: Poseidon
o Bildverarbeitung/Robotik: HALCON, CCD-Kameras, verschiedene Framegrabber, Laserscanner,
  AMTEC, mobile Plattform "Labmate"
o RDBS: MySql, MSSQL Server 2000,2005
o Matlab, Simulink, Stateflow, dSpace TargetLink, Gnuplot
o Web: Apache, HTML/XML, CGI/Perl, PHP, MySql
o Navteq GDF 3.0

Betriebssysteme

Echtzeitbetriebssysteme
RT-Linux, RTAI, RTEMS (nur Grundkenntnisse)
MS-DOS
OS/2
Unix
(v.a. im Bereich Linux)
Windows

Programmiersprachen

Assembler
v.a. auf 8 und 16 Bit-Systemen
Basic
C
C++
sehr gute Kenntnisse (auch STL, Template-Programmierung, Objekt-orientierte Design Patterns)
Chill
Grundkenntnisse
CORBA IDL
Imake, GNU-Make, Make-Maker etc...
Java
Java (J2SE 5.0)
JavaScript
JavaScript: DOM,AJAX,JSON
MATLAB / Simulink
Expertenkenntnisse Simulink API, m-Programmierung
Modula-2
Pascal
Perl
erw. Grundkenntnisse
PHP
Gute Kenntnisse, auch PHP5
Qt
incl. qwt-Bibliothek
Shell
v.a. bash
TeX, LaTeX
yacc/lex
bison/flex

Datenbanken

MS SQL Server
2000,2005
MySQL
SQL

Datenkommunikation

CORBA
Expertenwissen
Internet, Intranet
RPC
RS232
TCP/IP

Hardware

Framegrabber
Motorola
MC 68xxx
PC
Sensoren
(Laser, CCD-Kameras)

Berechnung / Simulation / Versuch / Validierung

dSPACE
Software-in-the-Loop Simulation (SIL)
Stateflow

Design / Entwicklung / Konstruktion

.

Branchen

Branchen

Forschung/Lehre
Internet
Robotik/Bildverarbeitung
Automotive
GeoInformationssysteme
Telecom

Einsatzorte

Einsatzorte

Österreich, Schweiz, Deutschland

Deutschland: bevorzugt: D8 (wg. Wohnortnähe)

D0, D1, D2, D3, D4, D5, D6, D7 und D9 für Einsätze bis ca. 12 Wochen

nicht möglich

Projekte

Projekte

Zeitraum:     10.2007-06.2009
Projekt:      Entwicklung von GeoObjekten für ein Mautprojekt
Branche:      Automotive, Telco, Telematik
Rolle:        Entwicklung
Tätigkeiten:  Konzeption, Softwareentwicklung, Test
Umgebung:     MATLAB, Navteq GDF 3.0, MSSQL Server 2000, MSSQL Server 2005, RCS
Beschreibung: - Datenbank- und SQL-Abfrage-Modellierung in einer eigensentwickelten

 Metabeschreibung, Entwicklung eines SQL-Generators

      - Optimierung Datenbankaufbau und SQL-Abfragen

  - Automatisierung des zuvor weitgehend manuell erfolgten Workflow zur

 Erstellung von GeoObjekten

  - Testentwurf und -implementierung

  - Durchführung verschiedener Demoszenarien

  


Zeitraum:     07.2006-09.2007
Projekt:      Toolkette zur modellbasierten Softwareentwicklung im Unternehmen
Branche:      Automotive (BMW)
Rolle:        Entwicklung und Test
Tätigkeiten:  - Evaluierung von Richtlinien in Simulink/Stateflow-Modellen

  - Implementierungen für den (Simulink-)Richtlinienchecker

  - Betrieb, Weiterentwicklung und Betreuung eines Tools zur

 Variantenverwaltung von Simulink-Modellen

  - Erfassung von Matlab/Toolbox Bedarf im Unternehmen, Ausarbeitung

 einer Lizenzoptimierungsstrategie

  - Erfassung von Anforderungen für einen Matlab-Releasewechsel

  - Durchführung von Regressionstests (MIL) bei großen Simulink-Modellen

  - Design, Implementierung und Test eines webbasierten Fehlermeldenwesen im

 Rahmen der Validierungssuite

  - Verwaltung von Windowsservern in der Abteilung

Umgebung:     Matlab, Simulink, Stateflow, Targetlink, Windriver Diab Compiler, Exact,

  PHP, MySql 5.0, Apache, Eclipse, Windows, Subversion, XML, Mantis, Flex LM,

  Perl, Eigenimplementierungen



Zeitraum:     05.2006-06.2006
Projekt:      Mitarbeit bei prototypischer Implementierung einer Matlab Toolbox
Branche:      Mathworks (über ein Ingenieur-Büro)
Rolle:        Entwicklung
Umgebung:     Matlab, Simulink
Beschreibung: Propagierung von Signalskalierungen in Simulink-Modellen


Zeitraum:     01.2006-05.2006
Projekt:      Import von Navteq GFD 3.0 Daten in eine SQL-Datenbank
Branche:      Telematik (AGES)
Rolle:        Entwicklung
Tätigkeiten:  Portierung C# -> Matlab, Performance-Optimierung SQL-Zugriffe,

  Datenbankumstrukturierung und -erweiterung, Implementierung und Test

Umgebung:     MATLAB, C#, MSSQL Server 2000, RCS
Beschreibung: Für die satellitengestützte Mauterhebung werden von Navteq bereitgestellte

  Geodaten in sog. Geo-Objekte transformiert. Diese dienen zur schnellen

  Identifikation von z.B. Autobahnabschnitten oder Mautzonen in Innenstädten.


Zeitraum:     2005
Projekt:      privates NDA-Projekt
Umgebung:     C++, Perl, PHP, Linux, Windows, CORBA, Qt, MySql


Zeitraum:     1999-2005
Projekt:      OSCAR (Operating System for the Control of Autonomous Robots)
Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Angestellter, wiss. Assistent, Projektleitung  bei Mitarbeit

  zahlreicher Studenten, Entwurf, Implementierung und Test, Support,

  technische Betreuung des mobilen Roboters und

  Systemverwaltung dessen Linux-Rechnernetzes

Tätigkeiten:  Forschung und Entwicklung, Programmierung, Test, Dokumentation
Umgebung:     C++, GNU-Tools (gcc, gdb, cvs, make, autotools, flex, bison),

  Qt-Bibliothek, qwt, STL, XML, doxygen, bash/shell Scripting, HTML, CORBA

  (Orbacus, OmniOrb), CORBA IDL, OpenGL, CCD-Kameras, Laserscanner, CAN-Bus,

  IEEE1394 (FireWire), RS232

Beschreibung: Design und Implementierung der komponentenbasierten Systemarchitektur OSCAR

  als OpenSource Projekt im Rahmen der Dissertation:


  OSCAR stellt eine verteilte Laufzeitumgebung bereit, die typische

  Komponenten, wie sie auf robotischen Systemen auftreten

  (Sensordatenverarbeitung, Interpretation, Modelle, Steuerungskomponenten,

  ...), miteinander verknüpft. Das entworfene Komponentenmodell besitzt eine

  einfach zu nutzende API, die die CORBA-basierte Kommunikation kapselt;

  der Komponentenprogrammierer benötigt somit keine CORBA-Kenntnisse.

  Kernstück der Architektur ist eine verhaltensbasierte Ablaufsteuerung, die

  die Aktivität der als OSCAR-Komponenten implementierten Verhaltensmodule

  entsprechend der aktuellen Situation unter Berücksichtigung der

  vorhandenen Ressourcen steuert.

  Das Framework OSCAR besitzt eine Vielzahl von graphischen offline- und

  online-Tools, mit denen z.B. Komponenten verwaltet oder der Ablauf von

  Applikationen überwacht werden kann. Die Komponenten selbst sind

  hauptsächlich für einen mobilen Roboter entstanden (Z.T. wurde auch

  Legacy-Code integriert.), für den auch eine Simulationsumgebung

  realisiert wurde. OSCAR wurde im Rahmen des DFG-geförderten Projekts EvI

  (Exploration von Innenräumen mit optischen Sensoren) realisiert und auch

  im EU-Projekt ActiPret eingesetzt.



Zeitraum:     1998-2003
Projekt:      Neuaufbau und Leitung des Praktikums "Roboter Sehen"
Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Angestellter, wiss. Assistent
Umgebung:     Linux, gcc, make, RCS, HALCON, Matrox/Bt848-Framegrabber,

  Kamerakalibrierung, mobiler Roboter "Lpi" (Eigenkonstruktion).

Beschreibung: Das Praktikum "Roboter Sehen" basiert auf dem Projektkurs-Konzept des

  u.g. "Praktikum Software-Engineering". Der Unterrichtsteil umfasst die

  Einführung in grundlegende Konzepte der (industriellen) Bildverarbeitung.

  In individuell durchzuführenden Vorstudien lernen Studenten der Elektro-

  und Informationstechnik ab dem 6. Semester die Entwicklungsumgebung (Linux,

  GNU-Tools) und das CAVE-Tool HALCON kennen. Im Projektteil, für den zwei

  Teams gebildet werden, entsteht eine Steuerungssoftware für einen mobilen

  Kleinroboter. Die Aufgabenstellung lautet hier "Find Life on Mars!". In

  einem der Marsoberfläche nachempfundenen Hindernisparcours müssen Objekte

  mit dem (zusätzlich mit Manipulator ausgestatteten) Roboter aufgesammelt

  und anhand eines Musters identifiziert werden. Das Szenario wird dabei mit

  Hilfe einer an der Decke befestigten Farb-CCD-Kamera beobachtet. Die zu

  erstellende Software muss entsprechend verschiedene Bildverarbeitungsmodule

  sowie eine Auflaufsteuerung beinhalten.

  Beide Teams treten zum Abschluß des Kurs im "Roboter-Rennen" gegeneinander

  an.


  Das Praktikum wurde 1999 nach erstmaliger Durchführung mit dem

  studentischen Preis der Lehre, dem  "Trafo" ausgezeichnet.



Zeitraum:     1997-2002
Projekt:      Leitung und Überarbeitung Praktikum "Software Engineering"
Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Angestellter
Umgebung:     Linux, gcc, make, RCS/CVS, FreeBSD sockets (und CORBA), X11/Qt-Bibliothek,

  mobiler Roboter "Lpi" (Eigenkonstruktion).

Beschreibung: Im Projektkurs "Software Engineering" kommen Studenten der Elektro- und

  Informationstechnik ab dem 7. Semester mit Aspekten des Software

  Engineering und der Durchführung von Projekten in Teamarbeit in Berührung.

  Der Kurs besteht aus einem Unterrichtsteil (V-Modell, Teammanagement,

  Entwicklungsumgebung, ...) sowie einem praktischen Teil, für den die

  Studenten in zwei konkurrierende Teams eingeteilt werden. Aufgabe ist es

  hier, für einen kleinen mobilen Roboter mit taktiler Sensorik ein

  Software-Paket zu erstellen und dabei alle Phasen eines Software Projekts

  auf Basis des V-Modells inkl. Dokumentation "durchzuspielen":

  Die auf verschiedene Prozesse aufzuteilende Software muss dabei den Roboter

  autonom durch ein unbekanntes Labyrinth steuern und den Wegeplanungs-

  algorithmus visualisieren. In einer abschließenden, öffentlichen

  Veranstaltung treten beide Teams gegeneinander an und müssen die

  Funktionalität ihrer Software unter Beweis stellen.


Zeitraum:     1997-1999
Projekt:      Systemadministration von Linux-Rechnern
Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        Systemverwalter
Tätigkeiten:  Administration
Umgebung:     Linux-Distribution Debian
Beschreibung: auf Anfrage


Zeitraum:     1997/1998
Projekt:      Entwicklung eines BV-Algorithmus' zur Lageerkennung von Zahnrädern

  auf einem SMP-Linux-Rechner (im Rahmen des BFS-geförderten Projekts FORMICROSYS)

Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Angestellter
Tätigkeiten:  Forschung und Entwicklung, Programmierung, Test, Dokumentation
Umgebung:     Linux SMP, C/C++, gcc, gdb, RCS, shared memory, make,

  Qt-Bibliothek, Matlab, HALCON (für Rapid Prototyping), Matrox Framegrabber, RS-232

Beschreibung: Das Fügen von Zahnrädern in Uhrwerksgehäuse erfordert

  Positioniergenauigkeiten, die nach dem Stand der Technik Mitte

  der 1990er Jahre maschinell nicht erreichbar sind. In einem Teilprojekt

  von FORMICROSYS wurde eine Mikropositioniereinrichtung (MPE) entworfen,

  die an einen Standard-Industrieroboter geflanscht wird und mit Hilfe

  von Piezostäben in zwei Freiheitsgraden bewegt werden kann, um z.B. durch

  die Bewegung des Roboterarms entstehende Vibrationen kompensieren zu

  können. Für die Fügeapplikation wurde nebst Greifer eine CCD-Kamera

  sowie ein Ringlicht in die MPE integriert. Der von mir entwickelte

  Algorithmus bestimmte die genaue Position des teilweise durch den

  Greifer verdeckten Zahnrads im Greifer (spez. Algorithmus mit

  Ellipsenausgleichrechnung) sowie die Lage des Uhrwerks (mittels

  subpixelgenauen Template-Matching). Der Algorithmus wurde dabei parallel

  ausgelegt, um die Prozessoren des Linux-PCs optimal nutzen zu können.

  Die IPC erfolgte über Shared Memory. Referenzpositionen (Modell des

  Zahnrads und des Gehäuses) wurden mittels Qt-Bibliothek im Kamerabild

  augmentiert.



Zeitraum:     02.1997-05.1997
Projekt:      Erstellung eines interaktiven Tools zur intrinsischen Kalibierung

  von CCD-Kameras

Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Rolle:        wiss. Hilfskraft
Umgebung:     Linux, Framegrabber Matrox Millenium, C/C++, GNU Tools, xforms, freie

  BV-Bibliothek "Vista"

Tätigkeiten:  Konzeption, Programmierung, Test
Beschreibung: auf Anfrage


Zeitraum:     1996-1997
Projekt:      Diplomarbeit: "Objekterkennung anhand von 3D-Strukturen zur Lokalisation

  eines autonomen mobilen Roboters"

Branche:      Lehrstuhl für Realzeit-Computersysteme (RCS), TU München
Umgebung:     Unix, Alpha DEC, Linux, C++, gcc, gdb, shared memory, xforms, make, RCS, LaTeX
Beschreibung: auf Anfrage


Aus- und Weiterbildung

Aus- und Weiterbildung

1989 Abitur (Durchschnittsnote 1.9)
1997 Diplom der Elektro- und Informationstechnik, TU München (Abschlussnote 1.9, Diplomarbeit 1.0)

Kompetenzen

Kompetenzen

Produkte / Standards / Erfahrungen / Methoden

Erfahrungen im Bereich:
o Anwendungs- und Systemprogrammierung
o Spezifikation, Design, Programmierung, Testverfahren

Methoden:
o OOA/OOD: Design Patterns
o UML (Grundzüge)
o MultiThread-Programmierung


Produkte:
o GNU: u.a. gcc, emacs, vi, CVS, RCS, make, autotools
o OSS: Kdevelop
o Windows: VC++, Visual Studio, minGW
o CORBA: Orbacus, omniORB
o GUI: Trolltech Qt3/4
o UML: Poseidon
o Bildverarbeitung/Robotik: HALCON, CCD-Kameras, verschiedene Framegrabber, Laserscanner,
  AMTEC, mobile Plattform "Labmate"
o RDBS: MySql, MSSQL Server 2000,2005
o Matlab, Simulink, Stateflow, dSpace TargetLink, Gnuplot
o Web: Apache, HTML/XML, CGI/Perl, PHP, MySql
o Navteq GDF 3.0

Betriebssysteme

Echtzeitbetriebssysteme
RT-Linux, RTAI, RTEMS (nur Grundkenntnisse)
MS-DOS
OS/2
Unix
(v.a. im Bereich Linux)
Windows

Programmiersprachen

Assembler
v.a. auf 8 und 16 Bit-Systemen
Basic
C
C++
sehr gute Kenntnisse (auch STL, Template-Programmierung, Objekt-orientierte Design Patterns)
Chill
Grundkenntnisse
CORBA IDL
Imake, GNU-Make, Make-Maker etc...
Java
Java (J2SE 5.0)
JavaScript
JavaScript: DOM,AJAX,JSON
MATLAB / Simulink
Expertenkenntnisse Simulink API, m-Programmierung
Modula-2
Pascal
Perl
erw. Grundkenntnisse
PHP
Gute Kenntnisse, auch PHP5
Qt
incl. qwt-Bibliothek
Shell
v.a. bash
TeX, LaTeX
yacc/lex
bison/flex

Datenbanken

MS SQL Server
2000,2005
MySQL
SQL

Datenkommunikation

CORBA
Expertenwissen
Internet, Intranet
RPC
RS232
TCP/IP

Hardware

Framegrabber
Motorola
MC 68xxx
PC
Sensoren
(Laser, CCD-Kameras)

Berechnung / Simulation / Versuch / Validierung

dSPACE
Software-in-the-Loop Simulation (SIL)
Stateflow

Design / Entwicklung / Konstruktion

.

Branchen

Branchen

Forschung/Lehre
Internet
Robotik/Bildverarbeitung
Automotive
GeoInformationssysteme
Telecom

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.