10.03.2025 aktualisiert
Software-Entwickler: C++, Qt, QML
Skills
- C++ (11/14/17/20)
- Kotlin
- JavaScript
- Java
- C#
Bibliotheken/Frameworks/APIs
- Qt5, Qt6, QML
- curl
- jQuery
- Node.js
- Express JS
- B&R Mapp Technologie (Datenbank-Anbindung)
- Boost
- RapidJSON
- .NET
- ASP.NET
- DevExpress
- WinForms
- MFC
- Bootstrap 4
- Spring framework
- Hibernate
- log4j
- spring-test
- junit
- javax.mail
- javax.activation
- commons-fileupload
- Leaflet
- MPAndroidChart
Dokumentbeschreibungssprachen
- HTML & CSS
- XML
- JSON
Datenbanken
- Microsoft Access
- MS SQL Server 2005, 2008, 2017, 2019
- MySQL
- SQLite
- PostgreSQL
- SQL
- T-SQL
Produkte/Standards/Erfahrungen
- Microsoft Visual Studio 2005, 2013, 2015, 2017, 2019
- Qt Creator
- git
- Confluence
- Jira
- Jenkins
- Docker
- Microsoft Visual Studio Code
- CMake
- Conan
- BitBucket
- Android Studio
- Subversion
- gcc
- Clang
- Microsoft SQL Management Studio
- B&R Automation Studio
- Eclipse
- Altova XML Spy
- Maven
- Tomcat 9
- nginx
- Perforce Helix ALM
- Perforce Surround SCM
Testing
- Google Test
- Boost.Test
- JUnit
- Espresso für Android
- UiAutomator
Methodiken
- Objektorientierte Programmierung (OOP)
- Scrum
Betriebssysteme
- Windows 10
- Windows 8
- Windows 7
- Windows XP
- Android
- Linux (u.a. Fedora, Debian, Raspian)
Aus- und Weiterbildung
Studium
10/2006 - 06/2010 Informatik
Abschluss:
Ingenieur
Institution:
Universitatea "Petru Maior" Targu-Mures
Abschlussarbeit:Remote-Zugriff von Android-System auf Windows Desktop (entwickelt mit Java und C#)
Erfahrung
Sprachen
Projekthistorie
Einsatzort: Schweiz, Remote
Rolle: Software-Entwickler
Beschreibung:
Entwicklung einer Programmier-Software mit C++, um Maschinen parallel zur Produktion programmieren zu können.
Entwickelt wurde die Software vollständig mit C++. Die UI wurde mit Qt6 mit QML erstellt. Unit-Tests wurde mit Google Test geschrieben. Ebenso wurde die komplette CI-Pipeline mit Jenkins umgesetzt.
Features:
- Erstellen von neuen und Bearbeiten von bestehenden Programmen
- Hierarchische Programme mit Datenvererbung inkl. der Verwaltung der Beziehungen der Programme untereinander
- Deklarative Beschreibung der Programme
- Dynamische UI, Aufbau aus deklarativer Beschreibung der Programme
- Kommunikation mit den Maschinen per FTP (Programmübertragung)
- Multi-Benutzerbetrieb
- Konfiguration
- Übersetzungsmechanismus zur Unterstützung verschiedener Sprachen
Kenntnisse: C++ (C++20), Qt 6, QML, Curl, FTP, RapidJSON, JSON, spdlog, libfmt
Eingesetzte Produkte: Visual Studio 2019, git, Jenkins, Jira, Artifactory, Conan, Docker, Enterprise Architect
Betriebssysteme: Windows (Entwicklungsumgebung, Zielplattform)
Rolle: Software-Entwickler
Beschreibung: Entwicklung eines Frameworks für UML-State Machines
Entwicklung am Framework "yasmine" (http://yasmine.seadex.de) für UML-State Machines
- Implementierung der Kernbibliothek entsprechend der UML-Spezifikation (OMG Unified Modeling LanguageTM (OMG UML), Superstructure). Die Bibliothek ermöglicht es, die Fähigkeiten einer UML-State Machine einfach in objekt-orientierter Weise zu nutzen, ohne die Ausführung der State Machine selber implementieren zu müssen.
- Implementierung einer State Machine-Modell-Bibliothek. Mit Hilfe dieser Bibliothek können State Machine-Modelle im JSON-Format gespeichert und geladen werden. Diese Modelle können u.a. zum Generieren von State Machines genutzt werden.
- Implementierung einer Generatorapplikation - Applikation mit deren Hilfe aus einem State Machine-Modell C++-Code generiert werden kann.
- Erstellung von Unit-Tests und Integrations-Test für alle Komponenten des Frameworks
- Erstellung von Dokumentation (Englisch) für das Framework
Aufgaben
- Programmierung. Die Bibliothek wird unter der Benutzung von C++11/C++14 entwickelt.
- Erstellen von Unit-Tests mit Boost.Test (Evaluierung von Google Test)
- Erstellen von Integrationstests
- Erstellen der Dokumentation mit Doxygen und Confluence
- Continuous Integration mit Jenkins
- Multiplattform-Builds mit CMake
Kenntnisse: C++, C++11, Boost, rapidjson, JSON, UML
Eingesetzte Produkte: Visual Studio 2013, 2015 und 2017, Subversion, Jira, Confluence, Jenkins, Doxygen, CMake
Kunde: Seadex GmbH
Branche: IT-Dienstleistungen
Umsetzung grafischer Oberflächen für Assistenzsysteme von Baumaschinen. Die Assistenzsysteme werden verwendet, um die Bedienung der Baumaschinen zu vereinfachen.
Grafische Anzeige von Sensorwerten der Baumaschinen. Visualisierung zur Kalibrierung der Baumaschine im Service-Mode. Einpflegen von Texten und Übersetzungen.
Aufgaben
- Programmierung von GUI-Komponenten mit C++, Qt und QML nach Vorgaben der Designer
- Debugging und Test
- Übergabe an Applikationsentwickler
Kenntnisse: C++, Qt 5, QML
Eingesetzte Produkte: Qt Creator, git, gitLab, easyredmine, Figma
Betriebssysteme: Windows (Entwicklungsumgebung), Linux (Zielplattform)