Softwareentwickler / Schwerpunkt Backend
- Verfügbarkeit einsehen
- 0 Referenzen
- auf Anfrage
- 55161 Mainz
- auf Anfrage
- de | en
- 24.04.2024
Kurzvorstellung
Qualifikationen
Projekt‐ & Berufserfahrung
2/2024 – offen
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Im Rahmen eines Unternehmensprojekts wurde das "Skills Projekt" entwickelt, um eine umfassende Datenbank zur Speicherung und Ausgabe von Mitarbeiterfähigkeiten zu schaffen. Dieses Tool unterstützt den Vertrieb bei der gezielten Zuweisung von Aufgaben an qualifizierte Mitarbeiter, hilft Practice Leads bei der Identifizierung fehlender Kompetenzen in Teams und erleichtert dem Management die effiziente Planung von Projekten.
Die Webanwendung wurde mithilfe von React im Frontend gestaltet, während für den Backend-Service ein RESTful-Ansatz mit Java gewählt wurde. OpenAPI wurde für die Spezifikation verwendet, um eine klare Kommunikation zwischen den verschiedenen Komponenten zu gewährleisten. Das Backend wurde mit dem Spring Framework und Spring Boot implementiert, wobei Spring Data JPA und Hibernate für die Datenbankinteraktion genutzt wurden. Die Sicherheit wurde durch die Verwendung von Spring Security gewährleistet, während Unit-Tests die Robustheit der Implementierung sicherstellten.
TECHNOLOGIEN:
Java 11, Spring Framework, Spring Boot, Spring Data JPA, Spring Security, Hibernate, Maven, JUnit, Mockito, Postman, IntelliJ IDEA, Visual Studio Code, DBeaver, Bitbucket, Git, Sourcetree, Scrum
SCRUM, Apache Maven, Git, Hibernate (Java), JUnit
2/2023 – 2/2024
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Bereitstellung eines Onlinedienst durch Aufbau eines Kubernetes Clusters. Bei einem Serveranbieter wurde ein Server gemietet, auf dem mehrere Maschinen virtualisiert und für die einzelnen Komponenten des Clusters verwendet werden. Als Client wurde ein Raspberry Pi verwendet, welcher QR-Codes scannt und Daten mit dem Kubernetes Cluster austauscht. Im Umfang des Projekts wurde eine Bachelorarbeit verfasst.
Die persönlichen Aufgaben waren:
· Onlineserver (Host) einrichten
· Virtuelle Maschinen erstellen
· Netzwerk Konfiguration
· Kubernetes installieren und konfigurieren
· Verwendung von Docker für Container innerhalb von Kubernetes
· Java REST API mit Open Liberty und MicroProfile erstellen
· Raspberry Pi einrichten
· Python GUI App zur Bedienung des Raspberry Pi um QR-Codes zu scannen
· Datenbank mit PostgreSQL aufsetzen
· Auswertung Sicherheit
· Dokumentation in Form einer wissenschaftlichen Arbeit
TECHNOLOGIEN:
Kubernetes, VirtualBox, CentOS, Ubuntu, Docker, CRI-O, Open Liberty, MicroProfile, Java, Python,
Tkinter, REST, PostgreSQL
PostgreSQL, Ubuntu, Docker, Java (allg.), Python, VM VirtualBox (Oracle), Kubernetes
5/2022 – 1/2023
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Entwicklung eines Raspberry Pi Prototyps, um Möglichkeiten und Anwendungsgebiete zu erforschen. Aktuelle Technologien und Handhabung des Raspberry Pis werden getestet.
Die persönlichen Aufgaben waren:
· Recherche zur Produktauswahl
· Dokumentierung benötigter Bauteile und Schnittstellen
· Installation und Konfiguration des Raspberry Pi OS, Kamera und Touchscreen
· Funktionaler Test der Kamera mit Python gesteuerter Software QR Codes zu lesen
· Kommunikation zwischen zwei Raspberry Pis mittels REST
· Präsentation
TECHNOLOGIEN:
Java 11, MicroProfile, OpenLiberty, Python, Raspberry Pi OS, OpenCV, REST
OpenCV, Python
7/2019 – 4/2022
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Entwicklung einer auf MicroProfile basierten Serveranwendung (Sucurema Tours) zur Planung und Optimierung von Touren für den Außendienst von Kunden.
Die Softwareanwendung ermöglicht es nach Angabe von Standorten mehrerer Kunden eine Route zu bestimmen, die eine Lösung des Travelling Salesman-Problems darstellt. Bei der Berechnung wird unter anderem das Anfahren verschiedener Kunden unter Einhaltung zeitlicher Einschränkungen, wie zum Beispiel Schichten oder Terminen, berücksichtigt.
Im Rahmen dieses Projekts wurde ein Backend unter der Verwendung von Java und Microprofile designend und umgesetzt. Zur Visualisierung der Touren wurde ein Frontend in JavaFX aufgesetzt.
Die persönlichen Aufgaben waren:
· Erstellen des Rest Services mit JAX-RS
· Entwurf und Modellierung der Datenbank
· Anpassung der Open Source Routing Engine GraphHopper auf die individuellen Anforderungen
· Validierung von Clientanwedungsanfragen per Bean Validation
· Implementierung der Architekturregeln als ArchUnit-Tests
· Verfassung von Unit- und Integrationtests
· Suche und Behebung von Fehlern und Bugs
· Regelmäßige Kommunikation zur Festlegung und Korrektur genauer Ziele
· Planung und Implementierung der Softwarelogik
TECHNOLOGIEN:
Java 11, OpenLiberty, Microprofile, Bean Validation, CDI, Maven, Hazelcast, REST, JAX-RS, JAX-WS, SLF4J, QueryDSL, MapStruct, Junit 5, GraphHopper Rounting Engine, jSprit, ArchUnit, Git, Jira, Bitbucket, Confluence
Confluence (Atlassian), Apache Maven, Git, Jira, JUnit
8/2016 – 6/2019
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Wartung und Erweiterung von vorhandener Software und Kundensupport.
Die persönlichen Aufgaben waren:
· Bug Fixes
· Erweiterung Funktionalität vorhandener Software
· Kundenbetreuung
· Instandhaltung Datenbank
· Dokumentation und Onboarding von Mitarbeitern
TECHNOLOGIEN:
C# .NET, ASP.NET, JavaScript, HTML, CSS, MSSQL, ERP-System, WinForms
.Net, C#, ASP.NET, CSS (Cascading Style Sheet), HTML, JavaScript
6/2015 – 8/2015
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Installation von Hardware und Software in einem Neubau (BioNTech, Mainz).
In einem Neubau werden Computer und Telefone aufgestellt, verkabelt und installiert. Jeder Arbeitsplatz hat individuelle Anforderungen, die abgearbeitet und notiert werden. Die zu installierende Software der Arbeitsplätze wird dabei zentral vom Endpoint Management System KACE verteilt. Die zu verteilende Software wird mit gegeben Installationsparametern in Batch Skripten vorbereitet und an die jeweilige Workstation verteilt.
Die persönlichen Aufgaben waren:
· Aufbau und Installation Computer und Telefon
· Informationen über Silent Installation der jeweiligen Software sammeln
· Batch Skripte anlegen
· Verteilung der Software
TECHNOLOGIEN:
Dell KACE, Batch Skript
IT-Techniker (allg.)
6/2014 – 12/2015
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Entwicklung einer Anwendung die CAD-Stücklisten als Produkte in einem Warenwirtschaftssystem anlegt (Wilbert TowerCranes, Waldlaubersheim).
Arbeiter konstruieren mit Hilfe eines CAD-Tools Objekte, die aus mehreren kleinen Teilen entstehen. Die sogenannten Stücklisten können aus dem CAD-Tool exportiert und als eine Datei abgespeichert werden. Diese Datei wird ausgewertet. Produkte, die im Warenwirtschaftssystem noch nicht vorhanden sind, werden neu erstellet. Produkte und Ressourcen, die abhängig voneinander sind, werden als Referenz mit den gegebenen Mengen miteinander verbunden und als Stückliste im Warenwirtschaftssystem realisiert. Dadurch wird der Bereich Konstruktion mit dem Bereich Warenwirtschaft miteinander verbunden und automatisiert.
Die persönlichen Aufgaben waren:
· Informationen sammeln
· Auswertung der Stücklisten
· Planung der Umsetzung
· GUI und Logik umgesetzt mit C# .NET
· Datenbankskripte MSSQL
· Integration in das Warenwirtschaftssystem
· Integrationstests
· Einweisung der Mitarbeiter
· Handbuch anlegen
· Kundensupport
TECHNOLOGIEN:
C# .NET, ERP-System, MSSQL, SQL, WinForms
SQL, .Net, C#
9/2013 – 12/2015
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Reservierungssystem mit auswählbaren Plätzen und Buchung von Tickets auf einer Website (Große Karnevalsgesellschaft Bad Kreuznach e.V., Bad Kreuznach).
Besucher einer Veranstaltung sollen die Möglichkeit haben, über eine Webseite Sitzplätze und Tische zu reservieren. Der Saal der Veranstaltung wird grafisch dargestellt. Plätze sollen individuell durch Klicken auswählbar sein. Als Zahlungsabwicklung können Kunden dafür PayPal oder Sofortüberweisung verwenden. Nach Zahlungsbestätigung können Beleg und Tickets ausgedruckt werden.
Zur Verwaltung des Systems wird dem Veranstalter zusätzlich ein Login Bereich bereitgestellt. Veranstalter und Administratoren können das System vorrübergehend sperren, neue Events anlegen, Termine anpassen, Plätze ohne Zahlung reservieren und Listen von vorhandenen Zahlungen einsehen.
Die persönlichen Aufgaben waren:
· Planung der Umsetzung
· Auswahl Technologien
· Servereinrichtung und Datenbankmanagement mit Microsoft SQL
· Backend Entwicklung mit C# und ASP.NET
· Frontend Entwicklung ASP.NET und JavaScript
· Transaktionssysteme PayPal und SOFORT
· Drucken der Reservierungen
· Handbuch anlegen
· Kundensupport
TECHNOLOGIEN:
C# .NET, ASP.NET, MSSQL, JavaScript, HTML, CSS, Windows Server 2012
Windows Server 2012, .Net, C#, ASP.NET, CSS (Cascading Style Sheet), HTML, JavaScript
8/2013 – 7/2016
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Im Rahmen der Ausbildung wurden folgende Inhalte vermittelt und Tätigkeiten ausgeübt:
· Entwicklung von Softwarelösungen für Kunden
· Erstellung individueller Anwendungssoftware
· Konzipierung anforderungsgerechter Softwarelösungen
· Programmierung in C# .NET
· Anpassung, Erweiterung und Implementierung vorhandener Softwarelösungen
· Selbstständige Durchführung von Tests
· Diagnose und Behebung von Fehlern
· Installierung und Aktualisierung von Anwendungen
· Datenbankentwicklung, -Wartung und Betreuung
· Erstellung technischer Unterlagen
· Telefonsupport
· Betreuung von Warenwirtschaftssystemen (Sage Office Line und Sage New Classic)
Kleine Projekte:
· Auswertung von Excel Dateien für einen Jahresabschluss
· Automatisierte Mitteilungen an Vertriebsmitarbeiter für günstige Waren per E-Mail
· Steuerung Kassensystem
· Datenbankmanagement
TECHNOLOGIEN:
C# .NET, ASP.NET, WinForms, MSSQL, JavaScript, HTML, CSS, Microsoft Office, ERP-System, Windows Server
Windows Server (allg.), C#, ASP.NET, CSS (Cascading Style Sheet), HTML, JavaScript, Microsoft Office 365
1/2013 – 8/2013
Tätigkeitsbeschreibung
BESCHREIBUNG & AUFGABEN:
Auftragsbearbeitungssoftware für Packstationen in einem Lager zur Entsendung von Waren (Custom Chrome GmbH, Bad Kreuznach).
In der Lagerlogistik kommissionieren Mitarbeiter an Packstationen Aufträge. Der Prozess beginnt mit dem Erhalt des Auftrags in Form eines DIN A4-Ausdrucks mit Barcode. An der Packstation befindet sich ein Bildschirm und ein Barcodescanner. Der Mitarbeiter scannt den Barcode des Auftrags, wodurch dieser ihm zugewiesen wird. Anschließend erhält er eine Übersicht der zu kommissionierenden Waren.
Jedes Produkt des Auftrags muss einzeln gescannt werden, um eine lückenlose Kommissionierung zu gewährleisten. Erst nach vollständigem Scan aller Produkte wird der Auftrag abgeschlossen und im Warenwirtschaftssystem als erledigt markiert. Darüber hinaus wird eine Historie angelegt, die den gesamten Prozess dokumentiert.
Die persönlichen Aufgaben waren:
· Planung der Umsetzung
· Auseinandersetzung mit dem Warenwirtschaftssystem
· GUI und Logik umgesetzt mit C# .NET
· Einweisung der Mitarbeiter
· Handbuch anlegen
· Kundensupport
TECHNOLOGIEN:
C# .NET, ERP-System, Barcode Scanner, WinForms
.Net, C#
Über mich
Durch seine sorgfältige Analyse und Voraussicht minimiert Herr D. das Risiko von Fehlern. Seine ausgeprägte Lösungsorientierung und sein Perfektionismus motivieren ihn dazu, stets die optimale Lösung zu finden.
Er fördert eine offene und transparente Kommunikation im Team und pflegt einen respektvollen Umgang mit seinen Kollegen. Durch seine Hilfsbereitschaft unterstützt er aktiv bei der Lösung von Problemen und ist deshalb als Teammitglied äußerst geschätzt und unentbehrlich.
Weitere Kenntnisse
Backend Entwicklung
SYSTEME:
Windows 7 bis 10, MacOS, CentOS, Ubuntu, Raspberry
PROGRAMMIERSPRACHEN:
Java 8 - 11, C++, C# .NET, JavaScript, Python, Batch, Bash, HTML, CSS, SQL
TECHNOLOGIEN:
MicroProfile, Spring Framework, Spring Boot, Spring Data JPA, Spring Security, Hibernate, jUnit, jUnit 5, ArchUnit, Mockito, OpenLiberty, Maven, MapStruct, SLF4J, JDBC, CDI, REST, JAX-RS, JAX-WS, Bean Validation, GraphHopper, jSprit, ASP.NET, Hazelcast, QueryDSL, OpenCV, Tkinter, WinForms, WPF
TOOLS:
IntelliJ IDEA, Visual Studio, Visual Studio Code, Git, Bitbucket, Jira, Confluence, Insomnia, Postman, DBeaver, Sourcetree
DATENBANKEN:
MySQL, MSSQL, PostgreSQL
PLATTFORMEN & SYSTEME:
Docker, Kubernetes , CRI-O, VirtualBox, Raspberry Pi, ERP-System, Dell KACE
METHODEN:
Scrum
BRANCHEN:
IT-Dienstleistungen
Persönliche Daten
- Deutsch (Muttersprache)
- Englisch (Fließend)
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden