C/C++, Python, ARM, CAN/CANOpen, Embedded, Microcontroller
Aktualisiert am 18.11.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.12.2024
Verfügbar zu: 100%
davon vor Ort: 100%
C/C++
ARM
Python
UDS
CANOpen
ISOBUS
English
fluent
German
C1, TELC Hochschule

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
möglich

Projekte

Projekte

7 Jahre 9 Monate
2017-03 - heute

Development

Independent software developer C/C++ SPI CAN/CANOpen ...
Independent software developer

Development of embedded software. Consulting services (Software desing, implementation and verification).

2020

For a customer in the USA I have implemented an SPI-based communication channel software for a motor controller board and NVIDIA Jetson Nano development board. I have also adapted that software to an existing API library of said motor controller, preserving the existing API interface.

2019

For a customer in München I (as a part of a team) was tasked to implement a Software Framework API for a new model of ECU, based on an existing specialized Embedded RTOS.

2018

For a customer in München I (as a part of a team) was tasked to integrate an FSoE Safety protocol layer on top of an existing EtherCAT protocol into an existing prototype of safety-relevant application (a human-machine interaction system).

2018

For a customer in region Frankfurt am Main: A Battery Management System product firmware extension and bug fixing. I was tasked to figure out a lost/legacy procedure of bootloader and firmware update of a battery management system, fix issues with overcurrent of the battery load and model a charg/discharge process to verify a correct functioning of introduced changes for a legacy firmware that has already been longer time deployed to the end customer.

2017 - 2018

For a customer in Berlin: Platform and communcation channelindependet abstraction software layer library design and implementation. The abstraction layer was meant to hide the connection and transmission-related details from the application layer software. The layer covered GPRS and WiFi as a network interfaces and acted as unified software facade.

2017

For a customer in USA: Floating/submercing meteorology-buoy controll software and communication interface design. Proof of concept implementation. The challange on the project was to suggest a compete solution to the customer, and consider maintenance procedure (the system is difficult to access once deployed). Requirements analysis was also a non-trivial task – the customer had very deep understanding and practical experience in the field but no systematic approach to formulate the acceptance criteria and requirements in general. I had to suggest an electronics design as well as software solution (both application and system level). Another challenge was that the system can be deployed only during particilar weather conditions – making period from November to March not suitable for testing and effective development. Partial system simulation has been used to save testing efforts.

2017

For a customer in Ireland: Feasibility study for qr-code recognition library. Suggested and set up a stress test for most popular qr-code recognition libraries. Based on processing involving provided sets of images suggested the library that would cover the requirements. The challenge on the project was to provide a unified set of metrics to compare libraries and to prove to the customer that the suggested library meets the expectations.

C/C++ SPI CAN/CANOpen Eclipse TriCore MCU UDE Debugger SVN Doxygen JIRA FSoE Stack Library (two different suppliers) CPPUnit AtmelStudio (not an ASF-based project) 1-Wire serial interface Python (to model charge/discharge current dynamics of the BMS) MQTT/MQTTS Various ARM-based MCUs on multiple development boards I2C KiCad (for connection schematics layout) Make/Cmake Linux
7 Monate
2016-09 - 2017-03

Firmware Development

Firmware Developer C/C++ PPC
Firmware Developer
  • RF-sensor module firmware driver development.
  • Sensor functionality verification software desing and implementation.
C/C++ PPC
SMS Smart Microwave Sensors
6 Monate
2016-04 - 2016-09

Support

C/C++ Linux AVR32
  • Train content distribution point service.
  • Power management board firmware re/factoring.
  • Board acceptance test firmware design and development.
  • Support of hardware engineers with acceptance test software.
C/C++ Linux AVR32
ESE Engineering und Software-Entwicklung GmbH
2 Jahre 10 Monate
2013-04 - 2016-01

Design and development

C/C++ PPC Linux ...
  • Forge machinery application software&firmware design and development
C/C++ PPC Linux VxWorks Python CAN/CANOpen ISOBUS LabView
Lely International
6 Jahre
2007-03 - 2013-02

Motor Controller Firmware development

RoboteQ C/C++ GNU make

FPGA configuration download protocol optimization, flashing/update tool refactoring. Design and implementation of motor controller command iterpreter. Integration of scripting engine (BASIC-like scripting language) into a motor controller firmware.

RoboteQ C/C++ GNU make
5 Jahre 6 Monate
2007-06 - 2012-11

Cross-platform

C/C++ Windows API Linux ...
  • Cross-platform distributed backup system software development, refactoring and maintenance
C/C++ Windows API Linux Shell Python
Intellias
1 Jahr
2006-04 - 2007-03

various tasks

C/C++ STL wxWidgets ...
  • Bluetooth access point service
  • Billboard management system
  • Indoor alarm prototype firmware development
C/C++ STL wxWidgets C AVR Linux
Stalker R&D Enterprise
1 Jahr 2 Monate
2005-03 - 2006-04

Implementation

C++ STL
  • Animated character video stream generation based on automatic sound recognition system.
  • Implementation of custom design aldorithms.
  • Implementation of automated tests for algorithm verification.
C++ STL
Krio-company Ltd
1 Jahr
2004-04 - 2005-03

Cell phone management application

C++ STL WindowsAPI
  • Cell phone management application development and maintenance.
  • Remote update software implementation (ActiveX Control-based)
C++ STL WindowsAPI
Spline Software (now EPAM)
1 Jahr 1 Monat
2003-04 - 2004-04

Development

JV MicroKOD C/C++ ...
  • Development of an embedded E1 router management tool (terminal).
  • Windows NDIS Driver implementation to stress test an Ethernet interface on a custom Ethernet-enabled board.
JV MicroKOD C/C++ Windows API STL WinDDK
1 Jahr 11 Monate
2001-06 - 2003-04

Industrial Scales management

Student Job Delphi C 8051-based MCU ...
Student Job
  • Industrial Scales management application development and maintenance.
  • Developed an indication device firmware for a paper roll length control and monitoring (was meant to be used on a paper manufacturer factory)
Delphi C 8051-based MCU IAR Embedded Workbench
PIK R&D Enterprise (Now ?TechoVagy?)

Kompetenzen

Kompetenzen

Top-Skills

C/C++ ARM Python UDS CANOpen ISOBUS

Produkte / Standards / Erfahrungen / Methoden

Version control systems

  • CVS
  • SVN
  • Git

Bugtracking

  • Trac
  • BugZilla
  • OnTime
  • JIRA

Platforms

  • x86
  • ARM
  • PPC
  • AVR
  • MSP430

Documentation

  • Doxygen

Coding Standards

  • MISRA

Development Methodologies

  • Agile (Scrum)
  • XP
  • TDD
  • Continuous Integration
  • Waterfall

Build/Deployment Automation

  • GNUMake/nmake
  • Jenkins

Libraries and Frameworks

  • wxWidgets
  • STL
  • sqlite
  • cURL
  • tinyXML
  • LibMicroHTTPd

Packaging Tools

  • EnnoSetup
  • dpkg

IDEs

  • VisualStudio
  • Eclipse
  • RIDE7
  • AtmelStudio

Betriebssysteme

Linux
including services and drivers
Microcontroller-based systems without OS
or with a simple scheduler
Windows
including WinAPI, services and drivers

Programmiersprachen

C/C++
Python

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
möglich

Projekte

Projekte

7 Jahre 9 Monate
2017-03 - heute

Development

Independent software developer C/C++ SPI CAN/CANOpen ...
Independent software developer

Development of embedded software. Consulting services (Software desing, implementation and verification).

2020

For a customer in the USA I have implemented an SPI-based communication channel software for a motor controller board and NVIDIA Jetson Nano development board. I have also adapted that software to an existing API library of said motor controller, preserving the existing API interface.

2019

For a customer in München I (as a part of a team) was tasked to implement a Software Framework API for a new model of ECU, based on an existing specialized Embedded RTOS.

2018

For a customer in München I (as a part of a team) was tasked to integrate an FSoE Safety protocol layer on top of an existing EtherCAT protocol into an existing prototype of safety-relevant application (a human-machine interaction system).

2018

For a customer in region Frankfurt am Main: A Battery Management System product firmware extension and bug fixing. I was tasked to figure out a lost/legacy procedure of bootloader and firmware update of a battery management system, fix issues with overcurrent of the battery load and model a charg/discharge process to verify a correct functioning of introduced changes for a legacy firmware that has already been longer time deployed to the end customer.

2017 - 2018

For a customer in Berlin: Platform and communcation channelindependet abstraction software layer library design and implementation. The abstraction layer was meant to hide the connection and transmission-related details from the application layer software. The layer covered GPRS and WiFi as a network interfaces and acted as unified software facade.

2017

For a customer in USA: Floating/submercing meteorology-buoy controll software and communication interface design. Proof of concept implementation. The challange on the project was to suggest a compete solution to the customer, and consider maintenance procedure (the system is difficult to access once deployed). Requirements analysis was also a non-trivial task – the customer had very deep understanding and practical experience in the field but no systematic approach to formulate the acceptance criteria and requirements in general. I had to suggest an electronics design as well as software solution (both application and system level). Another challenge was that the system can be deployed only during particilar weather conditions – making period from November to March not suitable for testing and effective development. Partial system simulation has been used to save testing efforts.

2017

For a customer in Ireland: Feasibility study for qr-code recognition library. Suggested and set up a stress test for most popular qr-code recognition libraries. Based on processing involving provided sets of images suggested the library that would cover the requirements. The challenge on the project was to provide a unified set of metrics to compare libraries and to prove to the customer that the suggested library meets the expectations.

C/C++ SPI CAN/CANOpen Eclipse TriCore MCU UDE Debugger SVN Doxygen JIRA FSoE Stack Library (two different suppliers) CPPUnit AtmelStudio (not an ASF-based project) 1-Wire serial interface Python (to model charge/discharge current dynamics of the BMS) MQTT/MQTTS Various ARM-based MCUs on multiple development boards I2C KiCad (for connection schematics layout) Make/Cmake Linux
7 Monate
2016-09 - 2017-03

Firmware Development

Firmware Developer C/C++ PPC
Firmware Developer
  • RF-sensor module firmware driver development.
  • Sensor functionality verification software desing and implementation.
C/C++ PPC
SMS Smart Microwave Sensors
6 Monate
2016-04 - 2016-09

Support

C/C++ Linux AVR32
  • Train content distribution point service.
  • Power management board firmware re/factoring.
  • Board acceptance test firmware design and development.
  • Support of hardware engineers with acceptance test software.
C/C++ Linux AVR32
ESE Engineering und Software-Entwicklung GmbH
2 Jahre 10 Monate
2013-04 - 2016-01

Design and development

C/C++ PPC Linux ...
  • Forge machinery application software&firmware design and development
C/C++ PPC Linux VxWorks Python CAN/CANOpen ISOBUS LabView
Lely International
6 Jahre
2007-03 - 2013-02

Motor Controller Firmware development

RoboteQ C/C++ GNU make

FPGA configuration download protocol optimization, flashing/update tool refactoring. Design and implementation of motor controller command iterpreter. Integration of scripting engine (BASIC-like scripting language) into a motor controller firmware.

RoboteQ C/C++ GNU make
5 Jahre 6 Monate
2007-06 - 2012-11

Cross-platform

C/C++ Windows API Linux ...
  • Cross-platform distributed backup system software development, refactoring and maintenance
C/C++ Windows API Linux Shell Python
Intellias
1 Jahr
2006-04 - 2007-03

various tasks

C/C++ STL wxWidgets ...
  • Bluetooth access point service
  • Billboard management system
  • Indoor alarm prototype firmware development
C/C++ STL wxWidgets C AVR Linux
Stalker R&D Enterprise
1 Jahr 2 Monate
2005-03 - 2006-04

Implementation

C++ STL
  • Animated character video stream generation based on automatic sound recognition system.
  • Implementation of custom design aldorithms.
  • Implementation of automated tests for algorithm verification.
C++ STL
Krio-company Ltd
1 Jahr
2004-04 - 2005-03

Cell phone management application

C++ STL WindowsAPI
  • Cell phone management application development and maintenance.
  • Remote update software implementation (ActiveX Control-based)
C++ STL WindowsAPI
Spline Software (now EPAM)
1 Jahr 1 Monat
2003-04 - 2004-04

Development

JV MicroKOD C/C++ ...
  • Development of an embedded E1 router management tool (terminal).
  • Windows NDIS Driver implementation to stress test an Ethernet interface on a custom Ethernet-enabled board.
JV MicroKOD C/C++ Windows API STL WinDDK
1 Jahr 11 Monate
2001-06 - 2003-04

Industrial Scales management

Student Job Delphi C 8051-based MCU ...
Student Job
  • Industrial Scales management application development and maintenance.
  • Developed an indication device firmware for a paper roll length control and monitoring (was meant to be used on a paper manufacturer factory)
Delphi C 8051-based MCU IAR Embedded Workbench
PIK R&D Enterprise (Now ?TechoVagy?)

Kompetenzen

Kompetenzen

Top-Skills

C/C++ ARM Python UDS CANOpen ISOBUS

Produkte / Standards / Erfahrungen / Methoden

Version control systems

  • CVS
  • SVN
  • Git

Bugtracking

  • Trac
  • BugZilla
  • OnTime
  • JIRA

Platforms

  • x86
  • ARM
  • PPC
  • AVR
  • MSP430

Documentation

  • Doxygen

Coding Standards

  • MISRA

Development Methodologies

  • Agile (Scrum)
  • XP
  • TDD
  • Continuous Integration
  • Waterfall

Build/Deployment Automation

  • GNUMake/nmake
  • Jenkins

Libraries and Frameworks

  • wxWidgets
  • STL
  • sqlite
  • cURL
  • tinyXML
  • LibMicroHTTPd

Packaging Tools

  • EnnoSetup
  • dpkg

IDEs

  • VisualStudio
  • Eclipse
  • RIDE7
  • AtmelStudio

Betriebssysteme

Linux
including services and drivers
Microcontroller-based systems without OS
or with a simple scheduler
Windows
including WinAPI, services and drivers

Programmiersprachen

C/C++
Python

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

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

Das Freelancer-Portal

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