Hendrik Wagner

Embedded Systems, C/C++/Python

Hendrik Wagner
Berlin, Germany

Experience

Feb 2024 - May 2024
4 months
Germany

Software Developer

Miethke GmbH & Co. KG

Conceptualized and implemented a test environment for automated system and integration tests in C and Python.

  • Created concept
  • Implemented test functionality in target system using C
  • Implemented control software using Python
  • Automated creation of report files (text, pdf, xml)
  • Implemented tests in target system
  • Documentation
Nov 2023 - Jan 2024
3 months
Germany

Software Developer

Phoenix Contact

Created software specification and adapted existing embedded C/C++ software to new hardware (STM32G4 family) and documentation. Adapted existing CANopen interface to CANopen FD.

  • Created software specification
  • Analyzed and documented existing software
  • Documented existing CANopen FD messages
  • Developed software adaptation concept
  • Implementation, documentation
Oct 2023 - Oct 2023
1 month

Software Developer

Developed extended mail merge functionality for MS Outlook

  • Concept, implementation, testing, documentation
  • Extracted all email addresses and names from a defined folder structure from all PST files in a local folder
  • Created CSV file with found information
  • Sent emails to all entries in a CSV file
Feb 2023 - Jul 2023
6 months

Software Developer

Refactoring and extension of some modules of the VBA macro collection for MS Office to create business documents.

  • Re-implementation, extension and testing of individual modules written in VBA with VB.net
  • MS Word: Letter, invoice, time sheet (input masks, address from Outlook, selection letter/fax/email)
  • MS Excel: Account statement (input masks, use export from banking SW, generate PDF)
Jul 2022 - Dec 2022
6 months
Germany

Software Developer

Vossloh Locomotives GmbH

Supported the development team in product maintenance and implementation of new functionality.

  • Processed change requests including design, implementation and developer tests
  • Maintained documentation (specification, architecture specification, design specification)
  • Designed and implemented automated tests
  • Performed document and code reviews
Sep 2021 - Jul 2022
11 months
Germany

Software Developer

Mitel Deutschland GmbH

Supported the development team with product adjustments and consulting (architecture, implementation concept) for integration of new hardware.

  • Analyzed and fixed known bugs in C and C++
  • Performed manual tests
  • Code reviews
  • Integrated new battery charging controller into existing software:
  • Integration concept
  • Architecture adjustments
  • I²C communication
  • Type detection
  • Software adaptation to changed functionality
  • Integrated QR code functionality into existing system:
  • Generated QR code
  • Extended menu structure
Jan 2020 - Jul 2021
7 months
Germany

Software Developer

OLYMPUS Winter & Ibe GmbH

Product maintenance, consulting/support for automation and structuring of tests.

  • Analyzed and fixed known bugs in existing C code
  • Performed tests
  • Implemented and optimized tests in Perl
  • Optimized test architecture
  • Verified documents and software
  • Performed document and code reviews
Sep 2020 - Dec 2020
4 months
Germany

Software Developer

Peucon GmbH

Implemented a CAN flash loader for the control unit of an e-bike

  • Created documents (specification, documentation)
  • Implemented in C, testing
  • Code reviews
Jan 2019 - Apr 2020
1 year 4 months
Germany

Test Engineer

Bombardier Transportation GmbH

Supported/advised the test team in creating and executing subsystem tests.

  • Created automated tests in various test environments and for various subsystems (GenATP, TC, ...)
  • Adapted tests to changed requirements
  • Revised concept for evaluation and validation of GPS position data
  • Performed document and code reviews
  • Created proprietary tools with Python
Aug 2018 - Dec 2019
5 months
Germany

Software Developer

LJU Automatisierungstechnik GmbH

Developed self-test for an embedded system and its interfaces as well as PC software for visualizing test results.

Embedded system:

  • Created test concept, selected components to be tested, specification, implementation in C and commissioning, documentation

PC:

  • Specification, documentation, operating instructions
  • Backend: Implementation and commissioning of visualization software with Qt
  • Frontend: Adaptation/extension of user interface with Qt
Aug 2017 - Nov 2018
1 year 4 months
Germany

Software Consultant

embeddeers GmbH

Consulting for the development of battery management system software.

  • Debugging, creating specifications and documentation, communicating with the customer, coordinating a test team
  • Reviewing specifications, implementing in C, testing, creating specifications
  • Developing macros in LibreOffice
  • Code reviews
Mar 2017 - Present
8 years

Software Developer

Planning and implementation of home automation for a single-family house.

  • Concept, installation, implementation of software for (partial) automation of heating, lighting, electricity, blinds and smoke detectors
Jan 2015 - Jun 2017
1 year 6 months
Germany

Requirements Engineer

DEUTA-WERKE GmbH

Supported the development team in processing customer requirements in close cooperation with their client.

  • Requirements management: Processing system requirements and creating software specification
  • Creating test specifications
  • Implementing automated tests
  • Supporting implementation of software development process
  • Creating tools in VBA and VB.Net to support document creation
  • Performing document and code reviews
Jul 2015 - Aug 2015
2 months
Germany

Software Developer

Chartwerk Präsentationen GbR

Created VBA macros for organizing project processes and employee planning.

  • Design, implementation in VBA and testing
Jun 2015 - Aug 2015
3 months

Software Developer

MOM

Created VBA macros to simplify invoice creation.

  • Design, implementation in VBA and testing
Apr 2015 - Sep 2015
6 months
Germany

Software Developer

Aidoo Software GmbH

Supported the development team in implementing new features for an administration software for sports and leisure facilities in C++.

  • Concept and implementation of a module for flexible display of diagrams with Cairo (developing specification with customer, implementation)
  • Implementation of a DLL with Qt for simple display of geo-position data in Google Maps with C and JavaScript
  • Extension of existing software modules
  • Integration of the banking module from Windata (windata black box)
  • Frontend: Adapting the user interface with Qt
Oct 2014 - Mar 2015
6 months
Germany

Software Developer

casenio AG

Created a C# application to communicate with various home automation components via Z-Wave.

  • Research on Z-Wave, Open Z-Wave topics
  • Analysis of open source implementation of demo software
  • Implementation of a preliminary version in C, evaluation of viability of open source concept
Oct 2013 - Nov 2013
2 months

Software Developer

Macro collection for MS Outlook (VBA) for cleaning up the mailbox and securely viewing emails of unknown origin.

  • Specification, design, implementation, testing
  • Minor adaptations to MS Outlook 2013
Aug 2013 - Sep 2013
2 months
Germany

Software Developer

H. Euen Schweisstechnik GmbH

Developed an OPC client with VBA to store process data transmitted by the OPC server and a viewer to visualize data in Excel files.

  • Consulting on target system selection
  • Design, implementation, testing and documentation
Feb 2013 - Sep 2014
1 year 8 months

Software Developer

Macro collection for MS Office to create business documents.

07/14 - 09/14: Further development: Uniform interface, integration of Outlook contacts, extension of existing modules and templates, creation of additional modules and templates.

02/13 - 04/13: Implementation of basic functionality

  • Specification, design, implementation in VBA and AHK and testing
Sep 2012 - Jun 2014
1 year 10 months

Software Developer

Mobile application for evaluating a boule game (distance measurement between game balls)

  • Specification, design, implementation in Java and testing
  • Implementation of necessary tools in C/C++

Requirements:

  • Automatic recognition of relevant objects in a photo
  • Use device-specific sensors to avoid or correct distortion
  • Calculation time maximum 10s (Samsung Galaxy S2)
Aug 2012 - Apr 2014
1 year 9 months
Germany

Software Developer

ALSTOM Transport Deutschland GmbH

Software development according to IEC 61131-3 (ST, FBD) and creation/extension of VBA macros (MS Office) to automate the development process.

  • Development of TCMS software in areas of external signal lighting, tank, spring-loaded brake, diagnostics, sanding and others
  • Analysis, optimization and testing of existing software components
  • Design, implementation and testing
  • Document and code reviews
  • Commissioning of new software components in the vehicle
Nov 2009 - Jul 2012
2 years 9 months
Germany

Software Developer

Bombardier Transportation GmbH

Software development according to IEC 61131-3 (ST, FBD); Optimization of existing VBA macros (MS Office).

  • Software development for rail vehicles in areas of drive/brake control, climate/ventilation, passenger information systems, doors, visualization, HMI and others
  • Analysis, optimization and testing of existing software components
  • Design, implementation and testing. Commissioning of new software components in the vehicle
  • Specification and execution of whitebox tests
  • Analysis and elimination of errors that occurred
  • Verification
  • Document and code reviews
  • Optimization of Excel macros to automate the development process
Mar 2008 - Aug 2008
6 months
Germany

Software Developer

3M Deutschland GmbH

Software development for a test module in telecommunications in C and assembler.

  • Analysis, optimization and testing of existing software components
  • Design, implementation, testing of new software components
  • Specification and execution of black and whitebox tests
Oct 2007 - Oct 2007
1 month
Germany

Trainer

MTS GmbH

Seminars on topics:

  • Software development process

  • Software testing and debugging

  • Programming techniques for robust and self-documenting code

  • Needs assessment

  • Creation of seminar materials with MS Powerpoint

  • Conducting seminars

Aug 2006 - Aug 2007
1 year 1 month
Germany

Software Developer

Conergy AG

Software development for the control unit of a photovoltaic system in C and C++.

  • Analysis, documentation and testing of existing software components
  • Refactoring, optimization through use of object-oriented software structures
  • Document and code reviews
  • Specification, design, implementation and testing of new software components
May 2006 - Jun 2006
2 months

Software Developer

Macros for MS Office for managing and processing member data of a leisure club

Jan 2005 - Jan 2011
5 years 1 month
Germany

Software Developer

H. Euen Schweisstechnik GmbH

Software development according to IEC 61131-3 (ST, SFC, IL) for automated carriers and welding systems.

09/10 - 01/11: Welding head for gas-shielded welding 09/10 - 10/10: Trade fair demo device 12/09 - 09/10: Automated carrier for surfacing 02/10 - 08/10: Additional functionality for automated carrier for SAW and MAG welding 12/08 - 12/09: Automated carrier for SAW and MAG welding 06/09 - 08/09: Small torch stand with 2 motors and turntable for TIG welding 10/08 - 03/09: System for welding pipes 04/06 - 05/06: Welding portal 01/06 - 03/06: Rotary tilting table for welding systems

  • Refining requirements together with the client
  • Consulting on selection of suitable sensors
  • Design, implementation, testing and commissioning of software
Jul 2005 - Jan 2006
7 months
Germany

Software Developer

X-Spex GmbH

Software development for a mobile digital audio device in C and assembler.

  • Analysis of existing software, optimization regarding code size and speed, replacing C functions with assembler
  • Design and implementation of new functions in C and assembler
  • Testing new software modules
  • Code reviews
May 2004 - Feb 2006
1 year 10 months
Germany

Software Developer

Peucon GmbH

Implementation of various software modules for embedded systems based on 8051 in C

09/04 - 02/06: Implementation of wireless protocol for a game console 05/04 - 09/04: Development of operating software for a Bluetooth GPS module

  • Developing requirements together with the client
  • Software concept, design, implementation, testing
  • Document and code reviews
Jan 2003 - Jul 2004
1 year 7 months
Germany

Software Developer

Enginion AG

Development of software concept for the control unit of a CHP plant and implementation in C and UML.

  • Collaboration on definition of software development process
  • Design, implementation and testing of system software in C and UML
  • Commissioning of control unit
  • Document and code reviews
  • Technical guidance of a student employee
Apr 2000 - Dec 2003
2 years 9 months
Germany

Software Developer

Motorola GmbH

Development of embedded software in C for Tetra base stations.

  • Software-side integration of new hardware
  • Product improvement as well as error analysis and elimination
  • Extension of existing software system in C
  • Document and code reviews

Additional activities:

  • Leadership of a process optimization team
  • Development of product-related improvements with a view to patenting
Nov 1999 - Nov 1999
1 month
Germany

Software Developer

Peucon GmbH

Implementation of Tetra channel coding Layer 1 for verification of externally manufactured hardware.

Mar 1999 - Apr 1999
2 months

Hardware/Software Developer

Own development: Replica of the Berlin Clock based on a 16C54A, programmed in assembler.

Requirements: Display time (minutes with 4+11 LEDs, hours with 4+4 LEDs, 2-second cycle), set time, generate second cycle or derive from mains frequency

  • Component selection, circuit design, layout, assembly, commissioning
  • Specification and design of operating software, implementation in assembler, testing
Aug 1998 - Oct 1998
3 months

Hardware/Software Developer

Own development: New implementation of diploma thesis ("Development and programming of a network-independent microcontroller system for capturing the position of transport containers via GPS and for GSM-supported communication with a central computer.") based on a current microcontroller in C and development of a Windows application in C for communication with the device.

  • Evaluation of used components and their replacement if necessary
  • Circuit design, layout, assembly and commissioning
  • Porting system software (written in C) to new system
  • Implementation of Windows software for configuration and querying collected data
  • Documentation of hardware and software
Jul 1998 - Mar 2000
1 year 9 months
Germany

Software Developer

IAV GmbH

Development of embedded software in C and assembler for the control unit of an automated manual transmission

  • Analysis, documentation, improvement of existing software
  • Specification of a new hardware module and integration into existing system
  • Collaboration on system design of control unit for an automated manual transmission (ASG)
  • Design, implementation and testing of hardware-related software modules in C and assembler
  • Specification of interfaces to third-party software components
  • Code reviews
Feb 1994 - Jun 1998
4 years 5 months
Germany

Hardware/Software Developer

Peucon GmbH

Focus: Development tools for DECT

  • Design of logic circuits for PLDs (PAL/GAL, Flex 8000)
  • Development of digital circuits, creation of circuit diagrams and PCB layouts
  • Development of hardware-related software under DOS and Windows
  • Creation of project-related documentation
Sep 1992 - Jan 1994
1 year 5 months
Germany

Hardware/Software Developer

Meta-Elektronik

Focus: PCB test systems

  • Development of digital circuits and construction of prototypes
  • Creation of PCB layouts
  • Development of hardware-related PC software in Pascal
  • Implementation of visualization of information obtained with the test system

Summary

Since high school I have been passionate about electronics and computers. So it was only natural to combine both and control e.g. model railways or stereo systems with the computer. This was followed by studying computer science, a correspondingly hardware-related diploma thesis and entry into professional life in research and development. I still very much enjoy working close to hardware, if necessary also with soldering iron and assembler. But I also enjoy developing desktop software whose "world" ends at the keyboard and monitor. I find implementing new software just as exciting as optimizing existing programs.

Languages

German
Native
English
Advanced
French
Advanced

Education

Oct 2000 - May 2004

Technische Fachhochschule Berlin

Diplom-Wirtschaftsingenieur (FH) · Wirtschaftsingenieurwesen · Berlin, Germany

Oct 1988 - Jun 1998

Technische Universität Berlin

Diplom-Informatiker · Informatik · Berlin, Germany