Yuriy Olshansky
Computer Science Engineer (TU)
20 Jahre im Beruf
Principal Embedded Software Engineer
mit jahrelanger Automotive- und Führungs-Erfahrung
Embedded Software, Komplexität und Effizienz in der Entwicklung sind Ihre Stichworte.
Sie wollen eine kreative Idee verwirklichen und suchen nach pragmatischen Lösungen oder wünschen sich einen unabhängigen Sparringpartner für ein Architektur- oder Effizienz-Review.
Dann bleiben Sie auf dieser Seite und wir sollten möglicherweise in Kontakt treten, damit Ihr Unternehmen von meinem Wissen und meiner Erfahrung profitieren kann. Ihre Ideen sind mein Antrieb.
Entwicklung von der ersten Assembler Zeile bis zur Produktion
Eine technische Idee hat einen langen Weg, bis sie zum Produkt wird. Man fängt öfters bei Null und mit gewissen Unternehmens-Vorgaben an. Und in diesem Stadium werden grundlegende Entscheidungen getroffen, die auch über den Erfolg des Produktes entscheiden. Ich verfüge über einschlägige praktische Erfahrungen und bin in der Lage, diese Entwicklung vorausschauend und kosteneffizient vom Beginn an zu lenken.
große Trick-Kiste über µC-Konfiguration von peripheren Devices
Wenn ein HW-Entwickler sagt: "Die Funktionalität soll in SW gemacht werden", und wenn ein SW-Entwickler sagt: "Die Funktionalität soll die HW übernehmen", meinen sie oft die ausgeklügelte Peripherie vom µC zum autonomen und synchronen Abtasten und Ansteuern in Kombination mit Speicheroperationen. Wenn Ihr Projekt/Produkt kein ausführliches Kapitel zu dem Thema hat, dann sollten wir unbedingt miteinander reden, das wäre ein Indiz für eine Optimierung. Insbesondere tritt dies in Erscheinung im Automotive Bereich beim Einsatz von Autosar µC Abstraction Layer (MCAL), der nur eine minimalistische Schnittstelle zum Microcontroller definiert.
Aufbau und Führung eines agilen und effizienten Teams
Mit der Zeit wachsen die Komplexität und der Umfang der Aufgaben, die einem Entwickler zugetraut werden. Bald übersteigen die Aufgaben bei weitem das, was man alleine lösen kann. So entsteht ein Team und dieses Team muss zu einer abgestimmten Einheit geformt werden. Das Team soll in Summe alle notwendigen Themen abdecken können. Die „stärkeren“ sollen kontrolliert nach vorne laufen, ohne aber der Rest abgehängt zu haben. Die „neuen“ sollen rasch eingearbeitet und zum vollwertigen Teammitglied werden. Die „kommunikationsschwächeren“ sollen vorsichtig aus der Reserve gelockt werden. Und dabei sollte man nie die finanziellen und zeitlichen Ziele aus den Augen verlieren.
Sicherheitsrelevante Anwendungen bis zu ASIL D / SIL3
Wenn ein neues Projekt startet oder man beim existierenden Projekt nicht sicher ist, ob die Umsetzung gemäß Safety „State of the Art“ designed ist, dann könnte ich basierend auf mehrjähriger Erfahrung mit sicherheitsrelevanten Systemen aus Automotive Bereich bei Konzept-/Entscheidungsfindung unterstützen und durch die Safety Assessments begleiten.
IT-Sicherheit in Embedded Systemen
Mittlerweile ist das Thema IT Security genauso ein Bestandteil eines Projektes wie das Thema Safety. Um Security in einem Embedded System zu konzipieren, wird eine spezifische Wissenskombination nötig: akademisches Wissen über Kryptographie, Mikrocontroller mit Security Modulen, Chain of Trust in Software, Trust Center zur Schüsselverwaltung, Build-Prozess mit Signatur-Erzeugung, Verständnis für die Problematik einer Fehlersuche im secured Device ohne Debug-Möglichkeit, spezielle Tools für Format-Konvertierung und Signaturen-Validierung, Verständnis vom Produktions-Prozess. Es ist einfach vom Vorteil, jemanden zu haben, der ein solches Konzept bereits erfolgreich erstellt und umgesetzt hat.
Bringen von verschiedenen Technologien zu einem Produkt und/oder zu einer Tool-Landschaft zusammen
Was gehört zu einem Projekt dazu? Betrachten wir „Autonomes Fahren“ als Beispiel. Es sind Kamerachips, GMSL, HDMI, CAN (FD), Ethernet, C/C++, Python, C#, Autosar, Linux, CUDA, Safety Microcontroller, Performanz-Controller mit GPU-Unterstützung, git, Jira, Jenkins, FSM Betrachtungen, Fahrzeugsimulation, Game Engine und riesige Datenmengen. Die Algorithmen und Künstliche Intelligenz wurden noch nicht erwähnt. Man braucht spezielle Leute, um ein System auf diesem technischen Niveau mit so einer Wissens-Abdeckung auslegen und Architekturaufgabe mit technischer Leitung übernehmen zu können.
Umsetzungsorientierte A-SPICE Prozessberatung
Die zwei Hauptgründe, um nach dem Prozess zu arbeiten, sind "nachweisbar nichts vergessen zu haben" und "für Entwickler nachvollziehbare Dokumentation". Der Prozess soll in erster Linie die Entwicklung unterstützen und niemals zum Selbstzweck werden. Die Erkenntnis und das Verinnerlichen vom "guten Prozess" kommt erst mit Erfahrung und nach selbstgemachten lehrreichen Fehlern, die es ermöglichen, die Entwicklung abstrakt und formell zu sehen.