Career objective

Help create a sustainable future by delivering operational, maintainable, secure, easy to use, and efficient software—in that order.

Career profile

Embedded software engineer with four years of experience in programming C/C++ middleware and application level software for heating controllers and room thermostats using atomthreads and FreeRTOS.

Increased developer productivity by organizing fortnightly developer meetings that facilitate internal knowledge transfer, and documenting relevant knowledge as well as answers to recurring questions.

Improved software quality by furthering the adoption of software development best practices like code reviews, static analysis, and regression testing as well as guiding the development of key features that help us deliver a working product.

Able to work in German and English.

Tech stack I am comfortable with

Languages
C99, BASH scripts, LaTeX.
Working knowledge of C++11 and Python.

MCU families
STM32 F2/F4/F7, AVR ATmega

RTOS
FreeRTOS

Tools
Git, Atollic TrueSTUDIO, EAGLE, KiCAD, vim, LibreCAD.
Working knowledge of Make and SCons.

Protocols
Working knowledge of Z-Wave (500 Series, Controllers and End Devices).

PC OS
Debian GNU/Linux (user/admin), Microsoft Windows

Core personality traits

  • Comfortable taking the initiative
  • Conscientious, diligent, and organized
  • Talent for finding and thus preventing defects
  • Perseverant
  • Eager to learn and improve
  • Desire to share/ apply what I learned

Education

11/2009 – 10/2010
BSc in Electrical Engineering
Milwaukee School of Engineering, USA

09/2005 – 10/2010
Diploma in Electrical Engineering
University of Applied Sciences Lübeck, Germany

Experience

Since 09/2015
Junior C/C++ software engineer for embedded systems
SOREL GmbH

In general: Maintenance and development of middleware and application logic for STM32 F7 based embedded systems in C and C++ using FreeRTOS.

Currently: Responsible for the integration of Z-Wave into a new room thermostat product. This includes the translation of application requirements into hardware and software specifications, management and quality control of the external Z-Wave developer’s work, hardware debugging and protocol testing including on-site at an external RF lab and another test house, as well as implementation of a generic network interface for communication between the Z-Wave transport layer and the resources close to the application layer.

03/2012 – 03/2015
Camera drone service provider
Ingenieurbüro Kannenberg & Miehl GbR

Services: Images, videos, panoramic tours, surveying, 3D models.

Responsibilities: Organisation (finances, external service providers), IT infrastructure (servers, services), flight law protection of operations (continuous research, communication with authorities), customer support, marketing and contact management, development of products for the surveying industry, image editing, software development (BASH scripts, embedded C, GNU Octave).

Voluntary work

#StopWatchingUs Lübeck
Establishment of the group; organization of meetings, CryptoParties, and protests; writing texts and doing presentations. See the project’s website for details and material.

Chaotikum
Help maintain the IT infrastructure, organize Lübeck’s first national “Chaos macht Schule” meeting, and administer some of the mailing lists.

Freifunk Lübeck
fastd key management, conflict resolution, establishing monthly community meetings as a basis for continued reflection and project improvement

WebMontag Lübeck
Establishment of the group and organization of the first five events … until I moved away.

Favourites

Technical topics
embedded systems, TDD, CI/CD, communication protocols, clean code, software engineering methodologies, software architecture, sustainability and sources of renewable energy, dev tools, OPSEC, FOSS

Non-technical topics
sci-fi books, meditation, psychology, society

Software
i3wm, Git, Doxygen, Qubes OS and Debian GNU/Linux, LaTeX, gnuplot, vim, zsh

People I follow
EEVblog, Louis Rossmann