Profileimage by Peter Lauro Software Engineer and Software Development Consultant from Kirchseeon

Peter Lauro

available

Last update: 26.03.2024

Software Engineer and Software Development Consultant

Company: Peter Lauro
Graduation: Dipl.-Ing.Univ Degree (Master) in Management Science and Informatics University of Zilina, Slovakia 09/1993 – 07/1998
Hourly-/Daily rates: show
Languages: German (Limited professional) | English (Full Professional) | Slovakian (Native or Bilingual)

Attachments

CV-Lauro-24-02-en_060224.pdf

Skills

  • Embedded and Application Software:
  • Architecture, Design (UML), Implementation, Test
  • Multi-core programming, preemptive and co-operative multitasking, real time programming
  • Low-Level embedded programming (bare-metal),
    • Code Quality (SOLID principles), Code Reviews, Code Documentation,
    • Unit and System tests
    • Good understanding of low-level software Drivers for Hardware platforms.
    • Ability to read and understand HW designs and blueprints
  • Strong in C++ 98, 11, 14, 17, 20, partially 23 (libraries: STL, Boost, Loki, ACE, Folly, POCO),
  • Strong in C++ Generic Programming,
  • Experienced in Mobile Telecommunication Systems SW development and test,
  • Experienced in Transportation and Medical SW development and test,
  • Experienced in Agile Process (SCRUM, TDD, BDD, Extreme/Pair Programming), V-Model
  • Experienced in Requirements capture and Interface Specification Design,
  • Defining interfaces and hook points used in test environments to automate unit and module tests,
  • Experienced in C#,
  • Very good Documentation skills
  • Team player – supporting and willing to help team members


Methodologies:
OOA, OOD, OOP, Agile Processes, Functional Programming, Generic Programming, Unit/System/Integration Test

Tools:
Visual Studio/Code, Dr.Keil, Eclipse, ReSharper, Valgrind, perf, lcov, Coverity, PC-Lint, DevOps, Enterprise Architect, LabWindows, Rational Rose, Real Time Design Studio, plantUML, WireShark, DoxyGen, CMake, RobotFramework, VectorCast, conan1/2, docker, barebox, ptxdist, yocto project (as user)

Programming Languages:
C++ (30 years), ANSI C, embedded C/C++, C#,  Python, Perl, Java, Visual Basic, Tcl, Pascal, Assembler x86-64, Matlab, Lua, Rust

Libraries:
Boost, STL, ACE/TAO, Loki, WIN API, MFC, .NET, Gstreamer, Libdill, OptiTrack, Qt 5.x, Open EventMachine – Nokia, gRPC, flatBuffers, Doctest, google test/mock, catch2, BoostTest, Selenium, OpenCV, OpenSSL, nlohmann-json, spdlog

Protocols:
5G, LTE/LTE-A, WCDMA, UMTS, GSM/GSM-R, Ethernet, EtherCAT, IP, TCP, UDP, ATM, UART, I2C, SPI, Onewire, MODBUS, CAN, RS232/422/485

Configuration/Quality management:
Git, Bitbucket, Gerrit, Gitlab, Github, DevOps, ClearCase, ClearQuest, Bugzilla, RTC/Jazz/Jira, Perforce, Jenkins, SVN, CPM

Operating Systems:
Windows, Linux(Ubuntu/Debian), Solaris, CentOS(RedHat), Raspbian

Real Time OS:
FreeRTOS, Windows CE, VxWorks, Enea Operating System Embedded (OSE), Ubuntu real-time patch

Test Equipment:
R&S CMW500, spectrum analyzers, signal generators, oscilloscopes (SIGLENT SDS5104X), HW debuggers (ULINK2, Lauterbach, JTAG), cameras and various types of sensors and measurement devices

HW:
x86-64 architecture, ARM architecture, STM32, Infineon XC161-32, i.mx6ul, i.mx6quad plus, Arduino (ATmega328P), EPS32, Raspberry-Pi (A53, A72), Power PC602, PowerQUICC II MPC8260, PPC405GPR, TI DSP TMS320C5x

Training:
CMW500, LTE, UMTS (NodeB, RNC), OOA, OOD, UML (by Rational Rose), UNIX - administration and maintenance, MFC/C++, MSX46020 (telecommunication network manager)
 

Project history

05/2023 - Present
Senior Software Consultant: Eco-Rtm, LoadManager
Lade GmbH (Energy, water and environment, 50-250 employees)

Eco-Rtm, LoadManager                                          remote, Germany 05/2023
Lade Gmbh (car charging, renewable energy)
Position:                                                                     Senior Software Consultant
  • Team support with design and implementation issues, code reviews
  • Improvements in Multi-threading, introduction of Thread pool, asynchronous communication with devices
  • Refactoring of C++ build environment – review of g++ compilation/link flags and options, cmake, CPM, docker, GitLab – maintenance of pipeline
  • Improvement of SW packages deployment – versioning and dependencies
  • Refactoring of in-house c++ libraries to reduce/eliminate the cyclic dependencies
  • Introduction of automatic unit testing, code coverage analysis, sanitization in the CI (gitlab)
  • Adaptation of third-party c/c++ libraries to project requirements
  • Communication with thermal sensor (DS18B20)
  • Gathering data from various electricity grid-measurement devices via spi: ADE9000 or modbus: EM5xx, Iskra WM3WM4, Solaredge, Eastron: SDM72D, SDM630.
  • Design, Development, Test of common configuration Json protocol to communicate with various modbus devices.
  • Prototyping the eco-rtm’s acceptance test environment based on the Robotframework, mosquito(broker), RS485 – simulation charger boards.
  • VisualCode, C++20 (g++ 11.4), cmake, CPM, LCov, Doxygen, Ubuntu, radxa and raspberry pi boards (arm architecture), catch, nlohmann-json, spdlog, plantuml, MQTT, GPIO, Onewire, SPI, MODBUS, RS485, Robotframework, Python, code sanitizers, SonarLint

06/2022 - 01/2024
Senior Software Consultant: Oberhausen and Sevilla Projects
DialogData GmbH (Pharmaceuticals and medical technology, 50-250 employees)

Oberhausen and Sevilla Project                              Munich, Germany 06/2021 – 01/2024
DialogData GmbH (medical projects)
Position:                                                                     Senior Software Consultant
  • responsible for Application Core SW package (the core component of Carl Zeiss’s SW framework for microscopy application development; built for different HW/SW platforms)
  • implementation and test of new STD features based on the C++ proposals (executors, expected, retain_ptr, ring_span, stacktrace, sbo_storage, allocators, various function helper classes, improvement of floating point support, etc.),
  • maintenance of components: CANSystem, logging, common, stdx, misc, basetools, tools, event handling
  • cross-compiling, yocto, conan2
  • responsible for code quality (unit tests, static code analysis, code coverage, code reviews)
  • support of SW teams with designs and implementation issues
  • following the software safety classification standard IEC 62304 (SW safety class C) used in the medical industry
  • Robotic assisted eye surgery: USB3.0 performance analysis (real-time test application to evaluate performance criteria on data transfer between Data Acquisition Board DAQ and PC – transfer eye retina’s A-scans, B-scans)
  • VisualStudio 15/17/19/22, GNU g++ 8/9/10/11/12, Clang 12/13/14/15/16/17, C++ 17/20, Python, cmake, conan, 0x86-64, i.MX6qplus, OptiTrack, Coverity (static code analysis), code coverage (bullseye), EtherCAT, MQTT, Docker, Git, Jira, DevOps Azure, TeamCity, c++Resharper, GoogleTest/Mock, Doxygen, Qt5.x, Plantuml, spdlog, nlohmann-json, code sanitizers

04/2021 - 10/2022
Senior Software Consultant: Passengers Information Systems
Annax GmbH (Transport and Logistics, 50-250 employees)

  • Passengers Information Systems                             Munich, Germany 04/2021 – 10/2022
    Annax GmbH (Emagine GmbH)
    Position:                                                                     Senior Software Consultant
  • Design/Implementation of automatic system-test environment for LED-Display (based on Robotframework, camera, image evaluation)
  • design/implementation/test of serial communication between LED displays, C++ implementation in the higher level of display controller SW stack.
  • secure boot HAB4 on i.mx6UL, barebox as bootloader, ptxdist, cst-tool
  • low-level embedded programming of display drivers,
  • interrupt programming (no operating system on the LED display controllers),
  • communication via I2C to sensors: temperature, brightness and EEPROM,
  • RS232, RS422, RS485, SPI, I2C
  • processors: i.MX6UL, Infineon XC161-32 bit
  • A/D, RealTime Clock, Watchdog
  • Raspberry Pi 4B
  • Visual Code, GNU g++, Dr.Keil compiler (c), Keil ULINK2 Debug Adapter, Oscilloscope SIGLENT SDS5104X, Git/GitLab, Robotframework, Python, ABE – Annax build environment, various types of LED passengers displays

10/2021 - 12/2021
Senior Software Architect: Allplan CAD
ALLPLAN GmbH (Architecture and civil engineering, 500-1000 employees)

Modernization and quality improvement of SW-Architecture of Allplan CAD product line,
Improvement of Code quality,
Support of SW teams,
automatic conversion of source file encoding
analysis existing and proposal of new serialization approaches.
Visual Studio 2019/2022, C++17, Python 3.9, Boost, Perforce, Jira

02/2020 - 03/2021
Senior Software Consultant: Kinevo-Video
DialogData GmbH (Pharmaceuticals and medical technology, 50-250 employees)

Kinevo-Video                                                            Munich, Germany 02/2020 – 03/2021
DialogData GmbH (medical project)
Position:                                                                     Senior Software Consultant
  • Design and Coding a Test-framework for Multimedia NG unit tests,
  • Testing timeouts, resources, disk/net-io-failures,
  • C++ Generic Programming,
  • ApplicationCore – common SW framework for Medical application development – conversion to C++17 and design/implementation of new features (small size allocators, executors, enhanced multithreading)
  • Implementation of C++ Proposals for C++20/23 (as Executor)
  • Design/Implementation of C++ Wrapper component on top of Optinav’s OptiTrack library; implementation of tracking algorithm
  • unit tests, code reviews
Visual Studio/Code, GNU 8.3.0/9.3.0, C++ 17/20, Python, cmake, 0x86-64, ARMv7(crossbuild), i.mx6qplus, GStreamer, OptiTrack, plantuml, Qt 5.x, Conan, Docker, Git, SVN, Jira, DevOps Azure, BitBucket, TeamCity, GoogleTest/Mock, Python

01/2019 - 04/2020
Senior Software Consultant: Radio Control Plugin
Hays AG (Transport and Logistics, 500-1000 employees)

Radio Control Plugin                                               Mannheim, Germany 01/2019 – 04/2020
Hays AG (Bombardier Transportation)
Position:                                                                     Senior Software Consultant
  • SW Architecture/Design/Code and Test of:
- Hierarchical State Machine (HSM) framework (C++ template approach),
- SW component for AT Modem Commands (3GPP 27.007; C++ template approach: design and implementation),
- Timer/Timeout FW,
- event machine FW to handle modem's external/internal Actions and external Events.
  • Architecture, Design, Implementation and Test of Modem Handler's States
  • Unit tests (Doctest, Google Test and Google Mock), VectorCast – code coverage
  • creation of state UML diagrams from the c++ code – plantuml, python
  • static code analysis (MISRA)
  • following the SW functional safety standard EN 50128 (SIL2 and SIL4) used in the rail industry
Eclipse, GNU, C++, C# (win forms), make, 0x86, Arm, PowerPC, GSM-R, FlexeLint (MISRA rules), Python, plantuml, RobotFramework, cross-compiling, UART, UDP, VectorCast

12/2018 - 12/2018
Senior Software Consultant: MMS SeriaA GUI
Helmut Fischer GmbH Institut für Elektronik und Messtechnik (Automotive and vehicle construction, 50-250 employees)

MMS SeriaA GUI                                                     Maichingen, Germany 12/2018 – 12/2018
Helmut Fischer GmbH Institut für Elektronik und Messtechnik           
Position:                                                                     Senior Software Consultant
  • GUI Development and Test of Multi-Measurement Systems Inspection (MMS) device (Seria A) in C++17; C++ Template Meta-Programming
  • testing on real HW
Visual Studio Code, g++ 8.2.0, Jira, git, C++17, STM32, gdb

01/2017 - 12/2018
Senior Software Consultant: 5G - System Component Test L2-L1
Nokia (Telecommunications, >10.000 employees)

5G - SCT (System Component Test L2 – L1)        Ulm, Germany 01/2017 – 12/2018
Nokia Technology Center Ulm       
Position:                                                                     Senior Software Consultant
  • Analysis and solution proposal of automatic BB2 installation and setup on Comp-nodes from the central control PC (netboot, PXELinux, bash scripts).
  • Design, implementation and test of low-level test  framework (SCT FW/Tickler) for L2-L1 System Component Testing (5G – eNodeB side). Low-level test framework provides an environment to develop applications runnable on host and target systems. The SCTFW/Tickler also simulates the HW and SW environment (SIL/HIL) of the target system.
  • Understanding of 5G Verizon specifications: V5G 201, 211, 212, 213, 300, 321, 331.
  • Documentation of Framework features (wiki); supporting other  team members.
  • Co-operative multitasking, coroutines, code optimization, solving multi-core issues
  • Agile Software Development.
  • Design and Implementing (C++, Template Meta-programming) and testing of:
    • Core functionality of SCT FW/ Tickler (coroutine engine and coroutine scheduler, structured concurrency),
    • code for different SW/HW platforms and deployments,
    • SW communication channels/queues (Syscom/ethernet/SW event- internal or external), messaging,
    • Common concepts and examples of coroutines usage in SCT (System Component Test) TCs
  • Eclipse, Linux, libdill, boost/context+coroutine2, doctest, gmock, Jira, git, Gerrit, Jenkins, C++14/17, Lua, Rust, Nokia’s Open Event Machine, DPDK, Functional programming, CMake, gcc, gdb, clang, perf, valgrind

03/2010 - 03/2017
Senior Software Consultant: CMW500 – SW Signalling Adapter
Rohde&Schwarz (Telecommunications, 5000-10.000 employees)

CMW500 – SW Signalling Adapter                        Munich, Germany 03/2010 – 04/2017
Rohde&Schwarz      
Position:                                                                     Senior Software Consultant
  • Using OOA and OOD to implement SW framework for RF-LTE test cases (3GPP TS 36.521 and 36.508)
  • Designing abstraction layers and commands classes in C#/C++ to control the test cases.
  • Implementing the classes (C#) to transfer these commands through the SOAP channel.
  • Implementing different handlers (Managed C++) on the SOAP side to process the commands.
  • Mapping commands to MLAPI LTE (Rohde & Schwarz wrapper around LTE stack) to generate the corresponding control messages on the LTE stack (RRC, PDCP, RLC, MAC and PHY).
  • Understanding of 3GPP specifications: TS 36.101, 36.211, 36.212, 36.213, 36.306, 36.331.
  • Documenting new features, supporting team members.
  • Integration of Signalling Adapter with new versions of LTE MLAPI/Stack.
  • Responsible for Code Quality (PC-Lint, ReSharper C++, Vera++) and overall SW Design of Signalling Adapter.
  • Solving multithreading issues, Code optimization.
  • Configuration Management (ClearCase).
  • Agile Software Development.
  • Design and Implementing (C++, Template Meta-programming, Perl, Tcl, Visual Basic script) and testing of:
    • Core functionality of Signalling Adapter,
    • Plugin Concept,
    • support functional libraries for RF-Test Cases,
    • UE Registration, Carrier Aggregation, eMBMS, IMS, LTE-U, RNTI search algorithm (UE and Common SearchSpace), UL and DL RBs allocation, UE Capability processing, LLA, NBIoT
    • Logging framework, UnitTest framework (Boost test).
VisualStudio 2010, C++98/11, C#, .Net 4.x, PC-Lint, ReSharperC#/C++, Vera++, Enterprise Designer (UML), clearcase,

02/2010 - 03/2010
Senior Software Engineer: TomTom Webfleet
TomTom (Internet and Information Technology, 250-500 employees)

Webfleet                                                                      Leipzig, Germany 02/2010 – 03/2010
TomTom
Position:
                                                                    Senior Software Engineer
  • Functional analyse and SW-design architecture of new SW communication module between a car (truck) and Webfleet application.
C++ 98, gnu g++, gdb

05/2009 - 01/2010
Image Recognition - algorithms
my private project (Other)

Image Recognition                                                              Munich, Germany 05/2009-01/2010
Position:                                                                     Private Project
Transferring image-processing algorithms (C++ code, algorithms based on the  invariant high level statistical moments) into NVIDIA (CUDA) parallel programming language.

01/2008 - 04/2009
Senior Software Consultant: Radio Remote Head
Nokia Siemens Networks (Telecommunications, 1000-5000 employees)

Radio Remote Head                                     Munich, Germany 01/2008 – 04/2009
  • Nokia Siemens Networks                               Senior Software Consultant
  • Embedded development (ANSI C) and test of SW driver for RRH digital board (PPC405GPR; RTOS: VxWorks and later OSE).
  • Application development: requirements, design, implementation and tests the GOBSAI Tool – a SW to generate a flow of user data (U-Plane) for GSM and WCDMA over an OBSAI interface.
  • Writing documentation: analysis, design and end-user documentation.
  • Use of static source code analysis (Flexelint, Coverity) and memory analysis (Purify) tools to remove defects from the code.
  • Protocol analyzer (WireShark).

11/2002 - 12/2007
Senior Software Consultant: Channel Card
Nokia Siemens Networks (Telecommunications, 1000-5000 employees)

Channel Card                                           Ulm, Germany 11/2002 – 12/2007
Nokia Siemens Networks
Position:                                                                     Senior Software Consultant
  • Design, implementation and test of SW in embedded system.
  • Involved in OO Design (Rational Rose, Artisan Real-time Design Studio), development (ACE/TAO, C++, CORBA) and test of Channel Card’s O&M SW for NodeB (UMTS).
  • CAN, ATM (Utopia).
  • Walked through the whole software development life cycle until the delivery of Channel Card to the market.
  • Responsible for:
    • the subsystem „BOM Control sub-system“ (O&M functionality),
    • messages communication between DSPs (C64x) and controller CPU (MPC8260) via HPI Device Driver,
    • messages and message queue (RTOS: VxWorks) concept (BIF and BBS subsystems), its design and an automatic code generation (Perl scripts),
    • Unit, module tests and system tests (HWTP – XML interface and remote-control interface) of CHC96 on TADSIB board,
    • Automation of module, system tests and regression tests (Perl application, based on HWTP remote control interface),
    • Message Viewer (WBIT test application) - responsible for WBIT tools for a CHC96 testing: Gathering and evaluation of messages sent and received between controller CPU and DSPs plus DSPs' intercommunication. (C++, Windows, LabWindows, analysis, design, coding and testing).

05/2001 - 07/2002
Senior Software Consultant: RNC O&M
Siemens (Telecommunications, >10.000 employees)

RNC O&M                                                 Munich, Germany 05/2001 – 07/2002
Siemens
Po
sition:                                                                     Senior Software Consultant
  • Radio Network Controller (RNC) – central network element of the Access Network the 3rd generation of mobile telecommunication networks (UMTS).
  • Responsible for an implementation (C++, OS: SUN Solaris) of Transport Network Layer (TNL) functionality.
  • Configuration of data transport between Network Elements on Physical and ATM Layer.
  • Propagation of status and alarm information from RNC to Radio Commander.
  • Conversion commands and notifications between CMISE Q3 and HMI.

11/2000 - 04/2001
Group Leader/Senior Software Engineer: XPressPass Manager
Siemens (Telecommunications, >10.000 employees)

XPressPass Manager                                                Slovakia/Israel 11/2000 – 04/2001
Siemens
Position:                                                                     Group Leader/Senior Software Engineer
  • Analysis, Design (Rational Rose), Implementation (Java), Testing and Configuration Management (Clear Case) for SW Download Manager for XP 3614x (ATM Network Element).
  • The communication between Node Access Proxy (NAP) and network elements via SNMP and TFTP.
  • Group Leader of 10 team members.

09/2000 - 10/2000
Senior Software Engineer: Switch Commander
Siemens (Telecommunications, >10.000 employees)

Switch Commander                                                  Bratislava, Slovakia 09/2000 – 10/2000
Siemens
Position:                                                                     Senior Software Engineer
  • Analysis, Design, Implementation, Testing and Configuration Management for SW Download and Connection Manager for XP 3614x (ATM Network Element).
  • Responsible for Connection Management over NAP.
  • Java, Rational Rose (UML), ClearCase

05/2000 - 08/2000
Senior Software Engineer: OSS Mediator
Siemens (Telecommunications, >10.000 employees)

OSS Mediator                                                           Vienna, Austria 05/2000 – 08/2000
Siemens
Position:                                                                     Senior Software Engineer
  • Development of an additional SW package for the 45190 (Element Manager). The task of package was to mediate alarms and the communication traffic to/from 36190 (Network Element).
  • Responsible for:
  • A development infrastructure (Win NT, SUN Solaris, Clear Case, Samba),
  • OSS Mediation daemon (OOD: Rational Rose (UML), implementation C++).

08/1999 - 04/2000
Software Engineer: Netgate SEM CDM
Siemens (Telecommunications, >10.000 employees)

Netgate SEM CDM                                                   Vienna, Austria 08/1999 – 04/2000
Siemens
Position:                                                                     Software Engineer
  • Responsible for Design (Software Through Pictures - UML) and Implementation (C++, Visibrooker, Orbix) of the 46020’s equipment, partition and network on the SEM layer (Element Manager, Network Element, Node, Shelf, Card, Port, ATM TcAdaptor) Testing and Configuration Management (Clear Case) for SW Download Manager for XP 3614x (ATM Network Element).
  • Windows NT, SUN Solaris, CORBA, ClearCase

09/1998 - 07/1999
Teacher: Lectures of Signal Processing
University of Zilina (Other, 250-500 employees)

Lectures of Signal Processing                                  Prievidza, Slovakia 09/1998 – 07/1999
Position:                                                                     Teacher – University of Zilina
  • Leading of courses of Signal processing and Numerical Computers.
  • Fuzzy logic, Speech and Image recognition.
  • DTW, MFCC, DCT, FFT and other methods of signal coding and filtering.
  • Development of SW on DSP test board with TI TMS320C50.
  • C/C++, assembler x86, Visual Basic, MATLAB, SystemView 

07/1998 - 01/1999
Software Engineer: IDM
Elas s.r.o. (Banks and financial services, 50-250 employees)

IDM                                                                              Prievidza, Slovakia 07/1998 – 01/1999
Elas s.r.o.
Position:                                                                     Software Engineer
  • Integrated Document Management (FileNet) – the complex system to handle, archive, administrate and manage document flow.
  • Responsible for the application workspace, user interface and communication with SQL database (MS SQL Server, ADO, RDO, ODBC).
  • Visual C++, Visual Basic, Windows, WIN API, SCO Unix

08/1997 - 01/1998
Technical Support
Elas s.r.o. (Banks and financial services, 10-50 employees)

Elas s.r.o.                                                                     Prievidza, Slovakia 08/1997 – 01/1998
Position:                                                                     Technical Support
  • Responsible for installation and maintenance of user equipment and OS (SCO Unix, Windows, SUN Solaris).

Local Availability

Only available in Kirchseeon and 50 km around
München/Bayern oder remote

Other

Dipl.-Ing.Univ Degree (Master) in Management Science and Informatics
University of Zilina
Zilina, Slovakia 09/1993 – 07/1998

Major: Information and Control Systems.
Annual Project: Image Recognition by using methods of Statistical Invariant Moments
Diploma Work: Experiments with Two-Dimensional Transformations in a Virtual Laboratory of Image Processing (DCT, Walsh, JPEG); Fachhochschule Dieburg, Deutsche Telekom (1998)

Awards:
- Vice-Chancellor price, University of Zilina, 1998
- GrandPrix of Volksbank, 1998 (the price for the best students of Slovak Republic)

Professional Training: Fachhochschule Dieburg, Deutsche Telekom
Dieburg, Germany 03/1998-05/1998
- Development of SW Application VLIP (Virtual Laboratory of Image Processing).
- Responsible for analyze, design (UML), coding (Borland C++, WIN API) and testing of following functions and subsystems: Threshold, Quantization, Transformations (DCT, Walsh, FFT), Coding (Laplacian pyramid), Filtering, SNR, MSE, Deviations, Mean, Variance, Histogram, Entropy, Power, GUI, internal HTML viewer (light)
Profileimage by Peter Lauro Software Engineer and Software Development Consultant from Kirchseeon Software Engineer and Software Development Consultant
Register