Softwareentwickler C/C++, C#
- Verfügbarkeit einsehen
- 0 Referenzen
- 87€/Stunde
- 75335 Dobel (Württemberg)
- National
- de | en
- 01.02.2024
Kurzvorstellung
Qualifikationen
Projekt‐ & Berufserfahrung
6/2022 – 3/2023
Tätigkeitsbeschreibung
Fehlersuche und Stabilisierung mit partiellem Redesign einer
vorhandenen sicherheitskritischen Software-Komponente des
Instrumenten-Cluster für die zukünftigen Fahrzeuglinien eines deutschen
Automobilherstellers. Implementation von Unit-Tests. Die für die
Verarbeitung und Synchronisation von Laufzeit kritischen Signalen für
Warn- und Statusmeldungen zuständige Software-Komponente wurde in
Teilen neu implementiert, sowie in ihrem Laufzeitverhalten optimiert. Die
Entwicklung der Anpassungen und Optimierungen der auf der
ARM-Architektur unter Linux laufenden Komponente wurde mit der
Hochsprache C++ 14 realisiert. Die Implementation der Unit-Tests und
das C++ mocking wurde mit dem GoogleTest Framework realisiert.
Analyse der in DOORS spezifizierten Anforderungen und
Funktionsabläufe erfolgte über VECTOR CANoe, sowie in Form von
Unit-Tests.
C++, Embedded Linux, Git, make (Software)
11/2020 – 5/2022
Tätigkeitsbeschreibung
Entwicklung im Embedded Linux und BOS-Funk Umfeld.
Aufgabenstellung innerhalb des Projektes:
Funktionale Weiterentwicklung eines "Software defined Radio" für die Alarmierung von Behörden und Organisationen mit Sonderaufgaben (BOS) über das Funkrufprotokoll POCSAG.
In einem ersten Schritt wurde das auf einem Xilinx SoC basierende mit Baremetal Programm laufende System auf den Betrieb mit Embedded Linux portiert. In diesem Schritt erfolgte unter anderem die Konfiguration des von Embedded Linux benötigten Devicetree für die PL (FPGA) basierten Devices wie DMA- und GPIO-Controller. Sowie die Anpassung von Build-Scripten für die Erstellung des FSBL, den Linux-Kernel sowie zusätzlich benötigte Kernel Module, welche nicht in dem Standard Kernel enthalten sind. In dem zweiten Schritt wurde die Baremetal Software auf die Plattform Linux portiert. Die von der Programmlogik benötigten Hardware nahen Zugriffe wurden hierbei mit Memory Mapping realisiert. Die in dem ursprünglichen Baremetal Programm benutzten API des Xilinx SoC SDK wurden für die Linux spezifischen Anforderungen in der Programmiersprache C neu implementiert. Es folgte die Umstellung der UART basierten Schnittstelle für die externe Steuerung des Systems und Kommunikation mit diesem über TCP/IP als Transportprotokoll.
ARM-Architektur, C, Embedded Entwicklung / hardwarenahe Entwicklung, Embedded Linux, Embedded Systems, Git, make (Software), TCP/IP, Vivado (Xilinx)
8/2019 – 10/2020
Tätigkeitsbeschreibung
Entwicklung im BOS-Funk Umfeld unter Embedded Linux.
Aufgabenstellung innerhalb des Projektes:
Entwurf und Entwicklung eines Software-Systems für das Routing von BOS-Funk über IP basierte Netzwerke. Audiosignale von auf der BOS-Funktechnik basierenden Geräten werden über analoge Eingänge des auf ARM Cortex-A7 basierenden SOM mittels AD-Wandler digitalisiert und mittels eines Software basierten Codec encodiert. Mittels dem Realtime-Protokoll RTP werden diese Audiostreams dann zu definierten Endpunkten über ein IP-Netzwerk übertragen. Auf den Endpunkten, welche mit demselben Software-System realisiert sind, werden die empfangenen RTP-Daten dekodiert um sie dann über DA-Wandler an die mit diesen Endpunkten verbundene BOS-Funktechnik zu übertragen. Die Implementation der in Echtzeit zu verarbeiteten Audiodaten wurde mit C++ 11 sowie der Bibliothek Boost realisiert.
ARM-Architektur, C++, Embedded Linux, Embedded Systems, Git, UML
12/2018 – 7/2019
Tätigkeitsbeschreibung
Entwicklung im Embedded Linux SBC Umfeld.
Aufgabenstellung innerhalb des Projektes:
Portierung und Erweiterung einer bestehenden Anwendung für die Visualisierung von über das POCSAG-Protokoll übertragene Alarm-Nachrichten in dem Umfeld von Rettungsdiensten. Als HW Plattform kam hierbei der SBC Raspberry PI zum Einsatz. Für dass SBC OS wurde mittels des Framework YOCTO ein Embedded Linux samt Toolchain und cross compile Support erstellt, um die wirtschaftliche Entwicklung der Software auf einem Desktop Host-System zu ermöglichen. Im Zuge der Anpassung auf das neu zu implementierende Bedienkonzept mittels Infrarotfernsteuerung sowie die audiovisuelle Ausgabe über HDMI erfolgte des weiteren eine Portierung der auf QT4 basierenden Anwendung auf die Version 5 des QT-Frameworks.
ARM-Architektur, C++, Embedded Linux, Embedded Systems, Qt
3/2018 – 9/2018
Tätigkeitsbeschreibung
Entwicklung im Automotive / Tuner Umfeld.
Aufgabenstellung innerhalb des Projektes:
Redesign und Entwicklung einer vorhandenen Software-Komponente des Presentation-Controller für die Diagnosefunktionalität eines Infotainment-System. Analyse und Beseitigung von Fehlern in der vorhandenen Diagnose-Komponente.
Die Visualisierung des vorhandenen Komponenten-Modells sowie der Entwurf des neuen Modells wurde in UML 2 realisiert. Die Entwicklung der Komponente wurde mit der Hochsprache C++ 11 realisiert. Der Test der in DOORS spezifizierten Anforderungen der Diagnosefunktionalität erfolgte unter Zuhilfenahme des VECTOR CAN Interface VN1610 und einem Kundenspezifischen CAN-Framework welches die produktionsrelevanten Funktionsabläufe simuliert.
Apache Subversion (SVN), C++, Embedded Linux, Embedded Systems, Git, Linux Entwicklung, UML
6/2015 – 2/2018
Tätigkeitsbeschreibung
Entwicklung im Automotive / Tuner Umfeld.
Aufgabenstellung innerhalb des Projektes:
Design und Entwicklung einer Kommunikationsschicht zwischen Device- und Presentation-Controller für Radio- und TV-Tuner eines Infotainment-System bei vorgegebenen Interfaces.
Die Entwicklung der beiden Komponenten wurde mit C++ und dem Komponentenframework MoCCA realisiert. Der Fokus lag in der Abstraktion der verschiedenen Device Interfaces für die Radio Standards: AM/FM, DAB, DMBA. Sowie die TV Standards: ISDB-T, DVB-T/DVB-T2 und DMBV. Berücksichtigt werden musste hierbei eine starke Asynchronität in der Komponentenkommunikation. Die Erstellung der Dokumentation in Form von Component Design Description (CDD) wurde mit dem UML-Tool Enterprise Architect durchgeführt. Für die automatischen Tests der Komponenten kam ein
kundenspezifisches Testframework zum Einsatz.
Apache Subversion (SVN), C++, Embedded Linux, Embedded Systems, Linux Entwicklung, UML, Windows 7
12/2014 – 5/2015
Tätigkeitsbeschreibung
Integration im Automotive / Tuner Umfeld.
Aufgabenstellung innerhalb des Projektes:
Anpassung / Optimierung der Build-Prozesse für die auf den jeweiligen Plattformen QNX und ITRON basierende Tuner-Software. Durchführung von Smoketests sowie Analyse von Fehlern in der Software.
C++, Embedded Systems, Windows 7
5/2014 – 9/2014
Tätigkeitsbeschreibung
Softwareentwicklung im Automotive / Audio Umfeld.
Aufgabenstellung innerhalb des Projektes:
Erweiterung einer Softwarelösung für das Feintuning und die Übertragung von digitalen Signalfiltern für Automotive Amplifier.
Nach der Analyse und Bestandsaufnahme der vorhandenen Funktionalität des bestehenden Quellcodes wurde die Anpassung der auf C++ und MFC basierenden Windows Anwendung an die neuen Anforderungen des Kunden unter Einsatz des für das MOST150 Interface VN2640 von VECTOR verfügbaren API gelöst.
Windows 7, Windows XP, C++, Microsoft Foundation Classes (MFC), Visual Studio
5/2012 – 3/2014
Tätigkeitsbeschreibung
Komponentenentwicklung im Automotive-Umfeld eines Infotainment Kundenprojektes für die Daimler AG (S-Klasse).
Aufgabenstellung innerhalb des Projektes:
Analyse von Fehlerereignissen, Entwicklung und Implementation von Lösungen um analysierte Fehler zu beseitigen sowie das System zu stabilisieren. Der Schwerpunkt lag hier in der Tuner Domäne insbesondere auf HD, TA, TI und dem Waveband handling zwischen Presentation- / Device-Controller so wie Erstellung / Analyse von MOST-Bus Protokollen unter Verwendung eines OptoLyzer und OptoLyzer-Tools als auch die manuelle Disassemblierung von MOST Protokoll Sequenzen. Ferner die Analyse eines MemoryLeak in der Audio-Video-Tuner Komponente. Zum Einsatz kamen das HBAS interne MoCCA Framework sowie als OS das RTOS QNX.
4/2009 – 2/2012
Tätigkeitsbeschreibung
Entwicklung eines SQL-Datenbank gestützten Systems für Computerunterstützte Übersetzung (CAT).
Schwerpunkt innerhalb des Projektes:
Entwicklung und Implementation eines Algorithmus für die Suche von ßhnlichkeiten für einen benutzerdefinierten Text in vorgegebenen Dokumentenbeständen unter Berücksichtigung von Wort-Vertauschungen sowie Flexionen.
Entwicklung und Implementation eines Algorithmus mit heuristischem Ansatz für das auf einem bestimmten Satz basierende Alignment zwischen zwei Dokumenten von denen eines die Original-Sprache und das andere die Übersetzung manifestiert.
2/2007 – 3/2009
Tätigkeitsbeschreibung
Komponentenentwicklung im Automotive-Umfeld eines Infotainment Kundenprojektes für die Daimler AG (S-Klasse).
Aufgabenstellung innerhalb des Projektes:
Design, Implementation und Bugfixing von HMI-Komponenten mit Schwerpunkt Medienhandling nach Kundenspezifikation. Entwicklung einer HMI-Komponente für die Suche nach Musikstücken über deren Metadaten mittels Fuzzylogik. Entwicklung einer HMI-Komponente für das digitalisieren von Audio-CD Tracks auf die in der Head Unit integrierte Festplatte mit parallelem anspielen des mp3-Stream im Hintergrund sobald ein genügend großer Daten-Puffer von dem jeweiligen analogen Track vorhanden ist. Zum Einsatz kamen ferner das HBAS interne MoCCA Framework sowie als OS das RTOS QNX.
12/2006 – 1/2007
Tätigkeitsbeschreibung
Entwicklung eines COM-Server.
Aufgabenstellung innerhalb des Projektes:
Planung und Realisierung eines COM-Server für die Einbindung der Search-Engine der Software FindWord in fremde Anwendungen. Der COM-Server wurde als Typelibrary entwickelt um es fremden Anwendungen zu ermöglichen die Indizierung von Dokumenten, die Indexverwaltung sowie die Inhaltssuche mittels der Programmlogik von FindWord durchzuführen. Für den Test der Typelibrary wurde ein Testclient in C# / .net entwickelt.
Weitere Kenntnisse
- MS-Visual Studio: 6.0
- MS-Visual Studio .NET 2003 - 2008
- MFC, ODBC, ASP.net
- Crystal Reports
- SQLite
- MySQL
- MS SQL-Server
- Telelogic DOORS
- Perforce
Erfahrungen
- Anwendungsentwicklung: Unter DOS, Win 3.x, 9x, NT 4.0, W2k, WinXP, Win7, ASP.net, QNX.
- Komponentenentwicklung im Automotiv Infotainment Sektor.
- Planung, Realisierung, Administration von WinNT Netzwerken.
Persönliche Daten
- Deutsch (Muttersprache)
- Englisch (Grundkenntnisse)
- Europäische Union
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden