Softwareentwickler (C++, Qt), Software-Architekt, Projektleiter
- Verfügbarkeit einsehen
- 0 Referenzen
- 50‐80€/Stunde
- 85586 Poing bei München
- auf Anfrage
- ru | de | en
- 22.01.2024
Kurzvorstellung
Zahlreiche Projekte für Kunden im deutschsprachigem Raum, Europa und USA.
Windows- und Cross-Plattform Entwicklung mit Qt, Netzwerke, Kommunikation.
Qualifikationen
Projekt‐ & Berufserfahrung
11/2021 – 9/2023
Tätigkeitsbeschreibung
Das Team entwickelte ein Plattform für sichere Kommunikations mit Post-Quantum-Verschlüsselung. Das Platform beinhaltet mobile und Desktop-Anwendungen, Kommunikationsserver sowie Verwaltungsportal.
Entwicklung einer Desktop-Bedienoberfläche für Windows, MacOS und Linux mit Qt 5 und QML.
Entwicklung der Kommunikationsmodule unter Verwendung verschiedener kryptografischer Protokolle.
Entwicklung eines leistungstarlkes Moduls für Nachrichtenverarbeitung.
Teilnahme an der Entwicklung von mobilen Anwendungen (iOS, Android).
Teilnahme an UI/UX-Design, Entwicklng von Spezifikationen und Dokumentation.
Teilnamhe an der Entwicklung der Systemarchitektur.
SQL, Apple Mac Systems, Microsoft Windows (allg.), C++, Linux Entwicklung, Qt (Software)
4/2021 – 1/2022
Tätigkeitsbeschreibung
Entwicklung einer VPN Anwendung für Windows mit C++, Qt 5 und VPN API.
Portierung der Anwendung für MacOS, Anpassung des Quellcodes für Multiplatform-Kompatibilität.
Anpassung der MacOS-Anwendung für AppStore.
Apple Mac Systems, Microsoft Windows (allg.), C++, Qt (Software), Visual C++
1/2021 – 3/2021
Tätigkeitsbeschreibung
Die vor einigen Jahren entwickelte Applikation ist Teil eines Datenerfassungssystems für Hochleistungssportler, vor allem im Rudern-Bereich. Das System enthält verschiedene Sensoren zur Erfassung von Kraft, Geschwindigkeit, Position von Paddel usw. Die Messdaten werden an das zentrale Erfassungsgerät übertragen, dort gespeichert und ggf. drahtlos an das Laptop des Trainers weitergeleitet.
Die genannte Applikation dient zur Einstellung, Funktionskontrolle und Wartung von diesen Geräten. Die baut Verbindung zu einem Gerät auf, ruft Parameter und Messdaten ab und ermöglicht manuelle Kontrolle und Einstellung. Die Kommunikation mit Geräten kann über seriellen Port, Bluetooth oder Wi-Fi (TCP) erfolgen.
Die Applikation wurde ursprünglich für Windows entwickelt. Im Rahmen einer Systemerweiterung sollte sie auf mobile Geräte portiert werden, um den Betrieb unter iOS und Android zu ermöglichen. Nach einer Analyse der verfügbaren Technologien wurde Qt als Plattform für die Portierung ausgewählt.
Die Überarbeitung des bestehenden Quellcodes ist relativ einfach gewesen, da betriebssystemspezifische Funktionen auch im alten Code sauber getrennt waren. Das einzige Problem war der Zugriff auf COM-Port unter Android, weil es normalerweise Root-Rechte erfordert. Das Problem wurde durch den Einsatz einer in Java geschriebenen Bibliothek gelöst. Für die Einbindung von Java-Code in die C++-Anwendung kam die JNI-Schnittstelle in Einsatz.
C++, Qt (Software), Telekommunikation / Netzwerke (allg.), Microsoft Visual Studio
4/2020 – 12/2020
Tätigkeitsbeschreibung
Die Teststrecke besteht aus mehreren Bereichen, die durch Schranken mit Kartenlesern und Bedienterminals abgesichert sind. Außerdem sind zahlreiche Sicherheitseinrichtungen (Verkehrsdetektoren, Wechselverkehrszeichen, Warnblinker) und Informationstafel installiert.
Der Zentralrechner der Teststrecke übernimmt die Kontrolle der Ein- und Ausfahrt, Steuerung der Informations- und Warneinrichtungen sowie Protokollierung von Benutzern, Nutzungsarten und -Dauer. Der Zentralrechner ist über verschiedene Kommunikationswege mit zahlreichen Endgeräten verbunden.
Aus der Sicht der Software-Architektur besteht das System aus dem Zentraldienst und der Bediensoftware an den Arbeitsplätzen. Der Zentraldienst funktioniert vollautomatisch gemäß der eingestellten Parameter und Betriebsart. Dabei kommuniziert der Zentraldienst über diverse Kommunikationswege mit Endgeräten, sendet Befehle und ruft den aktuellen Status ab. Es werden verschiedene TCP-basierte und serielle Protokolle (Modbus usw.) eingesetzt.
Der Zentraldienst ist als Windows-Dienst installiert, hat keine Bedienoberfläche und funktioniert vollautomatisch in 24/7 Betrieb. Für manuelle Steuerung, die Kontrolle der Funktion und Einstellung der Parameter sind mehrere Arbeitsplätze mit Bedienoberfläche vorgesehen. Außerdem ist das System in die IT-Infrastruktur eingebunden, tauscht Daten mit einem SAP-Server aus und nimmt die über Telefonanlage ausgelöste Befehle (bspw. Unfallmeldungen) entgegen.
Die Software wurde in C++ unter hoher Nutzung von Win32-API und objektorientierten Technologien entwickelt. Die Bedienoberfläche nutzt außerdem die MFC-Bibliothek und HTML-basierte Datenausgabe.
Die Projektrollen umfassten die Abstimmung der Anforderungen mit dem Endkunden, Entwicklung der Software-Architektur, Erstellen von Programmcode, Dokumentation und Inbetriebnahme vor Ort.
C++, HTML, Microsoft Foundation Classes (MFC), Microsoft Windows (allg.), Objektorientierte Software-Entwicklung, Projekt-Dokumentation, System Architektur, Technische Dokumentation, Telekommunikation / Netzwerke (allg.)
7/2017 – 4/2020
Tätigkeitsbeschreibung
Plattformunabhängige Anwendung für Einstellung, Wartung und Diagnose von Sensoren für Fahrzeugortung und Flottenmanagement
Die Firma entwickelt und produziert verschiedene Typen von Sensoren für den Einsatz in Systemen für Fahrzeugortung und Flottenmanagement (Treibstoffmenge, Vibration, Beschleunigung usw.). Für die Einstellung, Wartung und Diagnose von derartigen Sensoren ist eine mobile Anwendung erforderlich. Sie baut Verbindung zum Sensor über Kabel bzw. drahtlos auf, ruft die Parameter und die aktuellen Messwerte auf und zeigt sie auf der Bedienoberfläche. Es werden serielle Kommunikation und Bluetooth unterstützt.
Die Anwendung wurde in C++ unter dem Einsatz von Qt entwickelt und ist unter Windows, iOS und Android lauffähig.
Android, C++, iOS, Microsoft Windows (allg.), Qt (Software), Telekommunikation / Netzwerke (allg.), Microsoft Visual Studio
1/2017 – 7/2017
Tätigkeitsbeschreibung
Das System erfasst Daten von über 100 Wetterstationen, die über Mobilfunknetz angebunden sind. Da die Wetterstationen aus historischen Gründen nur serielle Datenübertragung unterstützen, erfolgt die Kommunikation über Protokollwandler (MOXA) und Datentunnel. Aus der Serversicht läuft die Datenübertragung über virtuelle COM-Ports, jeweils ein Port für jede Wetterstation. Es werden unterschiedliche Typen von Wetterstationen mit eigenen proprietären Protokollen eingesetzt.
Die auf dem Server installierte Software nimmt eingehende Verbindungen entgegen, wertet Daten aus, führt Plausibilitätsprüfungen durch und leitet die Wetterdaten über ein anderes TCP-basiertes Protokoll an das übergeordnete System weiter.
Das Datenerfassungssystem ist als Windows-Dienst installiert, hat keine Bedienoberfläche und funktioniert vollautomatisch in 24/7 Betrieb. Alle Parameter werden aus einer XML-Datei eingelesen.
Die Software wurde in C++ unter hoher Nutzung von Win32-API und objektorientierten Technologien entwickelt. Die Projektrollen umfassten die Abstimmung der Anforderungen mit dem Endkunden, Entwicklung der Software-Architektur, Erstellen von Programmcode, Dokumentation und Inbetriebnahme vor Ort.
C++, Git, Microsoft Windows (allg.), Objektorientierte Software-Entwicklung, Projekt-Dokumentation, Software Architecture, Telekommunikation / Netzwerke (allg.), Microsoft Visual Studio, XML
Ausbildung
St. Petersburg
Weitere Kenntnisse
Windows- sowie Cross-Plattform Entwicklung (mit Qt).
Tiefe Kenntnisse von Kommunikations- und Netzwerktechnologien, Hardwareschnisstellen und Anbindung von externen Geräten.
Erfolgreiche Projekte für Kunden im deutschsprachigem Raum, Europa und USA.
Persönliche Daten
- Deutsch (Fließend)
- Englisch (Fließend)
- Russisch (Muttersprache)
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden