Embedded Software Developer
Experience

10/2016 - 12/2018

Embedded Software Developer ( as Engineering Consultant )
Miele Cie & KG ( through Alten GmbH )
  • Developed and maintained features and functionalities for Household and Industrial Tumble Dryers
  • Implemented new functionalities for Next-Gen Tumble Dryers

01/2016 - 06/2016

Software Developer
NDI Europe GmbH

Project: Firmware Verification

  • Designed and developed new communication adapter to communicate with connected USB devices
  • Designed and developed custom parser to work in tandem with the communication adapter
  • The device testing framework uses this adapter and the communication is now easier and faster
  • Developed test cases for verification of device firmware

Project: Device Testing Software

  • Designing the new device testing software
  • Developed the proof-of-concept of the testing software

10/2014 - 09/2015

Software developer
achelos GmbH

Project: Smart meter gateway

  • Preparing for the security test of the new German smart meter gateway system
  • Responsible for setting foundation for penetration tests

Project: German Health Card Terminal system

  • Ensured integrity of code
  • Verified security specification compliancy
  • Prepared common criteria compliant documentation

10/2012 - 09/2014

Student Assistant
Uni Paderborn
  • Organic Reconfigurable Operating System (ORCOS) is an RTOS developed in University of Paderborn
  • The aim here is to implement a monitoring tool in ORCOS, to assist Online Model Checker.
  • The tool collects the state of control variables in a safety critical task.
  • The tool sends this collected data to the Online Model Checker, which is running parallely to ORCOS.
  • Online model checker checks the correctness of the safety critical task and “predicts” errors in the current execution trace.
  • ORCOS takes its decision based on the information.
  • This is the basis for my Master Thesis
  • Concluded master thesis with ideas on improving the integration
  • Improve the communication time between ORCOS and online model checker

01/2012 - 09/2012

Student Assistant
Uni Paderborn
  • FPGA simulation tool, VPR 5.0
  • Aim is to create a runtime verification of safety features regarding the temporal and spatial isolation of hardware modules within one reconfiguration bitstream of an FPGA
  • Identify how to contain logic blocks into defined area
  • Contain logic blocks by restricting its random placement into defined area
  • Find a way to extend this to multiple circuits
Education

Grad. 03/2015

Master of Science (Embedded Systems)
University of Paderborn

Thesis: Integration of Online Model Checking with a Real Time Operating System

  • Duration of 6 months
  • Objective of the thesis is to integrate an Online Model Checker into a Real Time Operating System
  • Online Model Checker aims to ensure correctness of the current execution trace, while the system application is running, by means of online checking a sequence of bounded models (covering current execution trace), against the given property.
  • Organic Reconfigurable Operating System (ORCOS) is an RTOS, developed in Universität Paderborn
  • Aim of the thesis is to integrate the online model checker with ORCOS, such that the online model checker can check the correctness of an application running on ORCOS
  • Different integration methods are researched and one of them is implemented and analysed
  • The complete copy of the thesis can be found here. The content of the thesis is original. Any concepts used from outside sources have been stated as such. The ownership of the content of the thesis belongs to the author. Any copies, for educational, research and non-commercial purposes, are free of charge. Any part of the thesis mentioned anywhere, must be cited to this source. For copies or references for commercial purpose, please get in touch with me.
  • This thesis has been published, as a part of the paper titled “Efficient Integration of Online Model Checking into a Small-Footprint Real-Time Operating System”, to the 5th IEEE Workshop on Self-Organizing Real-Time Systems.

Project Group: Racing Car IT

  • Duration of 1 year.
  • Developed semaphores and queues for a basic open source RTOS (called caRTOS)
  • Developed for ECUs in racing car of Universität Paderborn racing team.
  • Developed in C and for ECUs with AT90CAN128.
  • Developed a new concept called asynchronous semaphores. Tasks can be executing while waiting for semaphore.
  • Open source RTOS and code generators available here

Lectures Attended:

  • Reconfigurable Computing – about FPGA and its architecture.
  • RTOS – about Real Time Operating Systems and their different scheduling algorithms.
  • Hardware/Software Codesign – about balancing the load between hardware and software.
  • Peer to Peer applications and networks – about different P2P networks and different applications.
  • Seminar: Bringing Peer-to-Peer Applications Closer to ISP Underlays, based on the paper, The Disparity between P2P overlays and ISP underlays issues existing solutions and challenges.
  • Web Engineering – about the growth of web, different web technologies and the future of web.
  • Model Driven Software Development – about how a software is developed using models.
  • Modelling User Interfaces – about how to develop sensible and beautiful UIs.
  • Assistive Technologies, Accessibility – about how technology can be used to assist the disables and elderly.
  • Advanced Distributed Algorithms and Data Structures – about going to the next steps with data structures and algorithms.
  • Heuristic Search  Algorithms – about developing good search algorithms using heuristic methods.

Grad. 08/2010

Bachelor of Engineering (Computer Science and Engineering)
Visvesvaraya Technological University

Bachelor Project: Rapid Data Access Framework

  • Building a data access framework based on distributed client-middleware-server architecture.
  • Developed in Java and MySql.

Highlights of Lectures attended:

  • Data Structures with C
  • Object Oriented Programming
  • Microprocessor Programming
  • Operating Systems
  • Analysis and Design of Algorithms
  • Software Architecture
  • Embedded Computer Systems