Zum Inhalt

Freelancer Viktor Hildebrand

Persönliche Daten

Name: Viktor Hildebrand
Adresse: Struthweg 16, 57578 Elkenroth
Geburtsdatum: 13.09.1984
Tel: +49 171 / 6015233
E-Mail: viktor@hildebrand.software
Website: https://hildebrand.software

Fachliche Kenntnisse

  • Programmiersprachen: C MISRA-C:2012 C++ Python Java C#
  • Microcontroller: Microchip Renesas NXP STM TI ARM-basierte-Controller
  • Bussysteme: CAN LIN USB Ethernet UART SPI I²C 1-Wire
  • Plattformen: Embedded-Systeme Maschinensteuerung Windows Linux
  • Test: SonarQube VectorCAST PC-Lint CppCheck Python-Unittest GoogleTest
  • Architektur: Rhapsody Cameo
  • Versionskontrolle: Git SVN
  • Verwaltung: Jira Polarion
  • CI: GitLab CMake Conda
  • Dokumentation: Doxygen MkDocs Latex
  • Office: MS Office LibreOffice

Sprachen

  • Deutsch
  • verhandlungssicheres Englisch

Zulassungen

  • Ü2-Sicherheitsüberprüfung

Ausbildung

  • 2001-08 – 2003-07: Berufsbildende Schule Betzdorf/Kirchen

    Höhere Berufsfachschule für Informatik
    Schwerpunkt Technische Informatik und Automatisierungstechnik

  • 2004-09 – 2010-01: Universität Siegen

    Studiengang: Angewandte Informatik - Anwendungsfach Elektrotechnik
    Diplomarbeit: Bulk-Transfer und Firmware-Update über PLC-Netze
    Gesamtnote Hauptstudium (D II): 1,5

Werdegang

  • 2006-01 – 2010-01: ROTH + WEBER GmbH in Niederdreisbach als Werkstudent
  • 2009-09 – 2009-11: Renesas Technology Europe GmbH als Diplomant
  • 2010-02 – 2016-07: ROTH + WEBER GmbH in Niederdreisbach als Softwareentwickler
  • 2016-08 – 2019-12: Thomas Magnete GmbH in Herdorf als Softwareentwickler
  • 2020-01 - 2020-10: Rohde & Schwarz SIT GmbH in Stuttgart als Freiberuflicher Softwareentwickler
  • 2020-10 - 2022-05: ROTH + WEBER GmbH in Niederdreisbach als Freiberuflicher Softwareentwickler
  • 2021-03 - 2024-06: Miele & Cie. KG in Gütersloh als Freiberuflicher Softwareentwickler
  • 2022-12 - 2023-10: Thomas Magnete GmbH in Herdorf als Freiberuflicher Softwareentwickler

Weiterbildung

  • 2007-09: Xilinx Professional VHDL
  • 2016-09: Functional Safety ISO26262 - System, Hardware & Software
  • 2917-08: Polarion Basic Training
  • 2018-03: VectorCAST C/C++ QuickStart Trainig
  • 2018-08: Willert UML Start-Up Training
  • 2019-02: Vector UDS Diagnose & Candela Studio
  • 2019-09: Jira Basic Training
  • 2019-09: ISTQB Certified Tester Foundation Level
  • 2019-11: Willert UML Follow-Up Training

Projekte

2022-12 - 2023-10 | Thomas Magnete

Entwicklung einer Embedded-Software für einen Ventil-Prototypen mit LIN-Interface.

Aufgaben:

  • Erweiterung der Software-Architektur in Rhapsody
  • Implementierung der Ventilsteuerung als State-Machine in Rhapsody
  • Implementierung eines LIN-Stacks für die Kommunikation mit PLIN-LDF-Testumgebung
  • Integration & Inbetriebnahme des Built-in-Bootstrap-Loaders

Hardware:

  • MCU: Infineon TLE9867

Tools:

  • IDE: Keil µVision5
  • Projektverwaltung: GitLab
  • Architecture: Rhapsody Architect
  • CAN-Adapter: PEAK PLIN-USB

2022-09 - 2024-06 | Miele

Entwicklung einer Embedded-Software für eine Bluetooth-Fernbedienung zur Steuerung eines Staubsaugers.

Aufgaben:

  • Erstellung der Software-Architektur in Cameo
  • Implementierung neuer Software-Komponenten in C für die Grundfunktionen der Fernbedienung
  • Implementierung neuer Software-Komponenten in C für Bluetooth-Datenübertragung
  • Anbindung an ein externes Bluetooth-Kommunikationsmodul und Test der Datenübertragung
  • Überwachung der Software-Qualität mit SonarQube

Hardware:

  • MCU: TI CC2651R3SIPA

Tools:

  • IDE: Code Composer Studio
  • Projektverwaltung: GitLab
  • Architecture: Cameo Systems Modeler
  • Statische Code-Analyse: SonarQube

2021-03 - 2024-06 | Miele

Entwicklung einer Embedded-Software für einen Staubsauger mit Cloud-Anbindung & App-Bedienung.

Aufgaben:

  • Erstellung der Software-Architektur in Cameo
  • Integration von Plattform-Software-Komponenten, u.a. Runtime-Environment mit EmbOS-Betriebssystem
  • Integration & Test eines externen Kommunikationsmoduls mit WLAN & Bluetooth-Funktionalität
  • Implementierung neuer Software-Komponenten in C++ für die Staubsauger-Steuerung
  • Implementierung neuer Software-Komponenten in C++ für die Cloud-Anbindung
  • Überwachung der Software-Qualität mit SonarQube

Hardware:

  • MCU: STM32L496 / STM32U575

Tools:

  • IDE: Visual Studio
  • Projektverwaltung: GitLab
  • Architecture: Cameo Systems Modeler
  • Statische Code-Analyse: SonarQube

2020-10 - 2022-05 | ROTH + WEBER

Entwicklung einer Embedded-Software für ein Farbdruckersystem und Einführung einer Unit-Testumgebung für die Windows-Entwicklungsumgebung und CI-Build-Umgebung.

Aufgaben:

  • Implementierung neuer Software-Komponenten für das Farbdruckersystem in C
  • Implementierung einer Unit-Testumgebung basierend auf CMake & GoogleTest
  • Integration der Tests in das GitLab CI

Hardware:

  • MCU: NXP LPC178x

Tools:

  • IDE: LPCXpresso IDE
  • Projektverwaltung: GitLab
  • Test-Framework: GoogleTest

2020-01 - 2020-10 | Rohde & Schwarz SIT

Test einer Embedded Kryptomodul-Software eines Funkgerätes auf Integrationsebene und Weiterentwicklung der vorhandenen Testumgebung.

Aufgaben:

  • Spezifikation von Test-Cases auf Integrationsebene in Python und XML
  • Implementierung eines Test-Adapters auf Basis von Apache Thrift in C++
  • Portierung & Integration einer vorhandenen C-Bibliothek in die Python-Testumgebung
  • Generierung von Test-Reports in Latex
  • Integration der Tests in das GitLab CI

Hardware:

  • MCU: NXP i.MX8 ARM
  • OS: Embedded Linux

Tools:

  • IDE: Eclipse
  • Projektverwaltung: GitLab & Jira
  • Test-Framework: Python-Unittest
  • Test-Report: Latex

2018-07 - 2019-12 | Thomas Magnete

Entwicklung einer Embedded-Software mit CAN-Interface zur Ansteuerung eines Schrittmotors.

Aufgaben:

  • Betrachtung der funktionalen Sicherheit nach ISO26262
  • Definition von Requirements und Testspezifikationen
  • Adaptierung vorhandener MCAL-Module
  • Implementierung einer Schrittmotoransteuerung in MISRA-C:2012 mit Stromregelung, Positionsregelung und Geschwindigkeitssteuerung
  • Implementierung von Sicherheitsfunktionen
  • Betreuung eines externen Dienstleisters bei der Entwicklung eines 2-stufigen UDS-Bootloaders

Hardware:

  • MCU: Microchip dsPIC33CH128MP505
  • Driver: TI DRV8703

Tools:

  • IDE: MPLAB X + PICkit 3
  • Requirements: Polarion ALM
  • Unit-Tests: VectorCAST
  • Configuration: EB tresos
  • Architecture: Rhapsody Architect
  • UDS-Flasher: Vector vFlash
  • CAN-Adapter: PEAK PCAN-USB
  • CAN-Adapter: Vector VN1610

2017-02 - 2017-04 | Thomas Magnete

Entwicklung einer Embedded-Software für ein UART-Multiplexer-System.

Aufgaben:

  • Erstellung der Software-Architektur
  • Implementierung eines UART-Moduls für die Kommunikation mit einem SPS-Steuergerät
  • Implementierung eines SPI-Moduls für den Zugriff auf 5 angeschlossenen MAX14830-ICs

Hardware:

  • MCU: Atmel ATxmega32E5
  • Peripherals: Maxim MAX14830

Tools:

  • IDE: Atmel Studio + Atmel-ICE

2016-08 - 2018-06 | Thomas Magnete

Entwicklung einer universellen Build-Toolchain für Embedded-Software-Projekte in Python.

Funktionsumfang der Toolchain:

  • Analyse der Formatierung und verwendeten Bezeichner hinsichtlich Naming-Conventions
  • Statische Code-Analyse und MISRA-C:2012
  • Automatisierte Ausführung von Unit-Tests
  • Generierung der Projektdokumentation
  • Kompilierung der Embedded-Software
  • Ausführbarkeit auf einem Build-Server & am Entwickler-PC

Tools:

  • Formatierung: LLVM Clang
  • Statische Code-Analyse: PC-Lint & CppCheck
  • Unit-Tests: VectorCAST
  • Projektdokumentation: Doxygen
  • Standard-Compiler: MinGW
  • Build-Umgebung: Jenkins

2016-08 - 2018-06 | Thomas Magnete

Entwicklung einer Embedded-Software in MISRA-C:2012 mit LIN-Interface zur Ansteuerung eines BLDC-Motors. Zusätzliche Entwicklung für den Systemtest: Eine Testumgebung in Python für das Embedded System mit zusätzlicher UART-Kommunikation für Event-Logging und u.a. Fault-Injection-Tests.

Aufgaben:

  • Betrachtung der funktionalen Sicherheit nach ISO26262 auf System und Software-Ebene
  • Definition von Requirements und Testspezifikationen
  • Erstellung der Software-Architektur
  • Implementierung einer BLDC-Motoransteuerung mit Stromregelung und Geschwindigkeitssteuerung
  • Implementierung einer Single-Shunt-Current-Reconstruction für die Stromregelung.
  • Implementierung eines SPI-Moduls für den Zugriff ein externes EEPROM und den Motortreiber
  • Implementierung eines LIN-Stacks für die Kommunikation mit der Python Testumgebung
  • Implementierung von Sicherheitsfunktionen

Hardware:

  • MCU: Microchip dsPIC33EV128GM004
  • Driver: TI DRV8305

Tools:

  • IDE: MPLAB X + PICkit 3
  • Unit-Tests: VectorCAST
  • LIN-Adapter: PEAK PCAN-USB Pro FD

2015 | ROTH + WEBER

Entwicklung einer Embedded-Software für ein Faltmaschinensystem.

Aufgaben:

  • Erstellung der Software-Architektur
  • Implementierung eines USB-Kommunikations-Moduls
  • Integration vorhandener Software-Module für CAN, I²C, UART & 1Wire Kommunikation
  • Erweiterung eines vorhandenen Bootloaders um die USB-Kommunikation
  • Integration der Schrittmotoransteuerung
  • Implementierung der Faltablaufsteuerung

Hardware:

  • MCU: Renesas RX600

Tools:

  • IDE: Renesas e²Studio + J-Link

2014 | ROTH + WEBER

Entwicklung einer Faltmaschinen-Simulationssoftware mit Benutzeroberfläche in Java.

Aufgaben:

  • Implementierung eines Lagenrechners für Längs- und Querfaltung mit Visualisierung
  • Implementierung eines Rechners der die Dauer der Faltprozedur für verschiedene Parameter (u.a. Geschwindigkeit, Beschleunigung) berechnet und visualisiert.

2013 | ROTH + WEBER

Portierung der Embedded-Software eines Druckersystems auf eine neue Hardware-Plattform, Refaktorisierung der Software-Architektur und Entwicklung neuer Software-Module.

Aufgaben:

  • Entwicklung der neuen Software-Architektur
  • Modularisierung vorhandener, wiederverwendbarer Software-Komponenten
  • Implementierung von neuen Software-Modulen für CAN, I²C, UART & 1Wire Kommunikation
  • Integration des vorhandenen Bootloaders
  • Implementierung einer Schrittmotoransteuerung
  • Integration und Optimierung der Druckablaufsteuerung

Hardware:

  • MCU: Renesas RX600

Tools:

  • IDE: Renesas e²Studio + J-Link

2013 | ROTH + WEBER

Weiterentwicklung einer Software für die Generierung von Typenschildern für verschiedene Maschinentypen in Java.

Aufgaben:

  • Erweiterung der Software für neue Maschinentypen

2013 | ROTH + WEBER

Weiterentwicklung eines vorhandenen Scannersystems inklusive Portierung der Embedded-Software und Anpassung des Windows-USB-Treibers.

Aufgaben:

  • Adaptierung der Embedded-Software an die neue Hardware-Plattform
  • Erweiterung des USB-Treibers für die Kommunikation mit der angepassten Embedded-Software

Hardware

  • MCU: Cypress EZ-USB FX3

2012 | ROTH + WEBER

Entwicklung einer Client-Server-basierten Lizenzverwaltung-Software in Python für verschiedene Maschinentypen.

Aufgaben:

  • Implementierung einer Schnittstelle für den Datentransfer mit dem ERP-System
  • Implementierung einer Trial-Lizenzen-Funktionalität

2011 | ROTH + WEBER

Entwicklung einer Embedded-Software für ein neues Scannersystem.

Aufgaben:

  • Entwicklung der Software-Architektur
  • Implementierung eines CAN-Stacks mit ISO-TP-Kommunikation
  • Implementierung eines Bootloader mit CAN-Interface
  • Implementierung der Scan-Ablaufsteuerung

Hardware:

  • MCU: Renesas M16C

2010 | ROTH + WEBER

Entwicklung eines User-Mode-Treibers für die Kommunikation eines Scannersystems mit einem Windows PC via USB2.

Aufgabe:

  • Adaptierung der LibUSB für die USB-Kommunikation
  • Implementierung der performancerelevanten Software-Komponenten als DLL in C.
  • Implementierung eines socketbasierten Kommunikations-Dienstes in Python mit XMLRPC-Interface, der den Zugriff auf die Treiber-DLL via ctypes realisiert.

Hardware:

  • MCU: Cypress EZ-USB FX2

Tools:

  • Compiler: MinGw

2010 | ROTH + WEBER

Entwicklung und einer Java-Applikation mit Benutzeroberfläche für die Konfiguration und Verwaltung eines Scannersystems.

Aufgaben:

  • Implementierung einer Benutzerverwaltung
  • Implementierung einer Parameterverwaltung
  • Implementierung einer Firmware-Update-Funktion
  • Implementierung einer XMLRPC-basierten Kommunikation mit den Scannersystem

2010 | ROTH + WEBER

Betreuung und Weiterentwicklung einer Embedded-Software für ein Faltmaschinensystem.

Aufgaben:

  • Implementierung einer Endlosfaltprozedur
  • Bugfixing

Hardware:

  • MCU: Philips 80C592

Elkenroth, 31.03.2024