Embedded Softwareentwicklung
Aktualisiert am 23.10.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 01.11.2024
Verfügbar zu: 100%
davon vor Ort: 100%
Deutsch
B2 ? Fachkundige Sprachkenntnisse
Englisch
C1 ? Fachkundige Sprachkenntnisse
Russisch
Muttersprache

Einsatzorte

Einsatzorte

München (+150km)
möglich

Projekte

Projekte

4 Jahre 8 Monate
2019-09 - 2024-04

RTC-X (Scanner Realtime Controller Gen. X)

Embedded/Realtime Softwareentwickler Software und Programmiersprachen: TI RTOS (processor-sdk-rtos-am65x) C/C++ PRU ASM ...
Embedded/Realtime Softwareentwickler

RTC-X (Scanner Realtime Controller Gen. X) ? Steuerplatine des Scanners der Generation X

  • Entwicklung der Firmware für ICSSG PRU in ASM;
  • Entwicklung von Embedded-Software für den Betrieb auf Bare-Metal ARM Cortex A53 sowie unter der Kontrolle von TI RTOS;
  • Implementierung des Protokollstacks SL2-100 (McASP-ähnliches benutzerdefiniertes Protokoll) für ICSSG PRU (PRU-Firmware implementiert in ASM);
  • Portierung des Protokollstacks SORTE (Simple Open Real-Time Ethernet) für ICSSG_PRU von AM335x auf AM65xx (PRU-Firmware implementiert in ASM);
  • Optimierung/Refactoring und weitere Entwicklung des Protokollstacks SORTE unter Verwendung neuer Funktionsblöcke von ICSSG PRU, implementiert in der Architektur AM65xx;
  • Synchronisierung von SORTE und EtherCAT, die auf benachbarten ICSSGs laufen;
  • Forschung und Implementierung neuer Methoden zur Synchronisation von Netzwerkgeräten SORTE unter Berücksichtigung der physikalischen Eigenschaften und funktionalen Merkmale von PHY, RGMII, PRU.
  • Untersuchung des Betriebs und Vorbereitung der Konfiguration für Synchronizer and Jitter Cleaner LMK5B12204;
  • Implementierung der IPC zwischen ICSSG_PRU und Cortex A53-Kernen;
  • Untersuchung der PCIe-Leistung und Implementierung der IPC zwischen PRU und ARM SoC AM65xx einerseits und Laser Controller Card auf Basis von FPGA SmartFusion2 andererseits;
  • Erstellung technischer Dokumentation;


Software und Programmiersprachen: 

TI RTOS (processor-sdk-rtos-am65x), CCS, Twincat/EtherCat


Hardware: 

SOC AM65xx/AM65x IDK, Cortex A53, ICSSG PRU, PHY DP83867, Synchronizer and Jitter Cleaner LMK5B12204, FPGA Microsemi IGLOO2/SmartFusion2, PCIe, AXI,


SRX (Synchronous Realtime eXchange) ? Kundenspezifisches, industrielles EchtzeitEthernet-Protokoll

  • Entwicklung für FPGA Cyclone V mit SpinalHDL
  • Forschung und Entwicklung von Methoden zur Messung der Signalverzögerungen / der Laufzeit von Datenpaketen zwischen Geräten im SRX-Netzwerk unter Verwendung des Clock Synchronizer AD9543
  • Entwicklung von Synchronisationsmethoden für Geräte im SRX-Netzwerk unter Berücksichtigung der funktionalen und physischen Eigenschaften von PHY, RGMII, FPGA usw


Software und Programmiersprachen: 

Verilog/SpinalHDL, Quartus, Simulink


Hardware: 

FPGA Cyclone V, Clock Synchronizer and Jitter Cleaner AD9543

Quartus Simulink Code Composer Studio Libero TIRTOS ARM Cortex
Software und Programmiersprachen: TI RTOS (processor-sdk-rtos-am65x) C/C++ PRU ASM VHDL Python Verilog/SpinalHDL Twincat/EtherCat; Hardware: SOC AM65xx/AM65x IDK Cortex A53 ICSSG PRU PHY DP83867 Synchronizer and Jitter Cleaner LMK5B12204 FPGA Microsemi IGLOO2/SmartFusion2 PCIe AXI
Scanlab GmbH
Puchheim, Oberbayern
8 Monate
2019-01 - 2019-08

Steuerung der elektronischen Komponenten des AF (atomic force) Mikroskops

Embedded/Realtime Softwareentwickler C/C++ C# (.NET WPF ...
Embedded/Realtime Softwareentwickler

neaCore ist eine Echtzeitanwendung zur Steuerung der elektronischen Komponenten des AF (atomic force) Mikroskops

  • Aktualisierung von Echtzeit-Kernel Komponenten und Treibern.
  • Entwicklung und Test neuer Funktionen gemäß den technischen Anforderungen.

neaGUI ist eine grafische Benutzeroberfläche zur Interaktion mit dem Mikroskop

  • Entwicklung und Test neuer Komponenten der grafischen Benutzeroberfläche

NeaScope
C/C++ C# (.NET WPF MVVM) Mono RT Linux
Neaspec GmbH
Haar bei München
2 Jahre
2017-01 - 2018-12

Augmented- und Virtual-Reality-Anwendungen für Unternehmen und Automatisierung

Teamleiter / Softwareentwickler fu?r VR- und AR-Anwendungen C/C++ C#/.Net Mixed Reality Toolkit + Microsoft Sharing Service ...
Teamleiter / Softwareentwickler fu?r VR- und AR-Anwendungen

Als Teamleiter bin ich für die Entwicklung, Testen und Implementierung der folgenden Projekte verantwortlich:


Project: CandyStore

Geschäftsplanung Software für ein deutsches Großhandelsunternehmen für Lebensmittel, Getränke, Tabakwaren, Telekommunikation und Non-Food.

Die Hauptfunktionen der Anwendung sind:
  • Schnelle und genaue Messung des Raumes / Arbeits - / handelsraumes und speichern als Plan;
  • Innenarchitektur des Raumes. Zuweisen / ändern der Farbe (Materialien) von Wänden, Boden, Decke,
  • dekorationsplatten, hinzufügen von Dekorelementen;


Projekt: HeavyFrame Maintenance

Die Anwendung wurde für einen der weltweit führenden Werkzeugmaschinenhersteller entwickelt und dient der Verwaltung der Wartung von Werkzeugmaschinen im Unternehmen.

Die Hauptfunktionen der Anwendung sind:
  • Bereitstellung von Informationen u?ber Fehler in Form von Hologrammen, die u?ber realen Knoten und Baugruppen liegen;
  • Bereitstellung visueller Anweisungen fu?r den Bediener in Form einer Reihe von Maßnahmen zur Fehlerbehebung/Wartung;
  • Foto- und Videoaufzeichnung der Tätigkeiten des Bedieners und Speicherung des Protokolls in der Firmendatenbank;


Project: HeavyFrame Assistent
Die Hauptfunktionen der Anwendung sind:

  • Schulung des Betriebspersonals in den Grundlagen der Bedienung und Wartung von Werkzeugmaschinen, zertifizierung der Mitarbeiter;


Project: Truck Configurator

Online-3D-Konfigurator fu?r Anbaugeräte und Zubehör fu?r Lkw und Nutzfahrzeuge

Unity 3D OpenCV Blender Microsoft HoloLens Windows Mixed Reality headsets iOS(mit ARKit) usw
C/C++ C#/.Net Mixed Reality Toolkit + Microsoft Sharing Service WebGL/WebVR Azure Cloud Services ARKit ARCode Stateless FSM Git/Bitbucket Jira. Unity 3D + Unity Networking Mixed Reality Toolkit + Microsoft Sharing Service Blender OpenCV Jira
C1 Technologies GmbH
München
1 Jahr
2016-01 - 2016-12

Softwareentwicklung

Softwareentwickler
Softwareentwickler
Headnex GmbH
1 Jahr
2015-01 - 2015-12

diverse Projekte

Embedded Softwareentwickler C/C++ Embedded Linux IBM Rational Rhapsody 8.1 ...
Embedded Softwareentwickler
E.COR (Elevator Controller) 
  • Implementierung von neuen Sicherheitsanforderungen (u.a. in Notfällen sichere Evakuierung);
  • Implementierung von Selbsttests aller installierten Komponenten; Realisierung eines ?Safe Operation Mode? für die gesamte Anlage, falls mindestens eine Komponente nicht akzeptiert wird.
  • Implementierung einer ?Remote Update? Funktion für die Firmware über CAN; (Flashupdate RPI über MHC)
  • Implementierung der Echtzeit System Überwachung und Protokollierung; (Laufzeitüberwachung)
  • Implementierung einer Sicherheitskreisanalyse (mit unterschiedlichen landesspezifischen ?Safety Chains?), die den Aufzug außer Betrieb setzt, wenn eine ?Safety Chain? unterbrochen ist;
  • Implementierung neuer Sicherheitsanforderungen im Wartungsmodus


Projekt: BlueBox

VoIP Notrufsystems mit autarker Hardware, außerdem werden Nutzungsstatistiken generiert (wie eine Blackbox).

  • Implementierung eines Linux Treibers damit BlueBox bei Stromausfall auf Batteriebetrieb schalten kann
  • Implementierung einer lokalen Datenbank mit Nutzungsstatistik
  • Implementierung einer Synchronisierung der lokalen Datenbank mit Microsoft Azure Cloud

IBM Rational Rhapsody 8.1 Enterprise Architect Perforce Eclipse C/C++ Embedded Linux LevelDB (NoSQL Databank von Google) Microsoft Azure
C/C++ Embedded Linux IBM Rational Rhapsody 8.1 Enterprise Architect Perforce Eclipse usw LevelDB (NoSQL Databank von Google) Microsoft Azure
ThyssenKrupp Aufzüge GmbH
4 Monate
2014-09 - 2014-12

ExcimerRT für Excimier Laser Workstation, PGS (Pattern Generator Software) für Victus Femtosecond Laser Platform.

Senior Softwareentwickler C/C++ RTLinux Debian ...
Senior Softwareentwickler

ExcimerRT für Excimier Laser Workstation

Laser Workstation ist ein Medizinisches Gerät für Augenlaser Behandlungen. Alle elektronischen Komponenten in der Workstation (wie die Laserquelle, Eye Tracking usw.) werden von ExcimerRT gesteuert. ExcimerRT ist eine Echtzeitsoftware, die auf dem Windows Subsystem RTX von IntervalZero läuft.

Als Mitglied des Projektteams verantwortlich für:

  • Integration von verschiedene Hard- und Softwarekomponenten in einem einzigen System;
  • Design, Entwicklung, Testen und Integration von Echtzeit Windowsgerätetreibern;
  • Implementierung der StateMaschine(Enterprise Architect, UML 2.0/StateCharts +
    Codegenerierung);
  • Design, Entwicklung, Testen und Integration von der Kommunikations-Schnittstelle zwischen der
    Echtzeitsoftware und Windows Applikationen;
  • Erstellen von Design-Dokumenten(V-Model, ISO 62304);
  • Unterstützung bei der Verifikation und Validation


Projekt: PGS (Pattern Generator Software) für Victus Femtosecond Laser Platform

Victus Laser Workstation ist ein Medizinisches Gerät für Augenlaser Behandlungen. PGS ist eine Software die eine 3D Laser Puls Matrix berechnet

Als Mitglied des Projektteams verantwortlich für:

  • PGS von Linux nach Windows Portierung, Refactoring und Testen(C++/C#, CppUnit/NUnit);
  • Design, Entwicklung, Testen und Integration von neuen Behandlungen wie LensFragmentation und Capsulotomy(Matlab + 3D visualisierung, CppUnit/NUnit);
  • Weiterentwicklung, Testen und Refactoring von PGS(MS Visual Studio, C++/C#, NUnit);
  • Unterstützung bei der Verifikation und Validation von PGS


Projekt: Lascon (Laser Controller) für Femtosecond Laser Platform

Femtosecond Laser Platform Laser Workstation ist ein Medizinisches Gerät für Augenlaser Behandlungen

Als Mitglied des Projektteams verantwortlich für:
  • Lascon triber von RTLinux nach RTAI portirung und Testen (GNU Autotoos, GDB, Python); Weiterentwicklung, Testen und Refactoring von Lascon Triber( Eclipse/Kdevelop; C/C++; ACE);
  • Unterstützung bei der Verifikation und Validation(V-Model, ISO 62304)

    C/C++/C# WPF IntervalZero RTX Matlab MS VisualStudio TFS UML Enterprise Architect Matlab NUnit
    C/C++ RTLinux Debian RTAI/RTNET KDevelop SVN Python GNU Plot usw. C#/C++ MS Visual Studio TFS Matlab NUnit
    Bausch + Lomb | Technolas Perfect Vision
    4 Jahre 6 Monate
    2006-04 - 2010-09

    IN (Intelligent Network) System

    C++ Softwareentwickler C/C++ STL/boost VC2003 - 2008 ...
    C++ Softwareentwickler
    IN (Intelligent Network) System, basiert auf VoiceXML & CCXML Interpreter für Festund Mobile-Netz Anbieter, Interactive Voice Response (IVR). Es waren die folgende Mehrwehrdienste (VAS) realisiert: Televoting, Prepaid, Number Portability, Call Distribution, Call Queueing.
    Als Mitglied des Projektteams verantwortlich für:
    • Implementierung von verschiedenen, plattformübergreifenden Common Libraries für das Entwicklungssystem;
    • Portierung und Angleichen von zuvor implementierten Libraries an die 64-bit Linux Plattform;
    • Implementierung eines VoiceXML / CCXML Interpreters;
    • Implementierung eines JavaScript Interpreters;
    • Analyse und Untersuchung von Third Party Software;
    • Implementirung von VOIP Comminication
    C/C++ STL/boost VC2003 - 2008 KDevelop SourceSafe/SVN/SourceOffsite XML/XSL/SOAP/VoiceXML/CCXML JavaScript SIP RTP Oracle ACE(The Adaptive Communication Environment) CxxUnit/MockPP
    European Computer Telecoms AG, München
    1 Jahr 5 Monate
    2004-10 - 2006-02

    EtherCAT Master SDK

    Embedded Softwareentwickler C/C++
    Embedded Softwareentwickler C/C++

    Der EtherCAT Master SDK ermöglichermöglicht es, die EtherCAT Master-Funktionen auf verschiedenen Software- und Hardware-Plattformen anzuwenden und vereinfacht die Entwicklung auf EtherCAT Spezifikationen beruhenden Komponenten. EtherCAT ist ein offenes Echtzeit Ethernet-Netzwerk, das ursprünglich von Beckhoff entwickelt wurde.Es setzt neue Standards für Echtzeit Leistungen und Topologie- Flexibilität. Im Januar 2006 nahm ich als technischer Experte für Visutech System Ltd. am ersten EtherCAT Plug  Fest (Kirchheim am Teck) teil

    Als Mitglied des Projektteams verantwortlich für:

    • Design und Entwicklung von einem auf ANSI C basierenden und OS unabhängigen, zuverlässigen Hochleitungs-Kern für EtherCAT Master SDK, der störsichere Logik beinhaltet, wie z.B. Prozessdatenverarbeitung (Status-Management, zyklischer Austausch), Mailbox Kommunikationsprotokolle (CANOpen over EtherCAT, Ethernet over EtherCAT, File Access over EtherCAT) und EtherCAT spezifische Funktionen;
    • Design und Entwicklung des Network Layer Protokolls unter Benutzung des RTNet Hard Real-Time Datenübertragungsprotokolls Stack für Linux;
    • Entwicklung des Transport Layer Protokolls für die Datenfluss-Kontrolle im EtherCAT Netzwerk-Segment, basierend auf EtherCAT Master SDK unter Benutzung von RTAI/LXRT für Linux;
    RTAI 3.1/3.2 RTNet Compuware DriverStudio Matlab/Simulink VC.NET KDevelop XML/XSD eXpat GDB/KDB Debian Linux Windows 2000 Windows Mobile 4 Visual Source Safe C/C++
    Visutech System Ltd.
    Minsk.
    1 Jahr 8 Monate
    2003-02 - 2004-09

    Software Suite für eine optisch-elektronische Prüfplatte

    Embedded Software Entwickler C/C++
    Embedded Software Entwickler C/C++

    Software Suite für eine optisch-elektronische Prüfplatte (Prüfanlage), die das Verhalten von fliegenden Objekten simulieren soll (Flugzeuge, Hubschrauber etc.). Die ganze Anlage besteht aus einer Kernanwendung zur Kontrolle der Testanlage, einer Logik um die Ergebnisse zu speichern und zu verarbeiten, sowie einer Front-End Anwendung zum Visualisieren.

    Als Mitglied des Projektteams verantwortlich für:

    • Design und Entwicklung von real-time Treibern für die Verbindung zwischen Host und Prüfplatte unter Benutzung von Venturcom RTX;
    • Design und Entwicklung von Verbindungsprotokollen;
    • Design und Entwicklung des Kommunikationssytems zwischen realtime und non-realtime Untersystemen unter Benutzung von Venturcom RTX;
    • RTLinux Untersuchung und Analyse;
    • Portierung von Software von Windows/RTX zu RTLinux
    Matlab/Simulink Venturcom RTX 4.3/5.5 RTLinux Compuware DriverStudio VC++ 6.0 STL WTL DDK/WDM GDB RedHat Linux Windows NT/2000 Visual Source Safe C/C++
    JSC Peleng
    Minsk

    Aus- und Weiterbildung

    Aus- und Weiterbildung

    2000 ? 2003

    Weissrussische Staatsuniversität für Informatik und Radioelektronik.
    Fakultät für Computersysteme und -Netzwerke.
    Abschluss: Bachelor's degree

    1995 ? 2000
    Staatliche Fachhochschule für Radiotechnik Minsk,
    Fakultät für Softwaretechnik

    Position

    Position

    Ziel: Eine Position als Softwareentwickler, bei der es gefragt ist, gesammelte Erfahrungen und analytisches Denken zur Lösung der gestellten Aufgaben einzusetzen, sowie die Möglichkeit zu haben, neue Kenntnisse zu erwerben

    Kompetenzen

    Kompetenzen

    Produkte / Standards / Erfahrungen / Methoden

    Profil

    • Schwerpunkte sind Realtime und Embedded Systeme
    • Langjährige Erfahrung in der Entwicklung von Echtzeit- und Embedded- Software mit den Programmiersprachen ASM, C/C++, Python usw
    • Langjährige Erfahrung in der Entwicklung von Embedded und Realtime Software für ARM, einschließlich Entwicklung für Bare-Metal, RTOS und Linux, sowie hybride Anwendungen für Multicore-CPU (AMP/Asymmetric Multiprocessing)
    • Praktische Erfahrung in der Entwicklung und Optimierung von Algorithmen der digitalen Signalverarbeitung unter Verwendung von Advanced SIMD/NEON und Floating-point Extensions
    • Mehrjährige Erfahrung in der Entwicklung für Programmable Real-time Unit (PRU) - ein spezialisierter Echtzeit-Coprozessor der ARM Sitara-Familie von Texas Instruments
    • Gute Erfahrung in der Entwicklung für FPGA, wie Intel Cyclone II und Cyclone V,sowie Microsemi IGLOO2 und SmartFusion2
    • Mehrjährige Erfahrung in der Entwicklung von industriellen HochgeschwindigkeitsNetzwerkprotokollen
    • Praktische Erfahrung in der Implementierung von Windows und Linux Kerneltreibern
    • Langjährige praktische Erfahrung in der objekt-orientierten Analyse (OOA), Design (OOD) und Programmierung (OOP) von Systemsoftware und Systemkomponenten
    • Gute Praktische Erfahrung mit dem Einsatz der Programmiersprache C# und Technologien wie .NET, WPF, WCF, MVVM
    • Starke Prüfungsfähigkeiten inklusive NUnit, CPPUnit/CxxTest, MockPP usw.
    • Exzellente Kommunikation auf Englisch sehr gut auf Deutsch, Verbindlichkeit, Teamfähigkeit, Eigenständige Arbeitsweise


    Technische Fähigkeiten

    • Embedded- und Echtzeit Programmiersprachen: ASM (>10 Jahren), C/C++ (>15 Jahren), Java (>3 Jahren);
    • Skript-Programmiersprachen: Python, JavaScript , Bash Shell usw.;
    • Anwendungsentwicklung: C#, .NET (WPF, MVVM), JavaScript/NodeJS, Electron;
    • Betriebssysteme: Linux (Arch, Ubuntu, LFS usw), Windows;
    • Echtzeit Umgebung: RT Linux, TI RTOS, FreeRTOS, IntervalZero RTX;
    • ARM: Cortex M*, Cortex R*, Cortex A9/A53/A72, TI Sitara Family SOCs ;
    • Echtzeit RISC CPU: ICSS/PRU;
    • FPGA: Intel/Altera Cyclone II/V, Microsemi IGLOO2, SmartFusion2;
    • HDL: VHDL, Verilog, SpinalHDL, Modelsim;
    • Datenbusse: PCIe, EMIF, USB, MCASP, I2C, (MC)SPI usw.;
    • Objekt orientiert: OOP, OOD, OOA. (Design Patterns);
    • Virtualisierungssoftware: Docker, VirtualBox;
    • Treiberentwicklung: Linux/Windows Kernel Triber Model (Kerneltreibern), LibUIO;
    • Multi-/Cross-platform Entwicklung: POSIX, QT, QP, Boost, ACE; GNU Autobuildtools, CrossCompile Toolchains;
    • Linux tools: GNU Entwicklungsumgebung, Scriptsprachen;
    • Design-Methoden und Werkzeuge: UML 2.0, MDD, SysML, Enterprise Architect, QP;
    • Netzwerkprotokolle: EtherCAT, SORTE, UDP, TCP/IP, SIP/RTP/RTCP, Sockets;
    • Datenbanken: MySQL, SQLite, Oracle(PL/SQL), NonSQL DBs;
    • Testing Frameworks und Werkzeuge: TDD, NUnit, CPPUnit/CxxTest, MockPP;
    • Agile Methodologie: SCRUM, KANBAN;
    • Quellkode-Kontrolle: GIT (sowie GitLab + Redmine + CI, BitBucket + Jira), TFS, VSS, CVS, SVN;
    • Messtechnik: Digital Oszilloskop, Logic Analyzers, Multimeter etc.

    Betriebssysteme

    Dos
    Echtzeitbetriebssysteme
    MS-DOS
    Novell
    RTOS (Real Time OS)
    IntervalZero RTX, VxWorks, RTLinux, RTAI/RTNET
    Unix
    VxWorks
    Windows
    Linux
    Bash Shell


    Programmiersprachen

    Assembler
    C
    ANSI C (mehr als 15 jahren)
    C#
    (mehr als 3 jahren) WPF, MVVM
    C++
    C++(mehr als 15 jahren), ACE, Boost, QT
    Imake, GNU-Make, Make-Maker etc...
    GNU Autobuild Tools(Autoconf, Automake etc.)
    Java
    >3 Jahren
    JavaScript
    MATLAB / Simulink
    Pascal
    Perl
    PL/SQL
    Python
    Qt
    Ruby
    Scriptsprachen
    Shell
    ASM
    >10 Jahren
    Bash Shell

    Datenbanken

    Access
    BTrieve
    MS SQL Server
    MySQL
    ODBC
    Oracle
    SQL
    SQLite
    PostgreSQL

    Datenkommunikation

    Bus
    Ethernet
    Internet, Intranet
    ISO/OSI
    Novell
    SMTP
    SNMP
    TCP/IP
    Voice
    Windows Netzwerk
    Winsock

    Hardware

    Bus
    CAN, EtherCAT, I2C, SPI
    Digital
    Digitale Signalprozessoren
    Analog Devices Blackfin
    Echtzeitsysteme
    IntervalZero RTX, VxWorks, RTLinux, RTAI/RTNET, uC/Linux
    embedded Systeme
    ARM 11, ARM Cortex M0/3
    Mikrocontroller
    Atmel AVR
    PC
    x86
    PLD, FPGA
    Altera CycloneII(NIOS II), Xilinx
    Scanner
    ScanLab intelliSCAN

    Berechnung / Simulation / Versuch / Validierung

    Stateflow
    UML 2.0 StateCharts, Simulink, Enterprise Architect, QM

    Design / Entwicklung / Konstruktion

    MS Visual Studio 2008 - 2013
    Eclipse
    intellij Idea

    Branchen

    Branchen

    • Embedded Software Entwicklung
    • Echtzeit Systeme(RTOS)
    • Medizintechnik
    • Telekommunikation

    Einsatzorte

    Einsatzorte

    München (+150km)
    möglich

    Projekte

    Projekte

    4 Jahre 8 Monate
    2019-09 - 2024-04

    RTC-X (Scanner Realtime Controller Gen. X)

    Embedded/Realtime Softwareentwickler Software und Programmiersprachen: TI RTOS (processor-sdk-rtos-am65x) C/C++ PRU ASM ...
    Embedded/Realtime Softwareentwickler

    RTC-X (Scanner Realtime Controller Gen. X) ? Steuerplatine des Scanners der Generation X

    • Entwicklung der Firmware für ICSSG PRU in ASM;
    • Entwicklung von Embedded-Software für den Betrieb auf Bare-Metal ARM Cortex A53 sowie unter der Kontrolle von TI RTOS;
    • Implementierung des Protokollstacks SL2-100 (McASP-ähnliches benutzerdefiniertes Protokoll) für ICSSG PRU (PRU-Firmware implementiert in ASM);
    • Portierung des Protokollstacks SORTE (Simple Open Real-Time Ethernet) für ICSSG_PRU von AM335x auf AM65xx (PRU-Firmware implementiert in ASM);
    • Optimierung/Refactoring und weitere Entwicklung des Protokollstacks SORTE unter Verwendung neuer Funktionsblöcke von ICSSG PRU, implementiert in der Architektur AM65xx;
    • Synchronisierung von SORTE und EtherCAT, die auf benachbarten ICSSGs laufen;
    • Forschung und Implementierung neuer Methoden zur Synchronisation von Netzwerkgeräten SORTE unter Berücksichtigung der physikalischen Eigenschaften und funktionalen Merkmale von PHY, RGMII, PRU.
    • Untersuchung des Betriebs und Vorbereitung der Konfiguration für Synchronizer and Jitter Cleaner LMK5B12204;
    • Implementierung der IPC zwischen ICSSG_PRU und Cortex A53-Kernen;
    • Untersuchung der PCIe-Leistung und Implementierung der IPC zwischen PRU und ARM SoC AM65xx einerseits und Laser Controller Card auf Basis von FPGA SmartFusion2 andererseits;
    • Erstellung technischer Dokumentation;


    Software und Programmiersprachen: 

    TI RTOS (processor-sdk-rtos-am65x), CCS, Twincat/EtherCat


    Hardware: 

    SOC AM65xx/AM65x IDK, Cortex A53, ICSSG PRU, PHY DP83867, Synchronizer and Jitter Cleaner LMK5B12204, FPGA Microsemi IGLOO2/SmartFusion2, PCIe, AXI,


    SRX (Synchronous Realtime eXchange) ? Kundenspezifisches, industrielles EchtzeitEthernet-Protokoll

    • Entwicklung für FPGA Cyclone V mit SpinalHDL
    • Forschung und Entwicklung von Methoden zur Messung der Signalverzögerungen / der Laufzeit von Datenpaketen zwischen Geräten im SRX-Netzwerk unter Verwendung des Clock Synchronizer AD9543
    • Entwicklung von Synchronisationsmethoden für Geräte im SRX-Netzwerk unter Berücksichtigung der funktionalen und physischen Eigenschaften von PHY, RGMII, FPGA usw


    Software und Programmiersprachen: 

    Verilog/SpinalHDL, Quartus, Simulink


    Hardware: 

    FPGA Cyclone V, Clock Synchronizer and Jitter Cleaner AD9543

    Quartus Simulink Code Composer Studio Libero TIRTOS ARM Cortex
    Software und Programmiersprachen: TI RTOS (processor-sdk-rtos-am65x) C/C++ PRU ASM VHDL Python Verilog/SpinalHDL Twincat/EtherCat; Hardware: SOC AM65xx/AM65x IDK Cortex A53 ICSSG PRU PHY DP83867 Synchronizer and Jitter Cleaner LMK5B12204 FPGA Microsemi IGLOO2/SmartFusion2 PCIe AXI
    Scanlab GmbH
    Puchheim, Oberbayern
    8 Monate
    2019-01 - 2019-08

    Steuerung der elektronischen Komponenten des AF (atomic force) Mikroskops

    Embedded/Realtime Softwareentwickler C/C++ C# (.NET WPF ...
    Embedded/Realtime Softwareentwickler

    neaCore ist eine Echtzeitanwendung zur Steuerung der elektronischen Komponenten des AF (atomic force) Mikroskops

    • Aktualisierung von Echtzeit-Kernel Komponenten und Treibern.
    • Entwicklung und Test neuer Funktionen gemäß den technischen Anforderungen.

    neaGUI ist eine grafische Benutzeroberfläche zur Interaktion mit dem Mikroskop

    • Entwicklung und Test neuer Komponenten der grafischen Benutzeroberfläche

    NeaScope
    C/C++ C# (.NET WPF MVVM) Mono RT Linux
    Neaspec GmbH
    Haar bei München
    2 Jahre
    2017-01 - 2018-12

    Augmented- und Virtual-Reality-Anwendungen für Unternehmen und Automatisierung

    Teamleiter / Softwareentwickler fu?r VR- und AR-Anwendungen C/C++ C#/.Net Mixed Reality Toolkit + Microsoft Sharing Service ...
    Teamleiter / Softwareentwickler fu?r VR- und AR-Anwendungen

    Als Teamleiter bin ich für die Entwicklung, Testen und Implementierung der folgenden Projekte verantwortlich:


    Project: CandyStore

    Geschäftsplanung Software für ein deutsches Großhandelsunternehmen für Lebensmittel, Getränke, Tabakwaren, Telekommunikation und Non-Food.

    Die Hauptfunktionen der Anwendung sind:
    • Schnelle und genaue Messung des Raumes / Arbeits - / handelsraumes und speichern als Plan;
    • Innenarchitektur des Raumes. Zuweisen / ändern der Farbe (Materialien) von Wänden, Boden, Decke,
    • dekorationsplatten, hinzufügen von Dekorelementen;


    Projekt: HeavyFrame Maintenance

    Die Anwendung wurde für einen der weltweit führenden Werkzeugmaschinenhersteller entwickelt und dient der Verwaltung der Wartung von Werkzeugmaschinen im Unternehmen.

    Die Hauptfunktionen der Anwendung sind:
    • Bereitstellung von Informationen u?ber Fehler in Form von Hologrammen, die u?ber realen Knoten und Baugruppen liegen;
    • Bereitstellung visueller Anweisungen fu?r den Bediener in Form einer Reihe von Maßnahmen zur Fehlerbehebung/Wartung;
    • Foto- und Videoaufzeichnung der Tätigkeiten des Bedieners und Speicherung des Protokolls in der Firmendatenbank;


    Project: HeavyFrame Assistent
    Die Hauptfunktionen der Anwendung sind:

    • Schulung des Betriebspersonals in den Grundlagen der Bedienung und Wartung von Werkzeugmaschinen, zertifizierung der Mitarbeiter;


    Project: Truck Configurator

    Online-3D-Konfigurator fu?r Anbaugeräte und Zubehör fu?r Lkw und Nutzfahrzeuge

    Unity 3D OpenCV Blender Microsoft HoloLens Windows Mixed Reality headsets iOS(mit ARKit) usw
    C/C++ C#/.Net Mixed Reality Toolkit + Microsoft Sharing Service WebGL/WebVR Azure Cloud Services ARKit ARCode Stateless FSM Git/Bitbucket Jira. Unity 3D + Unity Networking Mixed Reality Toolkit + Microsoft Sharing Service Blender OpenCV Jira
    C1 Technologies GmbH
    München
    1 Jahr
    2016-01 - 2016-12

    Softwareentwicklung

    Softwareentwickler
    Softwareentwickler
    Headnex GmbH
    1 Jahr
    2015-01 - 2015-12

    diverse Projekte

    Embedded Softwareentwickler C/C++ Embedded Linux IBM Rational Rhapsody 8.1 ...
    Embedded Softwareentwickler
    E.COR (Elevator Controller) 
    • Implementierung von neuen Sicherheitsanforderungen (u.a. in Notfällen sichere Evakuierung);
    • Implementierung von Selbsttests aller installierten Komponenten; Realisierung eines ?Safe Operation Mode? für die gesamte Anlage, falls mindestens eine Komponente nicht akzeptiert wird.
    • Implementierung einer ?Remote Update? Funktion für die Firmware über CAN; (Flashupdate RPI über MHC)
    • Implementierung der Echtzeit System Überwachung und Protokollierung; (Laufzeitüberwachung)
    • Implementierung einer Sicherheitskreisanalyse (mit unterschiedlichen landesspezifischen ?Safety Chains?), die den Aufzug außer Betrieb setzt, wenn eine ?Safety Chain? unterbrochen ist;
    • Implementierung neuer Sicherheitsanforderungen im Wartungsmodus


    Projekt: BlueBox

    VoIP Notrufsystems mit autarker Hardware, außerdem werden Nutzungsstatistiken generiert (wie eine Blackbox).

    • Implementierung eines Linux Treibers damit BlueBox bei Stromausfall auf Batteriebetrieb schalten kann
    • Implementierung einer lokalen Datenbank mit Nutzungsstatistik
    • Implementierung einer Synchronisierung der lokalen Datenbank mit Microsoft Azure Cloud

    IBM Rational Rhapsody 8.1 Enterprise Architect Perforce Eclipse C/C++ Embedded Linux LevelDB (NoSQL Databank von Google) Microsoft Azure
    C/C++ Embedded Linux IBM Rational Rhapsody 8.1 Enterprise Architect Perforce Eclipse usw LevelDB (NoSQL Databank von Google) Microsoft Azure
    ThyssenKrupp Aufzüge GmbH
    4 Monate
    2014-09 - 2014-12

    ExcimerRT für Excimier Laser Workstation, PGS (Pattern Generator Software) für Victus Femtosecond Laser Platform.

    Senior Softwareentwickler C/C++ RTLinux Debian ...
    Senior Softwareentwickler

    ExcimerRT für Excimier Laser Workstation

    Laser Workstation ist ein Medizinisches Gerät für Augenlaser Behandlungen. Alle elektronischen Komponenten in der Workstation (wie die Laserquelle, Eye Tracking usw.) werden von ExcimerRT gesteuert. ExcimerRT ist eine Echtzeitsoftware, die auf dem Windows Subsystem RTX von IntervalZero läuft.

    Als Mitglied des Projektteams verantwortlich für:

    • Integration von verschiedene Hard- und Softwarekomponenten in einem einzigen System;
    • Design, Entwicklung, Testen und Integration von Echtzeit Windowsgerätetreibern;
    • Implementierung der StateMaschine(Enterprise Architect, UML 2.0/StateCharts +
      Codegenerierung);
    • Design, Entwicklung, Testen und Integration von der Kommunikations-Schnittstelle zwischen der
      Echtzeitsoftware und Windows Applikationen;
    • Erstellen von Design-Dokumenten(V-Model, ISO 62304);
    • Unterstützung bei der Verifikation und Validation


    Projekt: PGS (Pattern Generator Software) für Victus Femtosecond Laser Platform

    Victus Laser Workstation ist ein Medizinisches Gerät für Augenlaser Behandlungen. PGS ist eine Software die eine 3D Laser Puls Matrix berechnet

    Als Mitglied des Projektteams verantwortlich für:

    • PGS von Linux nach Windows Portierung, Refactoring und Testen(C++/C#, CppUnit/NUnit);
    • Design, Entwicklung, Testen und Integration von neuen Behandlungen wie LensFragmentation und Capsulotomy(Matlab + 3D visualisierung, CppUnit/NUnit);
    • Weiterentwicklung, Testen und Refactoring von PGS(MS Visual Studio, C++/C#, NUnit);
    • Unterstützung bei der Verifikation und Validation von PGS


    Projekt: Lascon (Laser Controller) für Femtosecond Laser Platform

    Femtosecond Laser Platform Laser Workstation ist ein Medizinisches Gerät für Augenlaser Behandlungen

    Als Mitglied des Projektteams verantwortlich für:
    • Lascon triber von RTLinux nach RTAI portirung und Testen (GNU Autotoos, GDB, Python); Weiterentwicklung, Testen und Refactoring von Lascon Triber( Eclipse/Kdevelop; C/C++; ACE);
    • Unterstützung bei der Verifikation und Validation(V-Model, ISO 62304)

      C/C++/C# WPF IntervalZero RTX Matlab MS VisualStudio TFS UML Enterprise Architect Matlab NUnit
      C/C++ RTLinux Debian RTAI/RTNET KDevelop SVN Python GNU Plot usw. C#/C++ MS Visual Studio TFS Matlab NUnit
      Bausch + Lomb | Technolas Perfect Vision
      4 Jahre 6 Monate
      2006-04 - 2010-09

      IN (Intelligent Network) System

      C++ Softwareentwickler C/C++ STL/boost VC2003 - 2008 ...
      C++ Softwareentwickler
      IN (Intelligent Network) System, basiert auf VoiceXML & CCXML Interpreter für Festund Mobile-Netz Anbieter, Interactive Voice Response (IVR). Es waren die folgende Mehrwehrdienste (VAS) realisiert: Televoting, Prepaid, Number Portability, Call Distribution, Call Queueing.
      Als Mitglied des Projektteams verantwortlich für:
      • Implementierung von verschiedenen, plattformübergreifenden Common Libraries für das Entwicklungssystem;
      • Portierung und Angleichen von zuvor implementierten Libraries an die 64-bit Linux Plattform;
      • Implementierung eines VoiceXML / CCXML Interpreters;
      • Implementierung eines JavaScript Interpreters;
      • Analyse und Untersuchung von Third Party Software;
      • Implementirung von VOIP Comminication
      C/C++ STL/boost VC2003 - 2008 KDevelop SourceSafe/SVN/SourceOffsite XML/XSL/SOAP/VoiceXML/CCXML JavaScript SIP RTP Oracle ACE(The Adaptive Communication Environment) CxxUnit/MockPP
      European Computer Telecoms AG, München
      1 Jahr 5 Monate
      2004-10 - 2006-02

      EtherCAT Master SDK

      Embedded Softwareentwickler C/C++
      Embedded Softwareentwickler C/C++

      Der EtherCAT Master SDK ermöglichermöglicht es, die EtherCAT Master-Funktionen auf verschiedenen Software- und Hardware-Plattformen anzuwenden und vereinfacht die Entwicklung auf EtherCAT Spezifikationen beruhenden Komponenten. EtherCAT ist ein offenes Echtzeit Ethernet-Netzwerk, das ursprünglich von Beckhoff entwickelt wurde.Es setzt neue Standards für Echtzeit Leistungen und Topologie- Flexibilität. Im Januar 2006 nahm ich als technischer Experte für Visutech System Ltd. am ersten EtherCAT Plug  Fest (Kirchheim am Teck) teil

      Als Mitglied des Projektteams verantwortlich für:

      • Design und Entwicklung von einem auf ANSI C basierenden und OS unabhängigen, zuverlässigen Hochleitungs-Kern für EtherCAT Master SDK, der störsichere Logik beinhaltet, wie z.B. Prozessdatenverarbeitung (Status-Management, zyklischer Austausch), Mailbox Kommunikationsprotokolle (CANOpen over EtherCAT, Ethernet over EtherCAT, File Access over EtherCAT) und EtherCAT spezifische Funktionen;
      • Design und Entwicklung des Network Layer Protokolls unter Benutzung des RTNet Hard Real-Time Datenübertragungsprotokolls Stack für Linux;
      • Entwicklung des Transport Layer Protokolls für die Datenfluss-Kontrolle im EtherCAT Netzwerk-Segment, basierend auf EtherCAT Master SDK unter Benutzung von RTAI/LXRT für Linux;
      RTAI 3.1/3.2 RTNet Compuware DriverStudio Matlab/Simulink VC.NET KDevelop XML/XSD eXpat GDB/KDB Debian Linux Windows 2000 Windows Mobile 4 Visual Source Safe C/C++
      Visutech System Ltd.
      Minsk.
      1 Jahr 8 Monate
      2003-02 - 2004-09

      Software Suite für eine optisch-elektronische Prüfplatte

      Embedded Software Entwickler C/C++
      Embedded Software Entwickler C/C++

      Software Suite für eine optisch-elektronische Prüfplatte (Prüfanlage), die das Verhalten von fliegenden Objekten simulieren soll (Flugzeuge, Hubschrauber etc.). Die ganze Anlage besteht aus einer Kernanwendung zur Kontrolle der Testanlage, einer Logik um die Ergebnisse zu speichern und zu verarbeiten, sowie einer Front-End Anwendung zum Visualisieren.

      Als Mitglied des Projektteams verantwortlich für:

      • Design und Entwicklung von real-time Treibern für die Verbindung zwischen Host und Prüfplatte unter Benutzung von Venturcom RTX;
      • Design und Entwicklung von Verbindungsprotokollen;
      • Design und Entwicklung des Kommunikationssytems zwischen realtime und non-realtime Untersystemen unter Benutzung von Venturcom RTX;
      • RTLinux Untersuchung und Analyse;
      • Portierung von Software von Windows/RTX zu RTLinux
      Matlab/Simulink Venturcom RTX 4.3/5.5 RTLinux Compuware DriverStudio VC++ 6.0 STL WTL DDK/WDM GDB RedHat Linux Windows NT/2000 Visual Source Safe C/C++
      JSC Peleng
      Minsk

      Aus- und Weiterbildung

      Aus- und Weiterbildung

      2000 ? 2003

      Weissrussische Staatsuniversität für Informatik und Radioelektronik.
      Fakultät für Computersysteme und -Netzwerke.
      Abschluss: Bachelor's degree

      1995 ? 2000
      Staatliche Fachhochschule für Radiotechnik Minsk,
      Fakultät für Softwaretechnik

      Position

      Position

      Ziel: Eine Position als Softwareentwickler, bei der es gefragt ist, gesammelte Erfahrungen und analytisches Denken zur Lösung der gestellten Aufgaben einzusetzen, sowie die Möglichkeit zu haben, neue Kenntnisse zu erwerben

      Kompetenzen

      Kompetenzen

      Produkte / Standards / Erfahrungen / Methoden

      Profil

      • Schwerpunkte sind Realtime und Embedded Systeme
      • Langjährige Erfahrung in der Entwicklung von Echtzeit- und Embedded- Software mit den Programmiersprachen ASM, C/C++, Python usw
      • Langjährige Erfahrung in der Entwicklung von Embedded und Realtime Software für ARM, einschließlich Entwicklung für Bare-Metal, RTOS und Linux, sowie hybride Anwendungen für Multicore-CPU (AMP/Asymmetric Multiprocessing)
      • Praktische Erfahrung in der Entwicklung und Optimierung von Algorithmen der digitalen Signalverarbeitung unter Verwendung von Advanced SIMD/NEON und Floating-point Extensions
      • Mehrjährige Erfahrung in der Entwicklung für Programmable Real-time Unit (PRU) - ein spezialisierter Echtzeit-Coprozessor der ARM Sitara-Familie von Texas Instruments
      • Gute Erfahrung in der Entwicklung für FPGA, wie Intel Cyclone II und Cyclone V,sowie Microsemi IGLOO2 und SmartFusion2
      • Mehrjährige Erfahrung in der Entwicklung von industriellen HochgeschwindigkeitsNetzwerkprotokollen
      • Praktische Erfahrung in der Implementierung von Windows und Linux Kerneltreibern
      • Langjährige praktische Erfahrung in der objekt-orientierten Analyse (OOA), Design (OOD) und Programmierung (OOP) von Systemsoftware und Systemkomponenten
      • Gute Praktische Erfahrung mit dem Einsatz der Programmiersprache C# und Technologien wie .NET, WPF, WCF, MVVM
      • Starke Prüfungsfähigkeiten inklusive NUnit, CPPUnit/CxxTest, MockPP usw.
      • Exzellente Kommunikation auf Englisch sehr gut auf Deutsch, Verbindlichkeit, Teamfähigkeit, Eigenständige Arbeitsweise


      Technische Fähigkeiten

      • Embedded- und Echtzeit Programmiersprachen: ASM (>10 Jahren), C/C++ (>15 Jahren), Java (>3 Jahren);
      • Skript-Programmiersprachen: Python, JavaScript , Bash Shell usw.;
      • Anwendungsentwicklung: C#, .NET (WPF, MVVM), JavaScript/NodeJS, Electron;
      • Betriebssysteme: Linux (Arch, Ubuntu, LFS usw), Windows;
      • Echtzeit Umgebung: RT Linux, TI RTOS, FreeRTOS, IntervalZero RTX;
      • ARM: Cortex M*, Cortex R*, Cortex A9/A53/A72, TI Sitara Family SOCs ;
      • Echtzeit RISC CPU: ICSS/PRU;
      • FPGA: Intel/Altera Cyclone II/V, Microsemi IGLOO2, SmartFusion2;
      • HDL: VHDL, Verilog, SpinalHDL, Modelsim;
      • Datenbusse: PCIe, EMIF, USB, MCASP, I2C, (MC)SPI usw.;
      • Objekt orientiert: OOP, OOD, OOA. (Design Patterns);
      • Virtualisierungssoftware: Docker, VirtualBox;
      • Treiberentwicklung: Linux/Windows Kernel Triber Model (Kerneltreibern), LibUIO;
      • Multi-/Cross-platform Entwicklung: POSIX, QT, QP, Boost, ACE; GNU Autobuildtools, CrossCompile Toolchains;
      • Linux tools: GNU Entwicklungsumgebung, Scriptsprachen;
      • Design-Methoden und Werkzeuge: UML 2.0, MDD, SysML, Enterprise Architect, QP;
      • Netzwerkprotokolle: EtherCAT, SORTE, UDP, TCP/IP, SIP/RTP/RTCP, Sockets;
      • Datenbanken: MySQL, SQLite, Oracle(PL/SQL), NonSQL DBs;
      • Testing Frameworks und Werkzeuge: TDD, NUnit, CPPUnit/CxxTest, MockPP;
      • Agile Methodologie: SCRUM, KANBAN;
      • Quellkode-Kontrolle: GIT (sowie GitLab + Redmine + CI, BitBucket + Jira), TFS, VSS, CVS, SVN;
      • Messtechnik: Digital Oszilloskop, Logic Analyzers, Multimeter etc.

      Betriebssysteme

      Dos
      Echtzeitbetriebssysteme
      MS-DOS
      Novell
      RTOS (Real Time OS)
      IntervalZero RTX, VxWorks, RTLinux, RTAI/RTNET
      Unix
      VxWorks
      Windows
      Linux
      Bash Shell


      Programmiersprachen

      Assembler
      C
      ANSI C (mehr als 15 jahren)
      C#
      (mehr als 3 jahren) WPF, MVVM
      C++
      C++(mehr als 15 jahren), ACE, Boost, QT
      Imake, GNU-Make, Make-Maker etc...
      GNU Autobuild Tools(Autoconf, Automake etc.)
      Java
      >3 Jahren
      JavaScript
      MATLAB / Simulink
      Pascal
      Perl
      PL/SQL
      Python
      Qt
      Ruby
      Scriptsprachen
      Shell
      ASM
      >10 Jahren
      Bash Shell

      Datenbanken

      Access
      BTrieve
      MS SQL Server
      MySQL
      ODBC
      Oracle
      SQL
      SQLite
      PostgreSQL

      Datenkommunikation

      Bus
      Ethernet
      Internet, Intranet
      ISO/OSI
      Novell
      SMTP
      SNMP
      TCP/IP
      Voice
      Windows Netzwerk
      Winsock

      Hardware

      Bus
      CAN, EtherCAT, I2C, SPI
      Digital
      Digitale Signalprozessoren
      Analog Devices Blackfin
      Echtzeitsysteme
      IntervalZero RTX, VxWorks, RTLinux, RTAI/RTNET, uC/Linux
      embedded Systeme
      ARM 11, ARM Cortex M0/3
      Mikrocontroller
      Atmel AVR
      PC
      x86
      PLD, FPGA
      Altera CycloneII(NIOS II), Xilinx
      Scanner
      ScanLab intelliSCAN

      Berechnung / Simulation / Versuch / Validierung

      Stateflow
      UML 2.0 StateCharts, Simulink, Enterprise Architect, QM

      Design / Entwicklung / Konstruktion

      MS Visual Studio 2008 - 2013
      Eclipse
      intellij Idea

      Branchen

      Branchen

      • Embedded Software Entwicklung
      • Echtzeit Systeme(RTOS)
      • Medizintechnik
      • Telekommunikation

      Vertrauen Sie auf Randstad

      Im Bereich Freelancing
      Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

      Fragen?

      Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

      Das Freelancer-Portal

      Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.