Senior Engineer/Consult Embedded Software C/C++
- Verfügbarkeit einsehen
- 0 Referenzen
- 95€/Stunde
- 88260 Argenbühl
- auf Anfrage
- de | en | es
- 04.01.2025
Kurzvorstellung
• Software design and architecture.
• Process consulting within project work or providing technical support for projects in architecture and design-related matters.
• Mentoring and coaching of employees.
Qualifikationen
Projekt‐ & Berufserfahrung
1/2024 – 12/2024
TätigkeitsbeschreibungEmployee training was conducted every two weeks. Topics covered included template programming, SOLID principles, type erasure, concepts, and more.
Eingesetzte QualifikationenProgrammierer C, C++, Schulung / Training (IT)
1/2024 – 12/2024
Tätigkeitsbeschreibung
The goal was the development of software for calculating and compressing vehicle data before it is transmitted to the cloud.
The data is processed in a Python module, which can be loaded from the cloud at runtime.
Language: C++ 20
Plattform: Embedded Linux
Controller: STM32
Interfaces: CANOpen, SPI, GPIOs, Tcp/Ip
Tools: CMake
Canopen, Edge Code, Embedded Entwicklung / hardwarenahe Entwicklung, Embedded Linux, Internet of Things (IoT), Programmierer C, C++, Python-Programmierer, Software Architecture, Software Design
1/2023 – 12/2023
Tätigkeitsbeschreibung
Further Development of an I/O Module. The module was previously operated with an Ethernet Safety Stack. The goal was to replace this stack with a CIP Safety Stack. The architecture of the module consists of six controllers: two for the non-safety area and four for the safety area. The module meets the requirements according to SIL3 (Safety Integrity Level 3).
Language: C
Plattform: BareMetal
Controller: STM32
Interfaces: SPI, GPIOs
Tools: CMake, Tessy
Automatisierungstechnik (allg.), Programmierer C, C++, SafetyBUS p
1/2020 – 12/2022
Tätigkeitsbeschreibung
Redesign of an Existing Library. Various sensors could be connected, and the captured data could be transmitted to different cloud systems, including a proprietary cloud, AWS, and Microsoft Azure. Different transmission technologies such as Ethernet, Cellular, LoRa, and Mioty were used for data transmission. The data was always transmitted in an encrypted format.
Language: C++17
Plattform: FreeRtos
Controller: ESP32
Interfaces: CAN, MODBUS, Tcp/Ip, RS232, SPI, GPIOs, GPS, LoRa, Mioty
Tools: CMake, catch2
Embedded Entwicklung / hardwarenahe Entwicklung, Programmierer C, C++, Software Architecture, Software Design, Microsoft Azure, Amazon Web Services (AWS), Internet of Things (IoT)
11/2017 – 12/2019
Tätigkeitsbeschreibung
Integration of Test Software into Vehicles and Automated Provision of Test Data for AI Developers. This involved integrating the test software into the vehicles and automating the delivery of test data to the AI developers. Additionally, Conan was introduced for dependency management, and the ROS adapter was further developed to improve integration and communication with the vehicle control systems.
Language: C++11, ROS
Plattform: Embedded Linux
Controller: X68
Interfaces: CAN, Tcp/Ip, RS232, SPI, GPIOs, GPS
Process: Autosar
Tools: CMake, Misra, Conan, GoogleTest, CANalyser, CANoe
Embedded Entwicklung / hardwarenahe Entwicklung, Projektleiter Systemanalyse und Systemprogrammierung, Programmierer C, C++
1/2017 – 11/2017
Tätigkeitsbeschreibung
Development of a Prototype for Side Impact Detection. The goal was to develop a prototype capable of detecting side impacts early enough to trigger a side airbag. This involved designing the software architecture and implementing a solution for recording and replaying sensor data in real-time. The vehicle was equipped with cameras, radar, GPS, and LiDAR. Additionally, performance optimization of the existing software was carried out to achieve a data throughput of approximately 0.7 GB/s.
Language: C++11, ROS
Plattform: Embedded Linux
Controller: X68
Interfaces: CAN, Tcp/Ip, RS232, SPI, GPIOs
Process: Autosar
Tools: CMake, Misra, GoogleTest
Software Design, CAN-Bus (controller area network), Embedded Entwicklung / hardwarenahe Entwicklung, Embedded Linux, Programmierer C, C++, Software Architecture
6/2013 – 12/2016
Tätigkeitsbeschreibung
Development of firmware for a product family of washing machines and tumble dryers (ranging from devices for single-family homes to commercial laundry machines with integrated payment options, remote diagnostics, etc.). Separate firmware solutions were developed for both the power section and the user interface. Additionally, a custom-developed bootloader was implemented for programming the firmware during manufacturing.
Language: C, OpenGL for User Interface
Plattform: FreeRTOS
Controller: PIC24
Interfaces: RS232, GPIOs, SPI
Tools: Make, Microchip Tools
Software Design, Embedded Entwicklung / hardwarenahe Entwicklung, Make (Software), Opengl, Python-Programmierer, Software Architecture
1/2011 – 3/2013
Tätigkeitsbeschreibung
Further development of a data logger for vehicle data acquisition. The collected data was stored in the cloud via a cellular module. My task was to design and integrate a Hardware Abstraction Layer (HAL) for the vehicle data. The challenge was to design the HAL in such a way that it could be used with minimal adjustments for various vehicle types (e.g., buses, trains, trucks, etc.).
Language: C++, Java
Plattform: Embedded Linux
Controller: X86
Interfaces: CAN, DBUS, RS232, Modbus, TCP/IP, UDP, USB
Tools: Qt Creator, Maven, CANalyzer, CANoe, gdb
Embedded Linux, Software Design, CAN-Bus (controller area network), Embedded Software, Java-Entwickler, Programmierer C, C++, Software Architecture, TCP / IP
1/1992 – 12/2010
Tätigkeitsbeschreibung
Porting a CAE System to Windows and Linux:
Responsible for adapting and migrating a complex Computer-Aided Engineering (CAE) system to multiple platforms to ensure compatibility and performance on both Windows and Linux-based systems.
• Development of the Ground System for the A400M:
Contributed to the development of a highly reliable ground system for the Airbus A400M, adhering to the stringent requirements of the aerospace industry (DO-178B).
• App Development for iPhone and Android:
Developed mobile applications for iOS and Android, including the design of user-friendly interfaces and integration of various backend services.
• Development of High-Performance Data Structures for CAE Systems:
Designed and implemented optimized data structures to meet the high-performance requirements of CAE systems, enabling efficient processing of large datasets.
• Measurement Data Acquisition System for Pressure Sensors:
Developed a system for the precise acquisition and analysis of measurement data from pressure sensors, intended to be integrated into a manufacturing facility.
• Signal Conditioner for Brake Test Stands:
Developed a signal conditioner to determine whether the tire consistently maintains contact with the ground.
Software Architecture, Java-Entwickler, Programmierer C, C++, Projektleitung / Teamleitung (IT), Softwareentwickler
Ausbildung
Diehl
Lothar Grimm
Esslingen
Über mich
• Employee training in software design (including patterns) and modern C++.
• Performance optimization.
• Integration of subprojects.
• Redesign of software (using existing code fragments).
• Team player.
Languages:
• German: Native speaker.
• English: Negotiation level proficiency, both written and spoken.
Education and Training:
• Dipl. Ing. in Precision Engineering.
• Continuing education in UML.
• Requirements Engineering.
• Modern C++.
• Clean Code.
• Clean Architecture.
Experience:
• Software developer since 1996.
Weitere Kenntnisse
Programming Languages: C, C++(23), Python, Java, JScript, Fortran, Objective C, Rust
Libraries:
Posix, Boost, Qt, QML, ROS, mbedtls, etc.
Operating Systems:
Embedded Linux (Yocto), FreeRTOS, BareMetal, IOS, Android, HP-UX, Windows, MacOs, Linux
Development Tools:
CMake, Make, Maven, Conan, Vcpkg, clang-tidy, clang-format, valgrind, perf, Misra, Profinet, CIP Safety
Strategy & Process:
AUTOSAR, SIL3, Aerospace System DO 178B.
Controller, DevBoards & Processors:
STM32(Cortex-M), PIC24, Coldfire, ESP32, Arduino, AURIX.
Interfaces:
SPI, GPIO, Timers & Counters & Interrups, I2C, CAN, TCP/IP, UDP, SSL, USB, Bluetooth, Cellular, MIOTY, LoRa, ModBus.
Cloud: AWS, Microsoft Azure.
Development Process Scrum, Kanban, Test-Driven Development.
Development Tools VSCode, Eclipse, CLion, Seeger Tools
vFlash, Lauterbach, Gdb, CANoe, CANalyser, Wireshark
Git, SVN Jenkins
Testing Tools: Tessy, Catch2, GoogleTest, etc.
Persönliche Daten
- Deutsch (Muttersprache)
- Englisch (Gut)
- Spanisch (Grundkenntnisse)
- Europäische Union
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden