Projects

Throughout my career I have been working in many different areas in the world of Embedded Devices. I have started as a Test Designer for production of automotive electronic devices, then switched to CMOS camera sensor drivers, development of GUI modules for a short time and finally I switched completely to Automotive sector. In the last part I have worked on: instrument panel clustersdoor controller, several projects for parking assistance systems and finally an intelligent seat heater controller. Each of the projects presented different challenges in algorithmsarchitectures, teams, designdocumentation and targets. Some were organized strictly according to the V-model, others were more on-the-go development, one of the projects for parking assistance was scrum-managed, some required heavy documentation and many of those required heavy testing. Following is a short listing with descriptions for each of the major projects (in reverse order). Some of those included working on a family of projects together with 2 or 3 small sub-projects. In order to keep the presentation better structured I have integrated them in the descriptions of the main projects. For further detailed presentation on the projects with full technical details and used tools you can take a look into my CV page.

Latest finished project: PC SW Encryption (C++11), IS27001 implementation and SW Architecture basic Redesign (C++11) for Veoneer

Tasks:

                Security: 

  • Investigation of security workflow
  • ISO27001 process – Information Security Management System (ISMS) – development of standard documentation with the following steps and parts:
  • Security flaws analysis
  • Development and business supply chains roles allocation
  • Proposal for distribution of security related features
  • Codemeter WiBu SW Encryption solution integration
  • Investigation with DLL inspection SW and Windows PE file format parsers SW for proving encryption durability

          Data encryption SW development: 

  • For third party accessible logs
  • Performed explicit logging library profiling
  • Investigation for most appropriate encryption algorithm
  • Chosen AES (128 bit PCBC) with additional custom obfuscation
  • Investigation of available permissive license Open Source libraries for encryption / decryption with integration and test applications development
  • Development of decryption application and complete test suite for encr./decr. chain
  • Written full integration documentation

         Major Windows PC Application redesign: 

  • Investigation of current DLL based architecture, definition of new targets and milestones for new high productivity architecture, allocation of tasks
  • Thread Pool design, implementation and integration
  • Investigation of flaws, Investigation and design of new data processing pipeline
  • New architecture with following features:
  • removal of Qt dependencies, migration to pure C++11 with STL functions
  • migration from DLL plugins-based SW to a monolithic application
  • profiling
  • Investigation of available permissive license Open Source libraries for Thread Pools limited to C++11
  • Developed a Thread pool Open Source library, MIT license
  • Development of full testing application
  • Development of documentation and guidelines

Earlier projects:

Build System Development for ADAS Project for Veoneer

  • Investigation of CMake vs self-written Makefiles vs Eclipse based Make system
  • Written a manual for Eclipse and MinGW usage, setup, importing, debugging, etc.
  • Investigation of LDRA Tool suite installation, usage, setup of MISRA checks for projects, reading and interpretation of LDRA results, usage of the tools from console, was the contact person with LDRA support and IT department for process establishment
  • Writing Python scripts for calling batch commands, interpreting MinGW compilation results, executing LDRA jobs, writing scripts for Jenkins, etc.

Intelligent Seat Heater Algorithm for Behr-Hella Thermocontrol GmbH – full component development with documentation, algorithms, diagnostic traceability and management of the customer communication.

  • Requirements analysis and validation, design of advanced algorithm for learning user habits and controlling of the seat heating on a fully automated basis considering car, profile and environmental conditions
  • Investigation of use case scenarios and contradictory conditions, design of data management, setup and investigation of NVM and calibration parameters, design of C code based on mathematical equations, design of results validation
  • Development of 3-level nested algorithm with state machines, investigation of interfaces and full alignment with the rest of the team for complete component integration
  • Design of a complete logging functionality for full tracing of the algorithm execution throughout all internal functions and stages with additional log decoding tool
  • Written full internal requirements specification and fine design documents, added full traceability to customer SRS according to ASPICE
  • Conducted the complete end customer discussions for features, requirements and mathematical clarifications throughout the project

Fully assisted parking system for Valeo Automotive – testing and bug fixing in final stages of the project.

  • Investigation of test department defect reports – identification of issues, identification of root cause, pinpointing location of issues in components, justification of analysis
  • Requirements analysis for updates
  • Tracing of issues through releases
  • Bugfixing together with justification and HIL tests
  • Simulation issues analysis
  • Worked mostly on diagnostics and in a mixed Autosar/Model based environment

Road Laserscanner device for Valeo Automotive – product included recognition of moving and static objects and definition of the free-for-driving area.

  • Performing initial investigation of build system
  • Writing of internal How-To documents for build procedures, tests architecture and design, requirements guidelines for the team
  • Assessment of current specifications, investigation of use-case contradictory requirements, development of new specifications
  • Development of tests – investigation of use cases, analysis of coverage both for requirements and code
  • Development of design documents
  • Performing introductory trainings for newcomers, supporting the complete team for issues with the upper tasks

OBD2 development for Battery Management Controller for Marquardt GmbH 

  • Development of OBD IUMPR with DaVinci tools together with source code
  • Development of OBD2 diagnostic
  • Requirements investigations for updates between different versions

Parking Assistance System for Valeo Automotive 

  • Investigation of VW BAP (Bedienungs und Anzeige Protokol) protocol defect reports
  • Investigation of internal BAP State Machine’s implementation issues
  • Investigation of build system issues, SW linkage problems and compiler settings related to problems with wrong variables values

Door Controller Unit for Kostal GmbH – for full car door functionality

  • Development of data manager for full support of static and dynamic memory with final result – zero defect component
  • Development of Variant Manager with full configuration options
  • Research for DaVinci arxml files for automated memory interfaces generation and writing of requirement specification
  • Research for correct memory area definition for generating data for direct flashing and further connection to the generated memory interfaces
  • Research and implementation for critical Voltage Drop data handling
  • Development of LIN protocol for configuration transformation between front and rear controller
  • Writing design documents and requirement specifications
  • Integration of memory management libraries for FEE / FDL
  • Writing of driver level state machines for two different controllers for memory management
  • Testing and debug with SIL, PIL and HIL tests
  • Main responsible communication interface between Bulgarian and German parts of the team
  • Responsible in Bulgarian office for HW consumables purchases

Instrument Panel Cluster Family for Johnson Controls (now Visteon Corp.

  • Development of Alert Manager multi-threading application with full support of alerts configuration.
  • Promoted to integrator and release maker after an year
  • Design of automated test suite for full Alert Manager applications suite
  • Made profound requirements analysis due to the complexity and scope of the component (having heavy interaction with almost all other SW components)
  • Writing of design and SW specification documents

C/C++ API Library – internal project for Johnson Controls (now Visteon Corp.

  • Development of tester connection between PC Test SW and TCP connected QNX Target for Infotainment Systems

Design of Python based GUI for Windows and OSx for Antelope Audio 

  • Development of python application together with installation package and OSx USB driver wrapper.
  • Bugfixing of USB driver for HiFi Audio DAC

Embedded Imaging Application SW for Nokia Mobile Phones for MM Solutions 

  • Started as a SW Test Engineer, promoted to Test Team Leader after several months
  • Responsible for full application testing together with reports, bug tracking, task distribution and planning
  • Promoted to SW Developer after an year – developing drivers and core imaging SW with Texas Instruments ARM7 Image DSPs and proprietary RTOS
  • Promoted to Senior Sensor Driver Developer
  • Developed camera capture driver new features together with full bugfixing and investigation of customer defect reports
  • Developed complete universal test suite for the sensor drivers
  • Writing of design specifications
  • Leading customer conference calls for defects and progress tracking
  • Written instruction manual for junior sensor driver SW engineers
  • Tutoring junior developers
  • Completed 6 full projects while working with the company – all of them successfully presented on the market

Development of Automotive ICT Tests for Epiq Electronic Assembly 

  • Development of ICT tests with Marconi Testers for complete HW test before EOL test