Python Entwickler seit 2002
Aktualisiert am 10.11.2022
Profil
Referenzen (1)
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.07.2023
Verfügbar zu: 100%
davon vor Ort: 100%
Python
OOP
Scriptsprachen
cPython
Bourne-again-shell
Deutsch
sehr gut
Englisch
sehr gut
Esperanto
sehr gut
Serbokroatisch
Muttersprache
Spanisch
Grundkenntnisse

Einsatzorte

Einsatzorte

München (+100km) Mindelheim (+100km)

Deutschland: lang und mittelfristige Projekte nur München, kurze Reisen flexibel

möglich

Projekte

Projekte

1 Jahr 1 Monat
2021-03 - 2022-03

Diverse Python-Projekte

Python Entwickler Python Linux PyGTK ...
Python Entwickler

Bereich: Train-IT ? Kommunikationssysteme im Zug, CCTV, Kamera-Überwachungssysteme, Videoaufnahme-, Auswahl- und Darstellung auf dem Bildschirm. Tools: Python, Linux, PyGTK, PyCharm, CherryPy, Git, VS Code.

Entwicklung CCTV:

·    GUI Entwicklung in PyGTK. Es handelt sich um eine Neuentwicklung (Greenfield ? Projekt), aber unter Einsatz des bestehenden Frameworks.

·    Die gesamte Architektur ist Event-driven; Das Frontend wird in Kommunikation mit dem Backend Aufgebaut und angesteuert. Der ganze Zustand des Frontends wird im Backend aufbewahrt.

·    Der Zentrale Teil der GUI ist Auswahl und Anzeige von Kamera-Streams, in verschiedenen Modi (händisch, Auto-Scroll). Zusätzlich wird zwischen Main-Screen und Alarm Screen unterschieden (bei Vorfällen im Zug wird automatisch der Alarm Screen aktiviert und der relevante Video-Stream angezeigt)

·    Bei der Entwicklung und zur Qualitätssicherung wurden Unit-Tests eingesetzt

Entwicklung Auswertestation:

·    Es handelt sich Weiterentwicklung einer Bestehenden SW (Brownfield ? Projekt) zun Auswerten, Abspielen und Export der im Zug auf SSDs aufgenommenen Videos. Meine Verantwortung war die Entwicklung des in Python / CherryPy geschriebenen REST-Backends.

·    Im Rahmen des Projektes wurde die bestehende Architektur erweitert und mehrere aufwendige Features hinzugefügt.

·    Eine Reihe von Bugs wurden aufgespürt und/oder behoben.

·    Bestehende Unit-Tests wurden wieder in einen definierten Zustand gebracht.

PyCharm VS Code
Python Linux PyGTK CherryPy Git
Siemens TrainIT
Erlangen/Remote
4 Monate
2020-12 - 2021-03

BDiM

Full stack developer JavaScript, NodeJS, Python JavaScript (JS) Python NumPy/SciPy ...
Full stack developer JavaScript, NodeJS, Python

Bereich: Einsatz von Big Data Technologien / Machine-Learning zur Überprüfung der Qualität von Teilen die mit CNC-Maschinen erstellt wurden. Tools: JavaScript (JS), Python, NumPy/SciPy, MongoDB, Docker, Linux, Grafana, Visual Studio (VS) Code, HTML/CSS.

Im wesentlichen war ich an der Entwicklung einer Web-Basierten Applikation beteiligt:

·    Frontend in JavaScript, HTML und CSS; Backend in NodeJS mit signifikanten Anteilen in Python / NumPy zur Berechnung der Abweichung des gemessenen Teils vom Master.

·    Programmiertechnisch waren die Aufgaben Entwicklung von mehreren Masken (Frontend) mit Anbindung an das Backend in NodeJS, Entwicklung von Python-Code-Anteilen

·    Zudem habe ich Konfigurationen in Grafana vorgenommen und größere Teile des Backends mit Unit-Tests in JavaScript abgesichert.

Grafana Visual Studio (VS) Code Docker
JavaScript (JS) Python NumPy/SciPy MongoDB Linux HTML/CSS
ITQ GmbH
Remote/München
1 Jahr 2 Monate
2019-08 - 2020-09

Aufbau Toolkette TFS / Roboter-Entwicklung, Embedded Systeme

DevOps Vivado VectorCAST TFS / Azure Devops Server ...
DevOps

Entwicklung Builds/ Pipelines CI in Azure DevOps Server:

  • integration des jeweiligen tools (VectorCAST/Vivado)
  • Anpassen an neue HW- und Compiler-Versionen
  • Python-Skripte zur Umwandlung der Testergebnisse
  • Überprüfen des Erfolgs der Testschritte in Python und Windons Batch-Skripte

Aufbau einer Test-Umgebung unter Linux, inclusive:

  • Installation/ Konfiguration TFS-client unter Linux
  • Installation Virtual Environment, Python-Libraries, Skripte
  • Installation Spyder

Diverse Test-Skripte

  • Transfromation proprietäres XML-Format in ESI-XML-Format (Python, lxml)
  • Auswahl Test-Framework (pytest)
Vivado VectorCAST TFS / Azure Devops Server Python Linux
Vivado VectorCAST TFS / Azure Devops Server Python
ABB
Gilching bei München, remote
1 Jahr 4 Monate
2018-01 - 2019-04

Test von Portalen und Webseiten

Python PyCharm Testa ...

Test von Portalen und Webseiten mit Python/ Selenium-Testframework Testa

  • Bereich: Testen, zum Teil Entwicklung von Webseiten und verwandten Technologien
  • Test-Entwicklung:
    • Der größte Teil des Projekts ist Testentwicklung für diverse Web-Portale. Die Testfälle werden in den Test-Framework Testa erstellt, das auf Python und Selenium basiert. Unmittelbar notwendig für die Testentwicklung sind Kenntnisse in Python, HTML, CSS, XPath und Git. Fertig entwickelte Tests werden anschließend für die Continuous Integration in Jenkins eingespielt und dessen Reports den Kunden zur Verfügung gestellt. Zuletzt läuft Jenkins mit Testa und allen Testfällen in einem Docker-Container der die Infrastruktur des Endkunden verwendet.
  • Weiterentwicklung des Test-Frameworks Testa:
    • Ich war punktuell beteiligt an der Weiterentwicklung von Testa, u.a. bei der Konzeptentwicklung für Test-Flows (die mehrere aufeinander aufbauende Tests beinhalten), und an der Confluence-Anbindung zur Darstellung von Test-Reports im Kundenportal.
  • Entwicklung Installer:
    • Auftrag: Entwicklung eines Testa-Installers für mehrere Plattformen (Windows, Linux, evtl. MacOS). Als Grundlage für die Umsetzung habe ich Conda Constructor gewählt, ein Tool von Anaconda, Inc. (zuvor als Continuum Analytics bekannt), die die größte unabhängige Multiplatform Python-Distribution Anakonda zur Verfügung stellen. Der Installer installiert git und notwendige Python-Pakete via pip und checkt die Repository aus.
  • Docker-Container-Entwicklung:
    • Auftrag: erstellen eines Docker-Containers in dem eine aktuelle Version von Testa für den Testbetrieb zur Verfügung gestellt wird. Das Docker-File sieht erneut die Installation von Python und notwendigen Libraries vor, Installation von git, auschecken der Testa-Repository und Nachinstallation von Libraries via pip, dann einen minimalen Test, um festzustellen, dass der Container Test-bereit ist.
  • Anbindung an Confluence:
    • Die aussagekräftigen Reports sollten im Portal das Endkunden nachgebaut werden. Dazu habe ich unter den ca. 10 bestehenden Confluence Python Libraries die eine gewählt die funktioniert, um dir Reports dort einzuspielen. Die Reports musste ich in der Markup-Sprache von Confluence nachbauen, da keine direkte Verwendung von HTML und sehr eingeschränkter Einsatz von CSS möglich ist. Das Ergebnis wurde allgemein als sehr gelungen eingestuft.
  • Anbindung an Jira und Zephyr:
    • Für den Transfer von Testfällen aus dem alten Jira Portal ins neue wurden Testfälle manuell exportiert. Für den Import ins neue Jira Portal habe ich die Jira Python Library verwendet, wie auch die REST-basierte Zephyr Python Library
Python PyCharm Testa Selenium XPath HTML CSS Git Jenkins Docker Conda Constructor Yaml Atlassian Tools ? Confluence Jira Zephyr
1 Jahr
2017-01 - 2017-12

Python Test-Framework-, und Test-Entwicklung, für Roboter, in Python, anknüpfend an das Projekt von 2016

Python PyCharm NumPy ...
  • Test-Framework- und Test-Entwicklung:
    • Entwicklung von Gripper-Endurance-Tests und weiteren Gripper-Tests mit spezifischer Anwendung. Tools: Python, NumPy, SciPy, CANOpen, CAN
    • Speicher- und Darstellungsfunktionalitäten für Messdaten: Entwicklung von spezifischen Datenstrukturen, Diagrammen und Darstellungen. Tools: NumPy, SciPy, Matlab, Excel als Speicher für Konfigurationsdaten
    • Speicher- und Darstellungsfunktionalitäten für Auswertungsdaten: Entwicklung von pandas. DataFrame basierten Datenstrukturen; Wiederverwendung von Diagrammen und Darstellungen. Tools: NumPy, SciPy, Pandas, Matlab.
Python PyCharm NumPy SciPy Matlab Matplotlib Pandas CAN & CANOpen MobaXterm Mercurial mit TortoiseHg Windows & Linux Yaml regular expressions
Robotik
8 Monate
2016-05 - 2016-12

Python Test-Software-Entwicklung zum Test von Robotern

Python Bash-Skripte auf Linux PyCharm ...
  • Jegliche SW-Entwicklung in der Testabteilung (Testcenter) einer Firma, unter anderem:
    • Überarbeitung (refactoring) und Weiterentwicklung der Steuerungs-Software mehrerer Anlagen zum Testen von mechanischen Eigenschaften von Roboter-Gelenken; Schwerpunkt der Entwicklung war in Python
    • Überarbeitung (refactoring) und Weiterentwicklung einer Software (in Python) zur Transformation von Zeitreihen gemessener Signale in  Matlab-Strukturen (*.mat-Files). Die so generierten Daten sind für die Auswertung durch bestehende  Matlab-Skripte vorbereitet
    • Erweiterung der Backup-Infrastruktur. Im Testcenter Fallen täglich mehrere Dutzend bis mehrere Hundert Gigabyte an Rohdaten (Messreihen) an. Für das zuverlässige Speichern und schnellen Zugriff auf die Daten habe ich das bestehende Konzept erweitert, durch Überprüfungen ergänzt und in Bash-Skripten und Python umgesetzt
Python Bash-Skripte auf Linux PyCharm NumPy SciPy Matlab MobaXterm Mercurial mit TortoiseHg Windows & Linux
Robotik
4 Monate
2016-01 - 2016-04

Entwicklung eines Frameworks zum Postprocessing von Berechnungsergebnissen

Python unter Linux PyCharm Unittests ...
  • Transformationen von bestehenden Steuerungs-Files
  • Aufbau von Verzeichnisstrukturen
  • Übersetzung bestehender Perl-Skripte nach Python
  • Weiterentwicklung von Skripten die kinematische Ketten im Fahrzeug beschreiben
Python unter Linux PyCharm Unittests YAML
Automotive
11 Monate
2015-02 - 2015-12

Umfeld Test Getriebe-Steuergeräte

ECU-Test QualityCenter/QC/ALM DOORS ...
  • Testen von Automatikgetriebe-Steuergeräten am HiL
  • Spezifikation und Automatisierung von Tests aufgrund von Anforderungen des Endkunden (QC/ECU-Test)
  • Entwicklung von Utilities (in Python) zur Auswertung der Testabdeckung
ECU-Test QualityCenter/QC/ALM DOORS Python Ediabas Control-Desk OMR Subversion/SVN
BMW
4 Monate
2015-07 - 2015-10

Entwicklung einer Web-Applikation für Verwaltung medizinischer Messdaten

Python Pyramid/ Kotti Postrgres ...
  • Entwicklung einer Web-Applikation für Verwaltung medizinischer Messdaten in Python
Python Pyramid/ Kotti Postrgres REST
6 Monate
2014-09 - 2015-02

Entwicklung einer Web-Applikation für kollaborative Dokumentenerstellung

Python Mongo-DB
  • Entwicklung einer Web-Applikation für kollaborative Dokumentenerstellung
  • Mein Anteil war der Word-Export der erstellten Dokumente unter Einsatz der XML-Sprache für Word-Dokumente (ooxml für Word oder Word-XML). Neben der Library python-docx wird direkter Zugriff auf den XML-Source-Code des Word-Dokumentes via lxml verwendet, um diverse Features, die von python-docx nicht zur Verfügung gestellt werden, zu implementieren.
Python Mongo-DB
6 Monate
2014-05 - 2014-10

Entwicklung einer Web-Applikation für Patientenverwaltung

Python Django SQLite ...
  • Entwicklung einer Patientenverwaltung für die Studienzentrale des Schwindelzentrums am Klinikum Großhadern
Python Django SQLite HTML
Klinikum Großhadern
8 Monate
2014-02 - 2014-09

Umfeld Test Hybrid Elektromotor?Steuergeräte

  • Übernahme, Entwicklung, Ausführung von Testfällen, in QualityCenter und ECU-Test
BMW
11 Monate
2013-02 - 2013-12

Umfeld Test Getriebe-Steuergeräte

  • Entwicklung Testskripten (QualityCenter, ECU-Test) und div. Utilities (Python) zur Auswertung der Testabdeckung
  • Test der Steuergeräte
BMW
8 Monate
2012-04 - 2012-11

Umfeld Restbussimulation

  • Thema Automotive Ethernet + TCP/IP: Untersuchung Vector CANoe, Scapy
  • Entwicklung Tests für xRbs. Die bestehende Software-API musste mit Tests abgesichert werden. Die Entwicklung der Tests war in Python, unter Einsatz der XML-Bibliothek Element Tree und json.
  • Auswahl dezentrales Konfigurationsmanagement-System (Hg, Bazaar, Git)
  • Testautomatisierung für LinRbs. Die bestehende Software wurde um ein Testautomatisierungsframework erweitert. Mein Anteil war Konzeption des Frameworks und Implementierung der Lin-Bus-Zugriffe in Python. (Python, Qt, PySide, LIN-Bus)
  • LIN-Bus Panels: Entwicklung eines GUI-s zur Anzeige von Lin-Bus-Signalen. (PySide, Python, Vector CANoe COM Interface)
BMW, Reliatec
8 Monate
2011-08 - 2012-03

Test Motorsteuergeräte am HiL

EXAM Python
  • Test Motorsteuergeräte
  • Anpassen bestehender Tests auf neue Steuergeräte
  • Auswertung
  • Entwicklung von Auswertungen in Excel (VBA)
  • Automatische Umstellung von in Excell abgelegten Tests (ca. 60 Sheets pro Arbeitsmappe) auf ein neues Steuergerät (in Python)
EXAM Python
Audi
6 Monate
2011-02 - 2011-07

Entwicklung der Webseite und des Marketings

WinOffice Pro 5
WinOffice Pro 5
5 Monate
2010-09 - 2011-01

Projekt car2go

Testverantwortlicher im Backend-Projekt Python Java/ JUnit Selenium ...
Testverantwortlicher im Backend-Projekt
  • Es handelt sich um ein komplexes System zum spontanen Mieten von über ganz Ulm verteilten Fahrzeugen (Smart)
  • Ich war in dem Teil des Teams, das die Web-Basierte Applikation gebaut hat, bestehend aus mehreren Servern und mehreren Datenbanken
  • Umfang der Aufgabe: aufspüren der nicht getesteten Teile; z.T. erstellen, z.T. überprüfen der implementierten Tests
Python Java/ JUnit Selenium HP Quality Center SVN
TSS GmbH (100%-Tochter der Daimler AG)
Ulm

Aus- und Weiterbildung

Aus- und Weiterbildung

1994
Diplomingenieur Automatik und Elektronik
ETF Fakultät für Elektrotechnik, Uni Belgrad (Vergleichbar mit Steuerungs- und Regelungstechnik TU)

Position

Position

Erfahrung im Technischem Support

Kompetenzen

Kompetenzen

Top-Skills

Python OOP Scriptsprachen cPython Bourne-again-shell

Schwerpunkte

  • Ich habe mich 2002 für Python als mein Hauptwerkzeug entschieden, und vertiefe diese Spezialisierung seit Jahren zunehmend.
  • Davor und zwischendurch habe ich aber auch in folgenden Bereichen gearbeitet:
    • Klassische und Modellbasierte Software-Entwicklung in Python, C, C++, Java, C#, Embedded / Echtzeit-SW
    • Jegliche Art von Testentwicklung und Testautomatisierung
    • Installer Erstellung bis dato in WiX, NSI, AutoIt 3. Build-Prozess-Management in Python und Batch-Skripten
    • Automotive-Applikationen im Bereich Bus-Systeme, HiL, Diagnose: Anwendung, Neu- und Weiterentwicklung, Entwicklung von Schnittstellen zwischen Applikationen (Integration)
  • Die verschiedenen Erfahrungen möchte ich nicht missen, aber die Spezialisierung auf Python steht fest

Produkte / Standards / Erfahrungen / Methoden

Technisches Know-How
  • Aufgaben in Python
    • Entwicklung von Testframeworks, Testtools und Tests
    • Parsen, auswerten, bearbeiten von Daten verschiedenen Formaten
    • Erstellen von Code-Generatoren und Installer-Programmen
    • Ansteuern und auslesen von Hardware
    • Erstellen von (statischen und dynamischen) Webseiten
    • Speichern, Auswertung und Darstellung von Messergebnissen
    • Erstellen komplexer Word-Dokumente. XML-Manipulation. Qualitätssicherung durch Unit-Tests
  • Mit Python verwendete Tools
    • Python 1.5, 2.1-2.7, 3.x Echtzeit-Python
    • Wing IDE, Scite, PyCharm, PyDev
    • NumPy, SciPy, Matplotlib, Pandas Yaml, lxml, XML, json, configparser
    • Regular expressions, logging, unit tests (verschiedene libraries), argparser
    • Windows & Linux, Bash-Skripte, MobaXterm
    • Word, Excel (und enstsprechende Bibliotheken)
    • Mongo-DB, python-docx
    • Pyramid, Kotti, Postrgres, REST
    • Django, SQLite, HTML
    • PySide, PyQt
    • Matlab
  • Andere Programmiersprachen und Entwicklungsumgebungen
    • AutoIt 3
    • C, C++, C#, Java

    • Matlab/Simulink

    • Visual Basic 6.0

    • Visual Studio 6.0/ 2005/ 2010/ .Net 2.0

    • Eclipse

  • Model-basierte Tools (Case-Tools)
    • Trice (ROOM/ Echtzeit-UML)
    • EXAM

    • Metaedit + (Domain Specific Languages)

    • Enterprise Architect (UML)

  • Tools aus dem Automotive-Umfeld
    • Testautomatisierung: ECU-Test, EXAM, TestStand, 4CS (MOST Testautomatisierung), Vector CANoe, Modena
    • Test management: ALM / QualityCenter 7-11, TestDirector
    • Hardware in the loop (HiL): dSpace Simulator Midrange und Compact, concurrent HiL, xPC, FIU dS749
    • dSpace-Software: ControlDesk, AutomationDesk, rtplib, ioclib, Ediabaslib, clib, RTT (Echtzeit-Python), CAN Blockset, CAN Multimessage Blockset
    • Diagnose: EDIABAS, Inka
    • Requirements: DOORS

Betriebssysteme

MS-DOS
Unix
Windows

Programmiersprachen

4gl
Open Road (Ingres)
Assembler
Projekterprobte Grundkenntnisse
Basic
VBA, Access Basic, VB6.0
C
sehr ausführlich, auch für Embeded Systems
C#
C++
Java
MATLAB / Simulink
Python
Meine bevorzugte Sprache
SQL
XML

Datenbanken

Access
sehr gute Kentnisse, Versionen Access 2.0 und Access 97
Ingres
ODBC
SQL
SQLite
Umfangreiche und Komplekse Projekte unter Ingres- Open Road (Windows und Unix), Access und sogar Excel (als Client für eine MVS Datenbank). Konzeption, Ausführung.

Datenkommunikation

Bus
CAN, CANOpen, GPIB, MOST
RS232
TCP/IP
Sockets, FTP ,Telnet

Hardware

Bus
CAN, CANOpen, GPIB, MOST
Digitale Signalprozessoren
am Rande in verschiedenen Projekten
Echtzeitsysteme
Im Sondermaschinenbau (mit OO-Casetool Trice, auf Basis der ROOM-Methodik und UML )
embedded Systeme
GSM Mobiltelefone, TV-Signaldekoder, CAN-Karten, Karten mit spezieller Anwendung
Emulatoren
Lauterbach, Hitex
Mikrocontroller
vor allem die C166-Familie von Infineon: C167, GOLD, HIGOLD, M2 (SDA 6000)
PC
Verscheidenste Anwendungen unter Windows, Unix, QNX
Proprietäre HW
Verschiedene PC-Einsteckkarten
VAX
an der Uni
HIL von dSpace: dSpace Simulator Midrange, dSpace Simulator Compact

Berechnung / Simulation / Versuch / Validierung

CANoe
dSPACE
Hardware-in-the-Loop Simulation (HIL)
Stateflow
TFS / Azure Devops Server
VectorCAST

Design / Entwicklung / Konstruktion

Vivado

Branchen

Branchen

Automotive Zulieferer
Halbleiter
Mittelständische Firmen
Hausgeräte
GSM Mobilfunk
Technische Sicherheit
Allgemeine Elektrotechnik
Umweltschutz
Druckmaschinen
Sondermaschienenbau

Einsatzorte

Einsatzorte

München (+100km) Mindelheim (+100km)

Deutschland: lang und mittelfristige Projekte nur München, kurze Reisen flexibel

möglich

Projekte

Projekte

1 Jahr 1 Monat
2021-03 - 2022-03

Diverse Python-Projekte

Python Entwickler Python Linux PyGTK ...
Python Entwickler

Bereich: Train-IT ? Kommunikationssysteme im Zug, CCTV, Kamera-Überwachungssysteme, Videoaufnahme-, Auswahl- und Darstellung auf dem Bildschirm. Tools: Python, Linux, PyGTK, PyCharm, CherryPy, Git, VS Code.

Entwicklung CCTV:

·    GUI Entwicklung in PyGTK. Es handelt sich um eine Neuentwicklung (Greenfield ? Projekt), aber unter Einsatz des bestehenden Frameworks.

·    Die gesamte Architektur ist Event-driven; Das Frontend wird in Kommunikation mit dem Backend Aufgebaut und angesteuert. Der ganze Zustand des Frontends wird im Backend aufbewahrt.

·    Der Zentrale Teil der GUI ist Auswahl und Anzeige von Kamera-Streams, in verschiedenen Modi (händisch, Auto-Scroll). Zusätzlich wird zwischen Main-Screen und Alarm Screen unterschieden (bei Vorfällen im Zug wird automatisch der Alarm Screen aktiviert und der relevante Video-Stream angezeigt)

·    Bei der Entwicklung und zur Qualitätssicherung wurden Unit-Tests eingesetzt

Entwicklung Auswertestation:

·    Es handelt sich Weiterentwicklung einer Bestehenden SW (Brownfield ? Projekt) zun Auswerten, Abspielen und Export der im Zug auf SSDs aufgenommenen Videos. Meine Verantwortung war die Entwicklung des in Python / CherryPy geschriebenen REST-Backends.

·    Im Rahmen des Projektes wurde die bestehende Architektur erweitert und mehrere aufwendige Features hinzugefügt.

·    Eine Reihe von Bugs wurden aufgespürt und/oder behoben.

·    Bestehende Unit-Tests wurden wieder in einen definierten Zustand gebracht.

PyCharm VS Code
Python Linux PyGTK CherryPy Git
Siemens TrainIT
Erlangen/Remote
4 Monate
2020-12 - 2021-03

BDiM

Full stack developer JavaScript, NodeJS, Python JavaScript (JS) Python NumPy/SciPy ...
Full stack developer JavaScript, NodeJS, Python

Bereich: Einsatz von Big Data Technologien / Machine-Learning zur Überprüfung der Qualität von Teilen die mit CNC-Maschinen erstellt wurden. Tools: JavaScript (JS), Python, NumPy/SciPy, MongoDB, Docker, Linux, Grafana, Visual Studio (VS) Code, HTML/CSS.

Im wesentlichen war ich an der Entwicklung einer Web-Basierten Applikation beteiligt:

·    Frontend in JavaScript, HTML und CSS; Backend in NodeJS mit signifikanten Anteilen in Python / NumPy zur Berechnung der Abweichung des gemessenen Teils vom Master.

·    Programmiertechnisch waren die Aufgaben Entwicklung von mehreren Masken (Frontend) mit Anbindung an das Backend in NodeJS, Entwicklung von Python-Code-Anteilen

·    Zudem habe ich Konfigurationen in Grafana vorgenommen und größere Teile des Backends mit Unit-Tests in JavaScript abgesichert.

Grafana Visual Studio (VS) Code Docker
JavaScript (JS) Python NumPy/SciPy MongoDB Linux HTML/CSS
ITQ GmbH
Remote/München
1 Jahr 2 Monate
2019-08 - 2020-09

Aufbau Toolkette TFS / Roboter-Entwicklung, Embedded Systeme

DevOps Vivado VectorCAST TFS / Azure Devops Server ...
DevOps

Entwicklung Builds/ Pipelines CI in Azure DevOps Server:

  • integration des jeweiligen tools (VectorCAST/Vivado)
  • Anpassen an neue HW- und Compiler-Versionen
  • Python-Skripte zur Umwandlung der Testergebnisse
  • Überprüfen des Erfolgs der Testschritte in Python und Windons Batch-Skripte

Aufbau einer Test-Umgebung unter Linux, inclusive:

  • Installation/ Konfiguration TFS-client unter Linux
  • Installation Virtual Environment, Python-Libraries, Skripte
  • Installation Spyder

Diverse Test-Skripte

  • Transfromation proprietäres XML-Format in ESI-XML-Format (Python, lxml)
  • Auswahl Test-Framework (pytest)
Vivado VectorCAST TFS / Azure Devops Server Python Linux
Vivado VectorCAST TFS / Azure Devops Server Python
ABB
Gilching bei München, remote
1 Jahr 4 Monate
2018-01 - 2019-04

Test von Portalen und Webseiten

Python PyCharm Testa ...

Test von Portalen und Webseiten mit Python/ Selenium-Testframework Testa

  • Bereich: Testen, zum Teil Entwicklung von Webseiten und verwandten Technologien
  • Test-Entwicklung:
    • Der größte Teil des Projekts ist Testentwicklung für diverse Web-Portale. Die Testfälle werden in den Test-Framework Testa erstellt, das auf Python und Selenium basiert. Unmittelbar notwendig für die Testentwicklung sind Kenntnisse in Python, HTML, CSS, XPath und Git. Fertig entwickelte Tests werden anschließend für die Continuous Integration in Jenkins eingespielt und dessen Reports den Kunden zur Verfügung gestellt. Zuletzt läuft Jenkins mit Testa und allen Testfällen in einem Docker-Container der die Infrastruktur des Endkunden verwendet.
  • Weiterentwicklung des Test-Frameworks Testa:
    • Ich war punktuell beteiligt an der Weiterentwicklung von Testa, u.a. bei der Konzeptentwicklung für Test-Flows (die mehrere aufeinander aufbauende Tests beinhalten), und an der Confluence-Anbindung zur Darstellung von Test-Reports im Kundenportal.
  • Entwicklung Installer:
    • Auftrag: Entwicklung eines Testa-Installers für mehrere Plattformen (Windows, Linux, evtl. MacOS). Als Grundlage für die Umsetzung habe ich Conda Constructor gewählt, ein Tool von Anaconda, Inc. (zuvor als Continuum Analytics bekannt), die die größte unabhängige Multiplatform Python-Distribution Anakonda zur Verfügung stellen. Der Installer installiert git und notwendige Python-Pakete via pip und checkt die Repository aus.
  • Docker-Container-Entwicklung:
    • Auftrag: erstellen eines Docker-Containers in dem eine aktuelle Version von Testa für den Testbetrieb zur Verfügung gestellt wird. Das Docker-File sieht erneut die Installation von Python und notwendigen Libraries vor, Installation von git, auschecken der Testa-Repository und Nachinstallation von Libraries via pip, dann einen minimalen Test, um festzustellen, dass der Container Test-bereit ist.
  • Anbindung an Confluence:
    • Die aussagekräftigen Reports sollten im Portal das Endkunden nachgebaut werden. Dazu habe ich unter den ca. 10 bestehenden Confluence Python Libraries die eine gewählt die funktioniert, um dir Reports dort einzuspielen. Die Reports musste ich in der Markup-Sprache von Confluence nachbauen, da keine direkte Verwendung von HTML und sehr eingeschränkter Einsatz von CSS möglich ist. Das Ergebnis wurde allgemein als sehr gelungen eingestuft.
  • Anbindung an Jira und Zephyr:
    • Für den Transfer von Testfällen aus dem alten Jira Portal ins neue wurden Testfälle manuell exportiert. Für den Import ins neue Jira Portal habe ich die Jira Python Library verwendet, wie auch die REST-basierte Zephyr Python Library
Python PyCharm Testa Selenium XPath HTML CSS Git Jenkins Docker Conda Constructor Yaml Atlassian Tools ? Confluence Jira Zephyr
1 Jahr
2017-01 - 2017-12

Python Test-Framework-, und Test-Entwicklung, für Roboter, in Python, anknüpfend an das Projekt von 2016

Python PyCharm NumPy ...
  • Test-Framework- und Test-Entwicklung:
    • Entwicklung von Gripper-Endurance-Tests und weiteren Gripper-Tests mit spezifischer Anwendung. Tools: Python, NumPy, SciPy, CANOpen, CAN
    • Speicher- und Darstellungsfunktionalitäten für Messdaten: Entwicklung von spezifischen Datenstrukturen, Diagrammen und Darstellungen. Tools: NumPy, SciPy, Matlab, Excel als Speicher für Konfigurationsdaten
    • Speicher- und Darstellungsfunktionalitäten für Auswertungsdaten: Entwicklung von pandas. DataFrame basierten Datenstrukturen; Wiederverwendung von Diagrammen und Darstellungen. Tools: NumPy, SciPy, Pandas, Matlab.
Python PyCharm NumPy SciPy Matlab Matplotlib Pandas CAN & CANOpen MobaXterm Mercurial mit TortoiseHg Windows & Linux Yaml regular expressions
Robotik
8 Monate
2016-05 - 2016-12

Python Test-Software-Entwicklung zum Test von Robotern

Python Bash-Skripte auf Linux PyCharm ...
  • Jegliche SW-Entwicklung in der Testabteilung (Testcenter) einer Firma, unter anderem:
    • Überarbeitung (refactoring) und Weiterentwicklung der Steuerungs-Software mehrerer Anlagen zum Testen von mechanischen Eigenschaften von Roboter-Gelenken; Schwerpunkt der Entwicklung war in Python
    • Überarbeitung (refactoring) und Weiterentwicklung einer Software (in Python) zur Transformation von Zeitreihen gemessener Signale in  Matlab-Strukturen (*.mat-Files). Die so generierten Daten sind für die Auswertung durch bestehende  Matlab-Skripte vorbereitet
    • Erweiterung der Backup-Infrastruktur. Im Testcenter Fallen täglich mehrere Dutzend bis mehrere Hundert Gigabyte an Rohdaten (Messreihen) an. Für das zuverlässige Speichern und schnellen Zugriff auf die Daten habe ich das bestehende Konzept erweitert, durch Überprüfungen ergänzt und in Bash-Skripten und Python umgesetzt
Python Bash-Skripte auf Linux PyCharm NumPy SciPy Matlab MobaXterm Mercurial mit TortoiseHg Windows & Linux
Robotik
4 Monate
2016-01 - 2016-04

Entwicklung eines Frameworks zum Postprocessing von Berechnungsergebnissen

Python unter Linux PyCharm Unittests ...
  • Transformationen von bestehenden Steuerungs-Files
  • Aufbau von Verzeichnisstrukturen
  • Übersetzung bestehender Perl-Skripte nach Python
  • Weiterentwicklung von Skripten die kinematische Ketten im Fahrzeug beschreiben
Python unter Linux PyCharm Unittests YAML
Automotive
11 Monate
2015-02 - 2015-12

Umfeld Test Getriebe-Steuergeräte

ECU-Test QualityCenter/QC/ALM DOORS ...
  • Testen von Automatikgetriebe-Steuergeräten am HiL
  • Spezifikation und Automatisierung von Tests aufgrund von Anforderungen des Endkunden (QC/ECU-Test)
  • Entwicklung von Utilities (in Python) zur Auswertung der Testabdeckung
ECU-Test QualityCenter/QC/ALM DOORS Python Ediabas Control-Desk OMR Subversion/SVN
BMW
4 Monate
2015-07 - 2015-10

Entwicklung einer Web-Applikation für Verwaltung medizinischer Messdaten

Python Pyramid/ Kotti Postrgres ...
  • Entwicklung einer Web-Applikation für Verwaltung medizinischer Messdaten in Python
Python Pyramid/ Kotti Postrgres REST
6 Monate
2014-09 - 2015-02

Entwicklung einer Web-Applikation für kollaborative Dokumentenerstellung

Python Mongo-DB
  • Entwicklung einer Web-Applikation für kollaborative Dokumentenerstellung
  • Mein Anteil war der Word-Export der erstellten Dokumente unter Einsatz der XML-Sprache für Word-Dokumente (ooxml für Word oder Word-XML). Neben der Library python-docx wird direkter Zugriff auf den XML-Source-Code des Word-Dokumentes via lxml verwendet, um diverse Features, die von python-docx nicht zur Verfügung gestellt werden, zu implementieren.
Python Mongo-DB
6 Monate
2014-05 - 2014-10

Entwicklung einer Web-Applikation für Patientenverwaltung

Python Django SQLite ...
  • Entwicklung einer Patientenverwaltung für die Studienzentrale des Schwindelzentrums am Klinikum Großhadern
Python Django SQLite HTML
Klinikum Großhadern
8 Monate
2014-02 - 2014-09

Umfeld Test Hybrid Elektromotor?Steuergeräte

  • Übernahme, Entwicklung, Ausführung von Testfällen, in QualityCenter und ECU-Test
BMW
11 Monate
2013-02 - 2013-12

Umfeld Test Getriebe-Steuergeräte

  • Entwicklung Testskripten (QualityCenter, ECU-Test) und div. Utilities (Python) zur Auswertung der Testabdeckung
  • Test der Steuergeräte
BMW
8 Monate
2012-04 - 2012-11

Umfeld Restbussimulation

  • Thema Automotive Ethernet + TCP/IP: Untersuchung Vector CANoe, Scapy
  • Entwicklung Tests für xRbs. Die bestehende Software-API musste mit Tests abgesichert werden. Die Entwicklung der Tests war in Python, unter Einsatz der XML-Bibliothek Element Tree und json.
  • Auswahl dezentrales Konfigurationsmanagement-System (Hg, Bazaar, Git)
  • Testautomatisierung für LinRbs. Die bestehende Software wurde um ein Testautomatisierungsframework erweitert. Mein Anteil war Konzeption des Frameworks und Implementierung der Lin-Bus-Zugriffe in Python. (Python, Qt, PySide, LIN-Bus)
  • LIN-Bus Panels: Entwicklung eines GUI-s zur Anzeige von Lin-Bus-Signalen. (PySide, Python, Vector CANoe COM Interface)
BMW, Reliatec
8 Monate
2011-08 - 2012-03

Test Motorsteuergeräte am HiL

EXAM Python
  • Test Motorsteuergeräte
  • Anpassen bestehender Tests auf neue Steuergeräte
  • Auswertung
  • Entwicklung von Auswertungen in Excel (VBA)
  • Automatische Umstellung von in Excell abgelegten Tests (ca. 60 Sheets pro Arbeitsmappe) auf ein neues Steuergerät (in Python)
EXAM Python
Audi
6 Monate
2011-02 - 2011-07

Entwicklung der Webseite und des Marketings

WinOffice Pro 5
WinOffice Pro 5
5 Monate
2010-09 - 2011-01

Projekt car2go

Testverantwortlicher im Backend-Projekt Python Java/ JUnit Selenium ...
Testverantwortlicher im Backend-Projekt
  • Es handelt sich um ein komplexes System zum spontanen Mieten von über ganz Ulm verteilten Fahrzeugen (Smart)
  • Ich war in dem Teil des Teams, das die Web-Basierte Applikation gebaut hat, bestehend aus mehreren Servern und mehreren Datenbanken
  • Umfang der Aufgabe: aufspüren der nicht getesteten Teile; z.T. erstellen, z.T. überprüfen der implementierten Tests
Python Java/ JUnit Selenium HP Quality Center SVN
TSS GmbH (100%-Tochter der Daimler AG)
Ulm

Aus- und Weiterbildung

Aus- und Weiterbildung

1994
Diplomingenieur Automatik und Elektronik
ETF Fakultät für Elektrotechnik, Uni Belgrad (Vergleichbar mit Steuerungs- und Regelungstechnik TU)

Position

Position

Erfahrung im Technischem Support

Kompetenzen

Kompetenzen

Top-Skills

Python OOP Scriptsprachen cPython Bourne-again-shell

Schwerpunkte

  • Ich habe mich 2002 für Python als mein Hauptwerkzeug entschieden, und vertiefe diese Spezialisierung seit Jahren zunehmend.
  • Davor und zwischendurch habe ich aber auch in folgenden Bereichen gearbeitet:
    • Klassische und Modellbasierte Software-Entwicklung in Python, C, C++, Java, C#, Embedded / Echtzeit-SW
    • Jegliche Art von Testentwicklung und Testautomatisierung
    • Installer Erstellung bis dato in WiX, NSI, AutoIt 3. Build-Prozess-Management in Python und Batch-Skripten
    • Automotive-Applikationen im Bereich Bus-Systeme, HiL, Diagnose: Anwendung, Neu- und Weiterentwicklung, Entwicklung von Schnittstellen zwischen Applikationen (Integration)
  • Die verschiedenen Erfahrungen möchte ich nicht missen, aber die Spezialisierung auf Python steht fest

Produkte / Standards / Erfahrungen / Methoden

Technisches Know-How
  • Aufgaben in Python
    • Entwicklung von Testframeworks, Testtools und Tests
    • Parsen, auswerten, bearbeiten von Daten verschiedenen Formaten
    • Erstellen von Code-Generatoren und Installer-Programmen
    • Ansteuern und auslesen von Hardware
    • Erstellen von (statischen und dynamischen) Webseiten
    • Speichern, Auswertung und Darstellung von Messergebnissen
    • Erstellen komplexer Word-Dokumente. XML-Manipulation. Qualitätssicherung durch Unit-Tests
  • Mit Python verwendete Tools
    • Python 1.5, 2.1-2.7, 3.x Echtzeit-Python
    • Wing IDE, Scite, PyCharm, PyDev
    • NumPy, SciPy, Matplotlib, Pandas Yaml, lxml, XML, json, configparser
    • Regular expressions, logging, unit tests (verschiedene libraries), argparser
    • Windows & Linux, Bash-Skripte, MobaXterm
    • Word, Excel (und enstsprechende Bibliotheken)
    • Mongo-DB, python-docx
    • Pyramid, Kotti, Postrgres, REST
    • Django, SQLite, HTML
    • PySide, PyQt
    • Matlab
  • Andere Programmiersprachen und Entwicklungsumgebungen
    • AutoIt 3
    • C, C++, C#, Java

    • Matlab/Simulink

    • Visual Basic 6.0

    • Visual Studio 6.0/ 2005/ 2010/ .Net 2.0

    • Eclipse

  • Model-basierte Tools (Case-Tools)
    • Trice (ROOM/ Echtzeit-UML)
    • EXAM

    • Metaedit + (Domain Specific Languages)

    • Enterprise Architect (UML)

  • Tools aus dem Automotive-Umfeld
    • Testautomatisierung: ECU-Test, EXAM, TestStand, 4CS (MOST Testautomatisierung), Vector CANoe, Modena
    • Test management: ALM / QualityCenter 7-11, TestDirector
    • Hardware in the loop (HiL): dSpace Simulator Midrange und Compact, concurrent HiL, xPC, FIU dS749
    • dSpace-Software: ControlDesk, AutomationDesk, rtplib, ioclib, Ediabaslib, clib, RTT (Echtzeit-Python), CAN Blockset, CAN Multimessage Blockset
    • Diagnose: EDIABAS, Inka
    • Requirements: DOORS

Betriebssysteme

MS-DOS
Unix
Windows

Programmiersprachen

4gl
Open Road (Ingres)
Assembler
Projekterprobte Grundkenntnisse
Basic
VBA, Access Basic, VB6.0
C
sehr ausführlich, auch für Embeded Systems
C#
C++
Java
MATLAB / Simulink
Python
Meine bevorzugte Sprache
SQL
XML

Datenbanken

Access
sehr gute Kentnisse, Versionen Access 2.0 und Access 97
Ingres
ODBC
SQL
SQLite
Umfangreiche und Komplekse Projekte unter Ingres- Open Road (Windows und Unix), Access und sogar Excel (als Client für eine MVS Datenbank). Konzeption, Ausführung.

Datenkommunikation

Bus
CAN, CANOpen, GPIB, MOST
RS232
TCP/IP
Sockets, FTP ,Telnet

Hardware

Bus
CAN, CANOpen, GPIB, MOST
Digitale Signalprozessoren
am Rande in verschiedenen Projekten
Echtzeitsysteme
Im Sondermaschinenbau (mit OO-Casetool Trice, auf Basis der ROOM-Methodik und UML )
embedded Systeme
GSM Mobiltelefone, TV-Signaldekoder, CAN-Karten, Karten mit spezieller Anwendung
Emulatoren
Lauterbach, Hitex
Mikrocontroller
vor allem die C166-Familie von Infineon: C167, GOLD, HIGOLD, M2 (SDA 6000)
PC
Verscheidenste Anwendungen unter Windows, Unix, QNX
Proprietäre HW
Verschiedene PC-Einsteckkarten
VAX
an der Uni
HIL von dSpace: dSpace Simulator Midrange, dSpace Simulator Compact

Berechnung / Simulation / Versuch / Validierung

CANoe
dSPACE
Hardware-in-the-Loop Simulation (HIL)
Stateflow
TFS / Azure Devops Server
VectorCAST

Design / Entwicklung / Konstruktion

Vivado

Branchen

Branchen

Automotive Zulieferer
Halbleiter
Mittelständische Firmen
Hausgeräte
GSM Mobilfunk
Technische Sicherheit
Allgemeine Elektrotechnik
Umweltschutz
Druckmaschinen
Sondermaschienenbau

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.