Matthias Spiller

Software Developer and Consultant

Böblingen, Germany

Experience

Jan 2025 - Mar 2025
3 months
London, United Kingdom

Software Developer and Consultant

vertraulich

  • Source-to-source transformation of C# code
  • Parsing C# code with Roslyn
  • Dynamically extending C# code with new methods, classes, properties, and fields
  • Generating C# code as mocks
  • In-memory compilation of C# projects with error analysis
  • Providing functionality via Web API (REST)
  • Refining a prototype for series production
  • Reducing technical debt through architectural improvements and creating unit tests
  • C# / Roslyn / .NET / ASP.NET / Swagger / Visual Studio / MSBuild / git / sqlite / Entity Framework / GitHub Actions / Windows / Python / Flask / FastAPI
Sep 2024 - Dec 2025
4 months
Esslingen, Germany

Software Developer and Consultant

CLADE GmbH

  • Consulting and coaching on software development questions
  • Code and architecture reviews
  • Sparring partner for software development and architecture questions
  • Analysis of bus system communication
  • Automated testing of embedded code
  • C / C++ / C# / .NET / Mono / VS Code / CAN / gitlab / gcc / clang / cmake / embedded / Linux / python / pytest
Mar 2024 - Apr 2024
2 months
Esslingen, Germany

Software Analyst and Developer

CLADE GmbH

  • Investigating sporadic crashes in communication between C++ and C# code in control software for a liquid analysis device
  • Crash-dump and memory-leak analysis on embedded Linux, memory profiling
  • Runtime analysis with debugger, valgrind, and ThreadSanitizer on a single-board computer with embedded Linux
  • Analysis of bus system communication
  • Debugging embedded code, sensors, and actuators of a microprocessor
  • Fixing memory management and multithreading issues in C++ and C#
  • Documenting findings, solutions, and best practices to avoid future issues
  • C / C++ / C# / Mono / VS Code / valgrind / Profiling / Memory Management / Smart Pointer / ThreadSanitizer / CAN / gitlab / gcc / clang / cmake / embedded / Linux / ARM Cortex / ubuntu core / bash / shell / gdb / debugging
Jan 2024 - Mar 2024
3 months
Stuttgart, Germany

Software Developer, Test Developer

Vector Informatik GmbH

  • Extending existing test software with the standardized ASAM-XIL interface
  • Analyzing the ASAM interface definition and existing code
  • Implementing the interface in C#
  • Connecting existing C++ code via an RPC interface
  • Implementing functionality in C++
  • Mapping ASAM commands at the bus system level
  • Creating development and automated tests with CAPL and NUnit
  • C / C++ / C# / Multithreading / Smart Pointer / .NET / VSCode / Visual Studio / MSBuild / CANoe / GitHub / ASAM XIL / CAN / Ethernet / DoIP / TCP / UDP / RPC / NUnit / Unit Tests / CAPL / Diagnostics / CDD / Automotive / Windows
Dec 2023 - Jun 2024
7 months
Böblingen, Germany

Software Developer, Hardware Developer

Fari Software GmbH

  • Further development of the Keyboard-Mirror
  • Circuit design
  • Developing the embedded software
  • Connecting to an electronic piano via USB and receiving/sending MIDI messages
  • Mirroring the piano keys for left-handed users
  • C / C++ / Python / ARM Cortex M0 / Raspberry Pi Zero / RP2040 / MIDI / USB / FreeRTOS / UART / embedded / OpenCV / cmake / PlatformIO
Mar 2023 - Dec 2023
10 months
Stuttgart, Germany

Software Developer, Test Developer

Vector Informatik GmbH

  • Extending an existing C++ generator for LIN protocol tests
  • Analyzing existing code
  • Creating a concept to convert the existing generator
  • Writing test units with vTESTstudio and CAPL at the bus level
  • Developing the new generator in C++ and C#
  • Development-time tests
  • C / C++ / C# / CLI / Multithreading / SmartPointer / Boost / .NET / WPF / XAML / Batch / Real-time / VSCode / Visual Studio / MSBuild / Unit Tests / GitHub / LIN / CAN / CAPL / CANoe / vTESTstudio / Windows
Nov 2022 - Feb 2023
4 months
Böblingen, Germany

Software Developer, Hardware Developer

Fari Software GmbH

  • Developing a miniature color sensor
  • Prototyping a wireless sensor to determine light color
  • Circuit design
  • Writing the embedded software
  • Reading sensors and sending data via Bluetooth Low Energy (BLE)
  • Creating desktop software to communicate with the module
  • C / C++ / Python / ARM Cortex M4 / Nordic nRF52832 / Arduino / FreeRTOS / Bluetooth / BLE / I2C / SPI / AT command set / embedded / OpenCV / cmake / PlatformIO
Nov 2021 - Jun 2022
8 months
Stuttgart, Germany

Software Developer, DevOps Developer

Vector Informatik GmbH

  • Introducing Conan as a package manager for C++ projects
  • Configuring Conan
  • Creating Conan packages for tools and libraries
  • Integrating Conan into CMake and Visual Studio projects for desktop and embedded software
  • Converting Visual Studio projects from MSBuild to CMake
  • Building CI/CD pipelines in GitHub for automatic package creation and uploading to Artifactory
  • Creating base images for use in CI/CD pipelines
  • C / C++ / Python / Visual Studio / MSBuild / CMake / GitHub / Docker / Unit Tests / GitHub Actions / VirtualBox DevOps / Conan / MyPy / flake8 / Artifactory / Automotive / Windows
Nov 2020 - Dec 2025
4 years 2 months
Stuttgart, Germany

Software Developer, Language Developer

Vector Informatik GmbH

  • Developing a domain-specific language (DSL) to define device configurations
  • Specifying the DSL
  • Architecture and implementation of the DSL with Xtext and Xtend
  • Creating a VSCode extension for editing the DSL via the Language Server Protocol
  • Generator to produce C#, C++, and C code for control software from the DSL
  • Generator to create HTML pages for documentation from the DSL
  • Building a CI/CD pipeline for automated code generation from the DSL
  • Live querying of JIRA via REST for DSL validation against requirements
  • Extending the DSL data model with information from protobuf files
  • C / C++ / C# / .NET / Xtext / Xtend / Xcore / Java / Batch / Eclipse / Unit Tests / Gradle / Maven / Doxygen / UML / VSCode / Visual Studio / MSBuild / GitHub / Docker / GitHub Actions / DevOps / Automotive / JIRA / REST / Windows / Scrum
Oct 2020 - Mar 2024
3 years 6 months
Böblingen, Germany

Software Developer

Advantest Europe GmbH

  • Embedding a Python interpreter into existing C++ software for controlling a semiconductor tester
  • Automatically generating Python wrappers around existing C++ code
  • Embedding the Python interpreter using pybind11
  • Performance analysis and improvement by reducing IPC calls
  • Uploading a Python script and processing it on the server
  • Connecting a Java API to the Python interpreter
  • C / C++ / Multithreading / Smart Pointer / Python / pybind11 / UNO / Eclipse / Java / Confluence / VirtualBox / Valgrind / Profiling / Linux
May 2019 - Aug 2019
4 months
Stuttgart, Germany

Software Developer, DevOps Developer

Vector Informatik GmbH

  • Developing a graphical tool to configure tests for smart-charging protocols
  • Tool creation with C# and WPF
  • Building an installer for the tool
  • Setting up an automated build and deployment pipeline
  • CANoe / vTESTstudio / CAPL / Batch / Automotive / WPF / XAML / C# / Jenkins / Unit Tests / Groovy / .NET / Windows
Oct 2018 - Feb 2019
5 months
Lahr, Germany

Software Developer

NELA Brüder Neumeister GmbH

  • Extending control software for a high-speed test machine used in visual quality inspection
  • Designing, developing, and verifying algorithms for visual analysis of test objects
  • Image processing and feature extraction in 2D and 3D images
  • Pattern recognition
  • Creating test programs to assess the quality of samples
  • Commissioning test programs at customer sites
  • C / C++ / Real-time / OpenCV / SVN / git / Linux / Qt / CMake / embedded
Apr 2018 - Dec 2021
3 years 9 months
Stuttgart, Germany

Software Developer, DevOps Developer

flexis AG

  • Developing and maintaining a central software component for data collection, conversion, and processing
  • Creating and maintaining Python libraries for data analysis
  • Porting C++ code to Python
  • Migrating from Python 2 to Python 3
  • Architecting and developing a data processing pipeline using PostgreSQL with microservices
  • Deploying and operating in a managed cloud environment
  • Integrating data sources via REST, MQTT, and ZeroMQ
  • Integrating data sources and sinks via SQL
  • Creating a Python library for communicating with a proprietary relational database
  • Converting Visual Studio projects to CMake
  • Integrating vcpkg as a package manager
  • Python / Anaconda / C / C++ / Java / SQL / ODBC / Ant / Ivy / Eclipse / Tomcat / Visual Studio / Visual Studio Code / VirtualBox / SonarQube / RPC / JSON / REST / MQTT / ZeroMQ / NiFi / Poetry / Black / flake8 / Jupyter / Pandas / NumPy / Plotly / SQLAlchemy / PostgreSQL / Django / Flask / pytest / Unit Tests / CMake / vcpkg / Boost / GitLab / Bash / DevOps / Docker / Kubernetes / OpenShift / Helm / Windows / Linux
Jan 2018 - Sep 2018
9 months
Steinenbronn, Germany

Software Developer

TetraTec Instruments GmbH

  • Developing a backend for browser-based access to an MSSQL database
  • Adopting data models from an existing database
  • Automatically generating the API from the existing data model
  • Creating reports from the database using LaTeX
  • ASP.NET / .NET / REST / JSON / XML / SQL / MSSQL / Entity Framework / C# / Visual Studio / LaTeX / Linux / Windows / T4 Templates
Sep 2017 - Feb 2018
6 months
Stuttgart, Germany

Software Developer, Test Developer

Vector Informatik GmbH

  • Specifying, designing, implementing, and testing a framework for ECU tests at the Diagnostics-over-IP protocol level
  • Analyzing customer requirements
  • Implementing the framework with CAPL in vTESTstudio
  • Creating a panel to parameterize the framework
  • Writing tests according to customer specifications
  • CANoe / CAPL / vTESTstudio / DoIP / ISO13400 / Automotive / C# / .NET / Visual Studio / TCP / UDP / Ethernet / WinForms / Windows
Aug 2017 - Aug 2018
1 year 1 month
Böblingen, Germany

Software Developer

Aquilius Research GmbH

  • Specifying, designing, implementing, and testing extensions and bug fixes for semiconductor tester software
  • Analyzing customer requirements and bug reports
  • Implementing features and bug fixes
  • Automated unit tests
  • Crash-dump and memory-leak analysis
  • Performance measurements and improvements
  • C / C++ / Eclipse / Valgrind / Profiling / gcc / Boost / gdb / git / JIRA / Linux / cppunit / Unit Tests
Aug 2017 - Jan 2018
6 months
Steinenbronn, Germany

Software Developer

TetraTec Instruments GmbH

  • Specifying, designing, implementing, and testing control software for a compressed-air test bench
  • Controlling external hardware
  • Implementing test sequences
  • Creating a UI with WinForms
  • Commissioning the software on the test bench
  • Visual Studio / Visual Basic / VB.NET / .NET / WinForms / MFC / Microsoft Report Viewer / Windows
Jul 2014 - Jul 2017
3 years 1 month
Stuttgart, Germany

Software Developer

Vector Informatik GmbH

  • Specifying, designing, implementing, and testing software projects for vehicle simulation and testing as part of CANoe, CANalyzer, TAE, and vTESTstudio products
  • Software development and architecture with C++ and C# on Windows
  • Focus on vehicle diagnostics and bus-level testing
  • Crash-dump and memory-leak analysis
  • Evaluating and introducing JIRA as a company-wide issue-tracking system
  • Creating a JIRA add-on to support in-house processes
  • CANoe / CANalyzer / vTESTstudio / CAPL / Diagnostics / Automotive / C++ / Boost / C# / CLI / COM / (D)COM / MFC / Real-time / Batch / Groovy / Visual Studio / SVN / JIRA / UDS / CDD / ODX / KWP2000 / NuGet / Python / UML / CAN / Ethernet / TCP / UDP / DoIP / Groovy
Apr 2006 - Jun 2014
8 years 3 months
Böblingen, Germany

Software Developer

Advantest Europe GmbH

  • Responsible for the central workflow control of IC tester software, customer-facing APIs, and data generation
  • Software development and architecture with C++ on Linux
  • Model-driven development and software architecture documentation with UML
  • (D)COM-like component framework
  • Technical leadership of a team of up to 7 engineers
  • Evaluating and introducing new software development tools and technologies
  • Technical guidance and coaching of engineers, including task distribution
  • Project planning and execution, including time schedule creation
  • Close collaboration with R&D teams in China and the USA
  • Designing and implementing an executable and debuggable domain-specific language
  • Crash analysis, performance optimization
  • Static code analysis
  • C / C++ / Linux / Xtext / Java / Xtend / Valgrind / Profiling / Python / GCC / Boost / GDB / RUP / Git / ClearCase / JIRA / Confluence / Eclipse / Coverity / Jenkins / DevOps / SQL / Protobuf / UML / Enterprise Architect / VTune / Intel Inspector / Parallel Programming / CORBA IDL / UNO / Scrum / cppunit / Bash / Shell

Summary

Matthias Spiller is a senior software developer with over 19 years of experience in developing, maintaining, and modernizing technical software systems—especially in embedded, automotive, and industrial environments. He helps companies get unstable or outdated systems back under control through solid debugging, targeted performance optimization, legacy code modernization, and building test and CI/CD infrastructures. His technical strength lies in analyzing complex C++, C#, and Python codebases, often on Linux or Windows with CAN, LIN, Ethernet, or other bus systems. Besides implementing new features, he also takes on cross-cutting tasks: architecture consulting, interface design, DSL development (Xtext), or refactoring measures for technical debt. Typical fields of application include embedded devices, control units, diagnostic tools, data pipelines, or simulation environments—even where documentation is missing or systems have passed through many hands. He operates through his GmbH, prefers to work remotely, and is available on-site for project phases.

Languages

German
Native
English
Advanced

Education

Oct 2000 - Jun 2006

Albert-Ludwigs-Universität Freiburg

Diploma, focus on pattern recognition, image processing, machine vision · Computer Science · Freiburg im Breisgau, Germany

Gymnasium Wendalinum

Abitur · Sankt Wendel, Germany

Certifications & licenses

AUTOSAR Workshop

Blockchain – Security Without a Trust Center

CAN Bus Basics

Introduction to Quantum Computing

Quantum Information and Cryptography

Quantum Computing with Qiskit

ECU Testing with CANoe and vTestStudio