SENIOR SOFTWARE ENGINEER
Aktualisiert am 25.02.2026
Profil
Mitarbeiter eines Dienstleisters
Remote-Arbeit
Verfügbar ab: 01.03.2026
Verfügbar zu: 100%
davon vor Ort: 100%
Skill-Profil eines fest angestellten Mitarbeiters des Dienstleisters
Deutsch
Muttersprache
Englisch
fließend

Einsatzorte

Einsatzorte

Deutschland
möglich

Projekte

Projekte

2 Jahre 8 Monate
2023-07 - heute

Portierung Visual Studio Plugin

.Net Entwickler C# Cleancode Visual Studio 2022 ...
.Net Entwickler
  • Eine neu erworbene Abteilung der Firma hat bisher ausschließlich mit Programmiersprache vb.NET Software geschrieben. Auf Wunsch der Firma muss diese Abteilung von nun an mit der Programmiersprache C# arbeiten. Im Zuge dessen stand die Aufgabe an, die zahlreichen selbst entwickelten Programmier-Hilf-Tools zu portieren. Das Problem dabei war, dass diese Hilf-Tools ausschließlich für die Arbeit mit vb.NET gedacht waren und auch nur mit vb.NET funktionieren. Die Features konnten daher nicht eins zu eins für die Arbeit mit C# übernommen werden und mussten daher neu erstellt werden. Wie bisher wurden diese Hilf-Tools in einem Visual Studio Plugin zusammengefasst.
  • Die Aufgabe der Tools war es den Code zu analysieren und dann ggf. zu formatieren und zu strukturieren. Im bisherigen Plugin wurde dazu ein selbstentwickelter Code-Analyse-Algorithmus genutzt. Da dieser auf Grund der Unterschiede von vb.NET und C# nicht wiederverwendet werden konnte, wurde dieser Teil des Plugins mit der Integration des Rosyln-SDK von Microsoft neu entwickelt. Des Weiteren kann das Plugin über das VSSDK die Gui von Visual Studio steuern Dieser Teil des Plugins konnte weitestgehend eins zu eins übernommen werden. Mit dem VSSDK konnte man z.B. eine Naming Convention umsetzen, da das VSSDK ermöglicht alle Aufrufe einer Referenz umzubenennen. Auch wurde das VSSDK genutzt, um festzustellen, an welchem Code-Files der Entwickler gerade arbeitet. Tools die Code generieren und/oder umwandeln, mussten ebenfalls komplett neu entwickelt werden. Hier wurde ebenfalls das Rosslyn-SDK genutzt. Das VSSDK wurde genutzt, um den zu bearbeiteten Code festzustellen und die Modifizierung in die Code-Datei hinzuzufügen. Der Code des Plugins wurde nach dem Vorbild der Cleancode Architektur in Layer unterteilt. Als IDE wurde Visual Studio 2022 genutzt.
  • Das Projekt wurde mit zwei wöchentlichen Scrum-Meetings gemanagt. Der Progress wurde mit einer Burn-Down-Chart überwacht.
C# Cleancode Visual Studio 2022 Roslyn-SDK VSSDK Scrum
auf Anfrage
4 Jahre 2 Monate
2022-01 - heute

verschiedene Projekte

.Net Entwickler
.Net Entwickler
auf Anfrage
5 Monate
2023-01 - 2023-05

Portierung mobiler Client nach Xamarin Forms

.Net Entwickler C# Xamarin Forms MVVM ...
.Net Entwickler
  • Mein ehemaliger Arbeitgeber SPF (2012 - 2018) suchte kurzfristig Verstärkung um eine Portierung eines bestehenden mobilen Clients nach Xamarin Forms durchzuführen. Meine Aufgabe war es bestehenden Programm Code von der alten Architektur in die neue Architektur zu übertragen. Dabei half mir meine bereits vorhandene Kenntnis der Software und mein methodisches Arbeiten. Mit meiner jahrelangen Erfahrung als .Net Entwickler war es ebenfalls Aufgabe den Code zu optimieren und zu erneuern. Die Integrationstest des neuen Clients in das bestehende Softwareumfeld von SPF wurde von mir zusammen mit den Key-Usern des Kunden getätigt. Auch war es meine Aufgabe die Arbeit eines Junior-Entwicklers zu überwachen. Als Organisationsmethodik wurde das Wasserfall Modell genutzt.
  • Architektur alter Client: Der bestehende Client war mit dem .NET Compact Framework in der Programmiersprache vb.NET umgesetzt. Die GUI war mit Windows Forms umgesetzt. Datenbankaufrufe waren sowohl MS-SQL Server als auch Oracle fähig. Die Entwicklungsumgebung war Visual Studio 2008. Als Versionierungstool wurde Subversion genutzt.
  • Architektur neuer Client: Der neue Client wurde mit C# und Xamarin Forms entwickelt. Die GUI wurde nach der MVVM Architektur gestaltet. Xamarin Forms basierte auf dem .NET Standard Framework. Die Datenbankaufrufe mussten sowohl MS-SQL Server als auch Oracle valide sein. Als Entwicklungsumgebung wurde Visual Studio 2022 zusammen mit Tortoise SVN genutzt. Der Programmcode wurde mit Subversion versioniert.
C# Xamarin Forms MVVM Windows Forms .NET Standard Framework .NET Compact Framework Oracle MS-SQL Server (DDL; DML; PL) Subversion Wasserfall Visual Studio
SPF GmbH
1 Jahr 6 Monate
2021-06 - 2022-11

modulare Software - ERP-System

.Net Entwickler C# .Net 6 Visual Studio 2022 mit Resharper ...
.Net Entwickler
  • Saturn ist eine modulare Software die bei der Firma als ERP-System eingesetzt wird. Der Wunsch des Kunden war es, dass die einzelnen Module über einen eigenen Micro-Service mit der Datenbank kommunizieren. Bisher erstellt jedes Modul eine eigene Verbindung zur Datenbank her. Das Ziel des Kunden war es, dass die Micro-Services Dritt-Systemen einen Zugang zur bestehenden Software und Datenstruktur ermöglichen. Daraufhin wurde von mir der ?Saturn GRPC Server? geschaffen. Dieser Server bestand aus einer Basisserver-Schicht und pro Modul aus einer Service- und einer Businesslogik-Schicht. Die Service-Schicht wurde zusammen mit der Businesslogik zur Laufzeit dynamisch von dem Basisserver geladen. Die Service-Schicht betrieb dann für die geladene Businesslogik einen GRPC Service. Auf den GRPC-Service setzte ebenfalls ein autogenerierter Open API Rest Service auf, dh. die Schnittstelle konnte sowohl über GRPC als auch über Rest betrieben werden. Loggingmechanismen und Datenbankverbindungen wurden nach dem ?Dependency inversion principle? von der Basisserver-Schicht für die geladenen Service- und Businesslogik-Schichten bereitgestellt. Der Basisserver war in der Lage mehrere Businesslogik- und Service-Schichten geleichzeitig auszuführen. Die Businesslogik wurde von der Service Schicht getrennt, damit man die gleiche Businesslogik zusammen mit einer anderen Service-Schicht betreiben kann. Es war geplant mindestens eine weitere Service Schicht einzuführen, die dann keinen GRPC Service bereitstellt, sondern einen Rest OData Service erzeugt. Die Funktionalität des Basisservers wurde mit Nunit-Tests automatisiert getestet. In der Saturn Entwicklungsumgebung wurde der GRPC-Server letztendlich in eine Docker Station ausgeliefert. Der Kunde hat den GRPC-Server per Open Shift in Betrieb genommen.
  • Der GRPC-Service wurde auf Basis von ASP.NET bzw. .NET6 entwickelt. Zuerst wurde mit Visual Studio und Resharper gearbeitet, später wurde der Wechsel auf Rider vollzogen. Gelegentlich wurde VS-Code genutzt um SQL Statements zu formatieren. Der Service kommunizierte mit einer Oracle Datenbank. Für das Logging wurde Serilog genutzt. Als Versionierungs Tool wurde TFS genutzt. Später habe ich den Wechsel nach Git vollzogen. Als Programmiersprache wurde C# genutzt. Das Projekt-Team wurde mit Sprints nach dem Vorbild des Waterfall Models organisiert.
C# .Net 6 Visual Studio 2022 mit Resharper Rider VS-Code Oracle GRPC REST OpenApi GIT Docker NUnit Serilog Waterfall
Gerhard Schubert GmbH
1 Jahr 1 Monat
2020-06 - 2021-06

Modi HealthCloud

C# Linq ASP.NET Core 3.1 ...
  • Im Zuge der Corona Pandemie fing die Modi Modular Digits GmbH an Health-Produkte zu entwickeln, die die Hygiene Bestimmungen bzw. Corona Präventivmaßnahmen digital unterstützen sollen. Im Zuge dessen wurde das Projekt ?Modi HealthCloud? geschaffen. Die ?Modi HealthCloud? sollte eine Webpräsenz sein, die sowohl eine Weboberfläche für administrative Zwecke bietet als auch eine Kommunikationsschnittstelle, an die alle Health-Produkte melden. Die Weboberfläche wurde mit asp.NET Core MVC erstellt. Die Kommunikationsschnittstelle war eine Rest-API die mit asp.NET Core entwickelt wurde. Ein besonderes Merkmal war, dass die Modi Health Cloud beliebig skalierbar war. Es konnten beliebig viele eigene Instanzen angelegt werden, ohne dass die Software ein weiteres Mal installiert und eingerichtet werden musste. Die Instanzen wurde abhängig von der Subdomain der HealthCloud automatish angelegt. Da die Instanzen autark waren, konnten so die Zugriffsberechtigungen pro Subdomain Instanz geregelt werden. Die Weboberfläche der Cloud wurde genutzt, um Biometrischen Profile anzulegen und zu managen. Ebenfalls wurden in der HealthCloud Messwerte von CO2 Messern gespeichert. Diese werden dann grafisch ansprechend in einem Diagramm dargestellt und ermöglichen so das Monitoring der Belüftung von Räumen in z.B. Schulen. Das Produkt Modi Hygienestation fragte bei der Cloud die biometrischen Profile inkl. Kontakt- und Impfdaten ab, und nutzt diese dann für eine Identifikation von Personen. Diese Biometrische Identifikation regelt dann den Zugang zu kritischen Bereichen (z.B. Altersheim und andere Pflegeeinrichtungen). Alle Identifikationsvorgänge wurden in der Cloud gespeichert. Die ModiHealth Cloud war dadurch ein potentes Hilfsmittel für die Nachverfolgbarkeit von Infektionsketten. Die Architektur für dieses Projekt wurde komplett eigenständig von mir spezifisiert und umgesetzt. Getestet wurde die Software zusammen mit den Kollegen von der Produktentwicklung. Für die RestApi Schittstelle setzte ich vollautomatisierte Nunit-Tests ein. Die Featurewünsche wurde vom CTO gesammelt und zusammen mit mir spezifiziert und validiert.
  • Das User-Interface wurde mit Razor Pages nach der MVC Methodik implementiert. Das User-Interface wurde mit Hilfe von HTML, CSS und Bootstrap designed. Die Software basierte auf dem ASP.Net Core Framework. Das Entity-Framework wurde genutzt um sowohl eine Datenbank Verbindung zu einer SQLLite Datenbank als auch einer MS-SQL Datenbank herzustellen. Als Develop Gui wurde Visual Studio genutzt. Als Versionierungs-Tool wurde Git genutzt. Als Programmiersprache wurde C# genutzt. Datenbank Statements wurde mit Linq realisiert. Das Projekt-Team wurde mit Hilfe von Kanban organisiert.
C# Linq ASP.NET Core 3.1 NUnit SQLite EF-Core GIT Visual Studio 2019 REST MVC RAZOR HTML CSS Bootstrap Kanban
3 Jahre 1 Monat
2018-06 - 2021-06

Modi Labels

.Net Entwickler C# .Net Framework WPF ...
.Net Entwickler
  • Modi Labels war eine Software für den Wareneingangsscanner. Der Wareneingangsscanner nutzte zwei Kameras, um die Erfassung von SMD Rollen zu vereinfachen. Über optische Merkmale erkannte die Software Hersteller Etiketten, wertete diese aus und konnte so Fehlbestückung in den nachfolgenden Prozessen verhindern. Umgesetzt wurde diese Software im .net Framework. Genutzt wurden außerdem das Barcode Lese-SDK von Cognex und das OCR-SDK von abbyy. Die IDE war Visual Studio. Für die Dokumentation wurde Microsoft Office und vor allem Microsoft Visio genutzt. Das Deployment wurde über Microsoft AZURE Devops organisiert. Die Pipelines wurden so konfiguriert, dass für jeden Kunden automatisch eine Zip Datei mit dem aktuellen Stand der Basissoftware und dem aktuellen Stand des kundenspezifischen Softwaremoduls erzeugt wurde. Meine Projektarbeit bestand darin Kunden-Plugins zu entwickeln. Diese Plugins hatte genau zwei Aufgaben. 1. Sicherstellen, dass alle Daten, die für das Projekt relevant sind, zweifelsfrei von der Basis Software erkannt wurden. 2. Die Rückmeldung und Validierung mit dem Kunden ERP System. Die Kommunikation mit dem ERP-System wurde per Webservice hergestellt. Technologien, die hier genutzt wurden, waren sowohl die Klassischen Web-Apis (Rest und Soap) aber auch Sonderfälle wie z.B. SAP-RFC. Über die Schnittstelle wurden z.B. die Wareneingangsmenge an das ERP System gemeldet und ggf. mit der Bestellmenge abgeglichen. Die Schnittstellen waren ebenfalls in der Lage ganze Chargen sperren zulassen und Bestellungen fertig zu melden. Die Spezifikation des Kunden-Plugins erfolgte im direkten Kontakt mit dem Kunden und wurde meistens in Workflow-Diagrammen mit MS Visio dokumentiert.
  • Das User-Interface wurde mit WPF nach der MVVM-Methodik implementiert. Die Software basierte auf dem .Net Framework. Das Entity-Framework wurde genutzt um sowohl eine Datenbank Verbindung zu einer Oracle Datenbank als auch einer MS-SQL Datenbank herzustellen. Als Develop Gui wurde Visual Studio genutzt. Als Versionierungs-Tool wurde Git genutzt. Als Programmiersprache wurde C# genutzt. Datenbank Statements wurde mit Linq realisiert. Das Projekt-Team wurde mit Hilfe von Kanban organisiert.
C# .Net Framework WPF MVVM Visual Studio 2017 MS-SQL Server (DDL; DML; PL) Oracle SOAP REST GIT Entityframework Azure Devops Kanban
Modi Modular Digits GmbH
5 Jahre 8 Monate
2012-10 - 2018-05

Software Mobitouch

.Net Entwickler vb.Net C# .Net Framework ...
.Net Entwickler
  • Bei der habe ich an der Softwarelösung Mobitouch als Full Stack Entwickler gearbeitet. Dieses fortlaufende Projekt wurde über die Kanban Methodik organisiert. Genutzte Frameworks waren .net 4.5 und .net Compact Framework, die genutzte IDE war Visual Studio. Für die Dokumentation wurde DokuWiki verwendet. Für das Deployment wurde TeamCity genutzt. Mobitouch war eine Server-Client Lösung die zusätzlich zu einem ERP System genutzt wurde. Mobitouch war unter anderem ein Lagersystem, das den Materialfluss vom Wareneingang über die Produktion bis hin zum Versand steuerte. Als Clients wurden Windows PCs und Zebra Scanner, ehemals Motorola Scanner, genutzt. Die Scriptsprache ZPL wurde genutzt um Etiketten zu designen und diese mit Zebra Druckern zu erstellen. Als Versionierungs-Tool wurde Subversion genutzt. Die User-Interfaces wurden hauptsächlich mit Windows-Forms designed. Als Developer GUI wurde Visual Studio genutzt. Die Programmiersprache hierfür war vb.NET. Das Programm für die mobilen Scanner wurde auf Basis vom .net Compact Framework mit Visual Studio 2008 entwickelt. Die Windows-Clients wurde mit Visual Studio 2005 auf Basis des .net Frameworks entwickelt. Es wurde außerdem ein Web-Client auf Basis des ASP.NET Framework mit der MVC Methodik entwickelt. Auch hier wurden Razor-Pages zusammen mit Bootstrap, HTML und CSS designed. Für das Backend wurde C# als Programmiersprach genutzt.
  • Meine Aufgabe bestand darin Kanban Tickets abzuarbeiten. Diese Tickets waren entweder ein neues Feature, eine Änderung oder eine Korrektur der bestehenden Softwarelösung. Dazu musste ich den kundenspezifischen Workflow verstehen und diesen dann auf das Datenbankmodell ummünzen. Zusätzlich musste ich sicherstellen, dass das Datenbankmodel sowohl mit Oracle als auch MS-SQL kompatible war. Die Kanban-Tickets wurden in der Projektmanagement Applikation Redmine gepflegt.
vb.Net C# .Net Framework .net Compact Framework ASP.NET Oracle MS-SQL Server (DDL; DML; PL) WPF Visual Studio 2008 Visual Studio 2015 Subversion ZPL Windows-Forms MVC Razor Bootstrap HTML CSS Kanban Redmine
SPF GmbH
1 Jahr 1 Monat
2015-08 - 2016-08

Automatische Bedarfssteuerung

vb.Net C# .Net Framework ...
Bei dem Teil-Projekt ?Automatische Bedarfssteuerung? für die Softwarelösung ?Mobitouch? wurde die Befüllung des Materialexpresses für die Firma Takata optimiert. Der Materialexpress war ein Zug der alle 30 Minuten die Bestände an der Produktionslinie auffüllt. Der Materialbedarf der Produktion wurde per Kanban an den Materialexpress übermittelt. Der Bediener konnte somit nur alle 30 Minuten neues Material anfordern. Dies führte zwangsläufig zu Materialengpässen an der Maschine. Um einen Stillstand der Produktionslinie zu verhindern, wurde im Zuge dessen sogenannte Springer eingesetzt, die das fehlende Material per Hand in die Produktion brachten. Ziel des Projektes war es, dass die Bestückung der Produktion ausschließlich über den Materialexpress erfolgt. Um dieses Ziel zu erreichen wurde ein Hintergrunddienst entwickelt, welcher regelmäßig den Bestand an der Maschine überprüft und automatisch rechtzeitig Materialanforderungen an den Materialexpress sendet. Auch wurde dem Personal in der Produktion die Möglichkeit gegeben spontane Auftragswechsel frühzeitig an das System zu melden. Somit konnte der Hintergrunddienst die Materialanforderungen für den Materialexpress genauer planen. Die Software Ab- bzw. Inbetriebnahme hat sich auf Seiten des Kunden immer wieder verzögert, weswegen die die geplante Projektzeit von 3 Monaten nicht eingehalten wurde. 
vb.Net C# .Net Framework .net Compact Framework ASP.NET Oracle MS-SQL Server (DDL; DML; PL) WPF Visual Studio 2008 Visual Studio 2015 Subversion ZPL Windows-Forms MVC Razor Bootstrap HTML CSS Kanban Redmine
3 Monate
2013-10 - 2013-12

personalisierter Wareneingang

vb.Net C# .Net Framework ...
Bei diesem Feature musste die Software Mobitouch an die internen Prozesse des Kunden angepasst werden. Der Feature Wunsch des Kunden resultierte aus einer Verfahrensanweisung im Zuge der Zertifizierung für die deutsche Automobil Industrie. Im Zuge der Spezifikation habe ich folgende Punkte abgeklopft und im direkten Gespräch mit dem Kunden spezifiziert: 1. Kann ein bestehendes Software-Feature genutzt werden? Wie müsste das bestehende Feature konfiguriert werden? Warum kann der Kunde das bestehende Feature nicht nutzen? 2. Wie sieht der Prozessfluss beim Kunden aus? Muss z.B. FIFO eingehalten werden. Wie werden die Waren eingelagert? 3. Wie sind die Rahmenbedingungen der Warenannahme? Welche Informationen muss der Lieferschein enthalten? Lieget dieser vielleicht elektronisch vor? Muss der physische Lieferschein mit dem digitalen Lieferschein abgeglichen werden? Wie müssen die Waren etikettiert sein? Nachdem diese Fragen geklärt wurden, wurde spezifiziert, wie der Wareneingang in unsere Software erfolgen soll. Dies wurde im Detail bis zur genauen Scanfolge festgelegt. Ebenfalls wurde ein internes Etikett spezifiziert, welches beim Wareneingang das Herstelleretikett ersetzt auszusehen hat. 
vb.Net C# .Net Framework .net Compact Framework ASP.NET Oracle MS-SQL Server (DDL; DML; PL) WPF Visual Studio 2008 Visual Studio 2015 Subversion ZPL Windows-Forms MVC Razor Bootstrap HTML CSS Kanban Redmine

Aus- und Weiterbildung

Aus- und Weiterbildung

3 Jahre
2009-05 - 2012-04

Duales Studium Software Engineering

Bachelor of Science,
Bachelor of Science
2 Jahre
2009-05 - 2011-04

Ausbildung staatlich geprüfter Medieninformatiker

Ausbildung staatlich geprüfter Medieninformatiker,
Ausbildung staatlich geprüfter Medieninformatiker

Position

Position

SOFTWARE ENGINEER

Kompetenzen

Kompetenzen

Produkte / Standards / Erfahrungen / Methoden

Profil
Als Softwareentwickler und Architekt mit 10 Jahren Berufserfahrung habe ich bereits bei einigen Unternehmen aus den unterschiedlichsten Domänen an vielen unterschiedlichen Softwareprojekten gearbeitet. Eine möglichst enge Zusammenarbeit mit Kunden bzw. den Anwendern war mir dabei immer besonders wichtig, denn nur so kann man das umsetzen, was der Kunde auch wirklich braucht. Cleancode, einfach zu verstehender sowie leicht zu wartender Code stand für mich immer Fokus meiner Arbeit. Der regelmäßige Austausch mit anderen Entwicklern war dabei über die Jahre wichtige, zentrale Elemente meines Vorgehens. In Zukunft würde ich gerne meine Kenntnisse im Bereich Azure, Azure DevOps und skalierender Architektur weiter ausbauen.

Testing
  • NUnit

Frameworks
  • .NET Framework
  • .NET Core
  • .NET Compact Framework
  • .NET Standard Framework
  • ASP.NET
  • ASP.NET Core
  • Entity Framework
  • EF Core
  • Serilog
  • VSSDK
  • Roslyn

Sandboxing
  • Docker

Versionsverw.
  • Git
  • TFS
  • Subversion

Frontend
  • WPF
  • Razor
  • Windows-Forms Bootstrap
  • HTML
  • CSS
  • ReactJS
  • Typescript
  • Xamarin Forms

Vorgehensm.
  • Waterfall
  • Kanban
  • Scrum

Architekturen
  • MVC
  • MVVM
  • CleanCode

Schnittstellen
  • REST (OpenApi)
  • Soap
  • GRPC

Projekt Tools
  • Azure DevOps
  • GitLab
  • Redmine

Develop GUI
  • Visual Studio
  • VS Code
  • Rider
  • Resharper

Programmiersprachen

C#
Experte
.Net
Experte
.Net Core
Experte
.Net Framework
Experte
ASP.Net
Experte
React
Fortgeschritten
REST
Fortgeschritten
Azure DevOps
Fortgeschritten
Visual Studio
Fortgeschritten

Datenbanken

MS-SQL Server
DDL
PL
DML
Oracle
SQLite

Einsatzorte

Einsatzorte

Deutschland
möglich

Projekte

Projekte

2 Jahre 8 Monate
2023-07 - heute

Portierung Visual Studio Plugin

.Net Entwickler C# Cleancode Visual Studio 2022 ...
.Net Entwickler
  • Eine neu erworbene Abteilung der Firma hat bisher ausschließlich mit Programmiersprache vb.NET Software geschrieben. Auf Wunsch der Firma muss diese Abteilung von nun an mit der Programmiersprache C# arbeiten. Im Zuge dessen stand die Aufgabe an, die zahlreichen selbst entwickelten Programmier-Hilf-Tools zu portieren. Das Problem dabei war, dass diese Hilf-Tools ausschließlich für die Arbeit mit vb.NET gedacht waren und auch nur mit vb.NET funktionieren. Die Features konnten daher nicht eins zu eins für die Arbeit mit C# übernommen werden und mussten daher neu erstellt werden. Wie bisher wurden diese Hilf-Tools in einem Visual Studio Plugin zusammengefasst.
  • Die Aufgabe der Tools war es den Code zu analysieren und dann ggf. zu formatieren und zu strukturieren. Im bisherigen Plugin wurde dazu ein selbstentwickelter Code-Analyse-Algorithmus genutzt. Da dieser auf Grund der Unterschiede von vb.NET und C# nicht wiederverwendet werden konnte, wurde dieser Teil des Plugins mit der Integration des Rosyln-SDK von Microsoft neu entwickelt. Des Weiteren kann das Plugin über das VSSDK die Gui von Visual Studio steuern Dieser Teil des Plugins konnte weitestgehend eins zu eins übernommen werden. Mit dem VSSDK konnte man z.B. eine Naming Convention umsetzen, da das VSSDK ermöglicht alle Aufrufe einer Referenz umzubenennen. Auch wurde das VSSDK genutzt, um festzustellen, an welchem Code-Files der Entwickler gerade arbeitet. Tools die Code generieren und/oder umwandeln, mussten ebenfalls komplett neu entwickelt werden. Hier wurde ebenfalls das Rosslyn-SDK genutzt. Das VSSDK wurde genutzt, um den zu bearbeiteten Code festzustellen und die Modifizierung in die Code-Datei hinzuzufügen. Der Code des Plugins wurde nach dem Vorbild der Cleancode Architektur in Layer unterteilt. Als IDE wurde Visual Studio 2022 genutzt.
  • Das Projekt wurde mit zwei wöchentlichen Scrum-Meetings gemanagt. Der Progress wurde mit einer Burn-Down-Chart überwacht.
C# Cleancode Visual Studio 2022 Roslyn-SDK VSSDK Scrum
auf Anfrage
4 Jahre 2 Monate
2022-01 - heute

verschiedene Projekte

.Net Entwickler
.Net Entwickler
auf Anfrage
5 Monate
2023-01 - 2023-05

Portierung mobiler Client nach Xamarin Forms

.Net Entwickler C# Xamarin Forms MVVM ...
.Net Entwickler
  • Mein ehemaliger Arbeitgeber SPF (2012 - 2018) suchte kurzfristig Verstärkung um eine Portierung eines bestehenden mobilen Clients nach Xamarin Forms durchzuführen. Meine Aufgabe war es bestehenden Programm Code von der alten Architektur in die neue Architektur zu übertragen. Dabei half mir meine bereits vorhandene Kenntnis der Software und mein methodisches Arbeiten. Mit meiner jahrelangen Erfahrung als .Net Entwickler war es ebenfalls Aufgabe den Code zu optimieren und zu erneuern. Die Integrationstest des neuen Clients in das bestehende Softwareumfeld von SPF wurde von mir zusammen mit den Key-Usern des Kunden getätigt. Auch war es meine Aufgabe die Arbeit eines Junior-Entwicklers zu überwachen. Als Organisationsmethodik wurde das Wasserfall Modell genutzt.
  • Architektur alter Client: Der bestehende Client war mit dem .NET Compact Framework in der Programmiersprache vb.NET umgesetzt. Die GUI war mit Windows Forms umgesetzt. Datenbankaufrufe waren sowohl MS-SQL Server als auch Oracle fähig. Die Entwicklungsumgebung war Visual Studio 2008. Als Versionierungstool wurde Subversion genutzt.
  • Architektur neuer Client: Der neue Client wurde mit C# und Xamarin Forms entwickelt. Die GUI wurde nach der MVVM Architektur gestaltet. Xamarin Forms basierte auf dem .NET Standard Framework. Die Datenbankaufrufe mussten sowohl MS-SQL Server als auch Oracle valide sein. Als Entwicklungsumgebung wurde Visual Studio 2022 zusammen mit Tortoise SVN genutzt. Der Programmcode wurde mit Subversion versioniert.
C# Xamarin Forms MVVM Windows Forms .NET Standard Framework .NET Compact Framework Oracle MS-SQL Server (DDL; DML; PL) Subversion Wasserfall Visual Studio
SPF GmbH
1 Jahr 6 Monate
2021-06 - 2022-11

modulare Software - ERP-System

.Net Entwickler C# .Net 6 Visual Studio 2022 mit Resharper ...
.Net Entwickler
  • Saturn ist eine modulare Software die bei der Firma als ERP-System eingesetzt wird. Der Wunsch des Kunden war es, dass die einzelnen Module über einen eigenen Micro-Service mit der Datenbank kommunizieren. Bisher erstellt jedes Modul eine eigene Verbindung zur Datenbank her. Das Ziel des Kunden war es, dass die Micro-Services Dritt-Systemen einen Zugang zur bestehenden Software und Datenstruktur ermöglichen. Daraufhin wurde von mir der ?Saturn GRPC Server? geschaffen. Dieser Server bestand aus einer Basisserver-Schicht und pro Modul aus einer Service- und einer Businesslogik-Schicht. Die Service-Schicht wurde zusammen mit der Businesslogik zur Laufzeit dynamisch von dem Basisserver geladen. Die Service-Schicht betrieb dann für die geladene Businesslogik einen GRPC Service. Auf den GRPC-Service setzte ebenfalls ein autogenerierter Open API Rest Service auf, dh. die Schnittstelle konnte sowohl über GRPC als auch über Rest betrieben werden. Loggingmechanismen und Datenbankverbindungen wurden nach dem ?Dependency inversion principle? von der Basisserver-Schicht für die geladenen Service- und Businesslogik-Schichten bereitgestellt. Der Basisserver war in der Lage mehrere Businesslogik- und Service-Schichten geleichzeitig auszuführen. Die Businesslogik wurde von der Service Schicht getrennt, damit man die gleiche Businesslogik zusammen mit einer anderen Service-Schicht betreiben kann. Es war geplant mindestens eine weitere Service Schicht einzuführen, die dann keinen GRPC Service bereitstellt, sondern einen Rest OData Service erzeugt. Die Funktionalität des Basisservers wurde mit Nunit-Tests automatisiert getestet. In der Saturn Entwicklungsumgebung wurde der GRPC-Server letztendlich in eine Docker Station ausgeliefert. Der Kunde hat den GRPC-Server per Open Shift in Betrieb genommen.
  • Der GRPC-Service wurde auf Basis von ASP.NET bzw. .NET6 entwickelt. Zuerst wurde mit Visual Studio und Resharper gearbeitet, später wurde der Wechsel auf Rider vollzogen. Gelegentlich wurde VS-Code genutzt um SQL Statements zu formatieren. Der Service kommunizierte mit einer Oracle Datenbank. Für das Logging wurde Serilog genutzt. Als Versionierungs Tool wurde TFS genutzt. Später habe ich den Wechsel nach Git vollzogen. Als Programmiersprache wurde C# genutzt. Das Projekt-Team wurde mit Sprints nach dem Vorbild des Waterfall Models organisiert.
C# .Net 6 Visual Studio 2022 mit Resharper Rider VS-Code Oracle GRPC REST OpenApi GIT Docker NUnit Serilog Waterfall
Gerhard Schubert GmbH
1 Jahr 1 Monat
2020-06 - 2021-06

Modi HealthCloud

C# Linq ASP.NET Core 3.1 ...
  • Im Zuge der Corona Pandemie fing die Modi Modular Digits GmbH an Health-Produkte zu entwickeln, die die Hygiene Bestimmungen bzw. Corona Präventivmaßnahmen digital unterstützen sollen. Im Zuge dessen wurde das Projekt ?Modi HealthCloud? geschaffen. Die ?Modi HealthCloud? sollte eine Webpräsenz sein, die sowohl eine Weboberfläche für administrative Zwecke bietet als auch eine Kommunikationsschnittstelle, an die alle Health-Produkte melden. Die Weboberfläche wurde mit asp.NET Core MVC erstellt. Die Kommunikationsschnittstelle war eine Rest-API die mit asp.NET Core entwickelt wurde. Ein besonderes Merkmal war, dass die Modi Health Cloud beliebig skalierbar war. Es konnten beliebig viele eigene Instanzen angelegt werden, ohne dass die Software ein weiteres Mal installiert und eingerichtet werden musste. Die Instanzen wurde abhängig von der Subdomain der HealthCloud automatish angelegt. Da die Instanzen autark waren, konnten so die Zugriffsberechtigungen pro Subdomain Instanz geregelt werden. Die Weboberfläche der Cloud wurde genutzt, um Biometrischen Profile anzulegen und zu managen. Ebenfalls wurden in der HealthCloud Messwerte von CO2 Messern gespeichert. Diese werden dann grafisch ansprechend in einem Diagramm dargestellt und ermöglichen so das Monitoring der Belüftung von Räumen in z.B. Schulen. Das Produkt Modi Hygienestation fragte bei der Cloud die biometrischen Profile inkl. Kontakt- und Impfdaten ab, und nutzt diese dann für eine Identifikation von Personen. Diese Biometrische Identifikation regelt dann den Zugang zu kritischen Bereichen (z.B. Altersheim und andere Pflegeeinrichtungen). Alle Identifikationsvorgänge wurden in der Cloud gespeichert. Die ModiHealth Cloud war dadurch ein potentes Hilfsmittel für die Nachverfolgbarkeit von Infektionsketten. Die Architektur für dieses Projekt wurde komplett eigenständig von mir spezifisiert und umgesetzt. Getestet wurde die Software zusammen mit den Kollegen von der Produktentwicklung. Für die RestApi Schittstelle setzte ich vollautomatisierte Nunit-Tests ein. Die Featurewünsche wurde vom CTO gesammelt und zusammen mit mir spezifiziert und validiert.
  • Das User-Interface wurde mit Razor Pages nach der MVC Methodik implementiert. Das User-Interface wurde mit Hilfe von HTML, CSS und Bootstrap designed. Die Software basierte auf dem ASP.Net Core Framework. Das Entity-Framework wurde genutzt um sowohl eine Datenbank Verbindung zu einer SQLLite Datenbank als auch einer MS-SQL Datenbank herzustellen. Als Develop Gui wurde Visual Studio genutzt. Als Versionierungs-Tool wurde Git genutzt. Als Programmiersprache wurde C# genutzt. Datenbank Statements wurde mit Linq realisiert. Das Projekt-Team wurde mit Hilfe von Kanban organisiert.
C# Linq ASP.NET Core 3.1 NUnit SQLite EF-Core GIT Visual Studio 2019 REST MVC RAZOR HTML CSS Bootstrap Kanban
3 Jahre 1 Monat
2018-06 - 2021-06

Modi Labels

.Net Entwickler C# .Net Framework WPF ...
.Net Entwickler
  • Modi Labels war eine Software für den Wareneingangsscanner. Der Wareneingangsscanner nutzte zwei Kameras, um die Erfassung von SMD Rollen zu vereinfachen. Über optische Merkmale erkannte die Software Hersteller Etiketten, wertete diese aus und konnte so Fehlbestückung in den nachfolgenden Prozessen verhindern. Umgesetzt wurde diese Software im .net Framework. Genutzt wurden außerdem das Barcode Lese-SDK von Cognex und das OCR-SDK von abbyy. Die IDE war Visual Studio. Für die Dokumentation wurde Microsoft Office und vor allem Microsoft Visio genutzt. Das Deployment wurde über Microsoft AZURE Devops organisiert. Die Pipelines wurden so konfiguriert, dass für jeden Kunden automatisch eine Zip Datei mit dem aktuellen Stand der Basissoftware und dem aktuellen Stand des kundenspezifischen Softwaremoduls erzeugt wurde. Meine Projektarbeit bestand darin Kunden-Plugins zu entwickeln. Diese Plugins hatte genau zwei Aufgaben. 1. Sicherstellen, dass alle Daten, die für das Projekt relevant sind, zweifelsfrei von der Basis Software erkannt wurden. 2. Die Rückmeldung und Validierung mit dem Kunden ERP System. Die Kommunikation mit dem ERP-System wurde per Webservice hergestellt. Technologien, die hier genutzt wurden, waren sowohl die Klassischen Web-Apis (Rest und Soap) aber auch Sonderfälle wie z.B. SAP-RFC. Über die Schnittstelle wurden z.B. die Wareneingangsmenge an das ERP System gemeldet und ggf. mit der Bestellmenge abgeglichen. Die Schnittstellen waren ebenfalls in der Lage ganze Chargen sperren zulassen und Bestellungen fertig zu melden. Die Spezifikation des Kunden-Plugins erfolgte im direkten Kontakt mit dem Kunden und wurde meistens in Workflow-Diagrammen mit MS Visio dokumentiert.
  • Das User-Interface wurde mit WPF nach der MVVM-Methodik implementiert. Die Software basierte auf dem .Net Framework. Das Entity-Framework wurde genutzt um sowohl eine Datenbank Verbindung zu einer Oracle Datenbank als auch einer MS-SQL Datenbank herzustellen. Als Develop Gui wurde Visual Studio genutzt. Als Versionierungs-Tool wurde Git genutzt. Als Programmiersprache wurde C# genutzt. Datenbank Statements wurde mit Linq realisiert. Das Projekt-Team wurde mit Hilfe von Kanban organisiert.
C# .Net Framework WPF MVVM Visual Studio 2017 MS-SQL Server (DDL; DML; PL) Oracle SOAP REST GIT Entityframework Azure Devops Kanban
Modi Modular Digits GmbH
5 Jahre 8 Monate
2012-10 - 2018-05

Software Mobitouch

.Net Entwickler vb.Net C# .Net Framework ...
.Net Entwickler
  • Bei der habe ich an der Softwarelösung Mobitouch als Full Stack Entwickler gearbeitet. Dieses fortlaufende Projekt wurde über die Kanban Methodik organisiert. Genutzte Frameworks waren .net 4.5 und .net Compact Framework, die genutzte IDE war Visual Studio. Für die Dokumentation wurde DokuWiki verwendet. Für das Deployment wurde TeamCity genutzt. Mobitouch war eine Server-Client Lösung die zusätzlich zu einem ERP System genutzt wurde. Mobitouch war unter anderem ein Lagersystem, das den Materialfluss vom Wareneingang über die Produktion bis hin zum Versand steuerte. Als Clients wurden Windows PCs und Zebra Scanner, ehemals Motorola Scanner, genutzt. Die Scriptsprache ZPL wurde genutzt um Etiketten zu designen und diese mit Zebra Druckern zu erstellen. Als Versionierungs-Tool wurde Subversion genutzt. Die User-Interfaces wurden hauptsächlich mit Windows-Forms designed. Als Developer GUI wurde Visual Studio genutzt. Die Programmiersprache hierfür war vb.NET. Das Programm für die mobilen Scanner wurde auf Basis vom .net Compact Framework mit Visual Studio 2008 entwickelt. Die Windows-Clients wurde mit Visual Studio 2005 auf Basis des .net Frameworks entwickelt. Es wurde außerdem ein Web-Client auf Basis des ASP.NET Framework mit der MVC Methodik entwickelt. Auch hier wurden Razor-Pages zusammen mit Bootstrap, HTML und CSS designed. Für das Backend wurde C# als Programmiersprach genutzt.
  • Meine Aufgabe bestand darin Kanban Tickets abzuarbeiten. Diese Tickets waren entweder ein neues Feature, eine Änderung oder eine Korrektur der bestehenden Softwarelösung. Dazu musste ich den kundenspezifischen Workflow verstehen und diesen dann auf das Datenbankmodell ummünzen. Zusätzlich musste ich sicherstellen, dass das Datenbankmodel sowohl mit Oracle als auch MS-SQL kompatible war. Die Kanban-Tickets wurden in der Projektmanagement Applikation Redmine gepflegt.
vb.Net C# .Net Framework .net Compact Framework ASP.NET Oracle MS-SQL Server (DDL; DML; PL) WPF Visual Studio 2008 Visual Studio 2015 Subversion ZPL Windows-Forms MVC Razor Bootstrap HTML CSS Kanban Redmine
SPF GmbH
1 Jahr 1 Monat
2015-08 - 2016-08

Automatische Bedarfssteuerung

vb.Net C# .Net Framework ...
Bei dem Teil-Projekt ?Automatische Bedarfssteuerung? für die Softwarelösung ?Mobitouch? wurde die Befüllung des Materialexpresses für die Firma Takata optimiert. Der Materialexpress war ein Zug der alle 30 Minuten die Bestände an der Produktionslinie auffüllt. Der Materialbedarf der Produktion wurde per Kanban an den Materialexpress übermittelt. Der Bediener konnte somit nur alle 30 Minuten neues Material anfordern. Dies führte zwangsläufig zu Materialengpässen an der Maschine. Um einen Stillstand der Produktionslinie zu verhindern, wurde im Zuge dessen sogenannte Springer eingesetzt, die das fehlende Material per Hand in die Produktion brachten. Ziel des Projektes war es, dass die Bestückung der Produktion ausschließlich über den Materialexpress erfolgt. Um dieses Ziel zu erreichen wurde ein Hintergrunddienst entwickelt, welcher regelmäßig den Bestand an der Maschine überprüft und automatisch rechtzeitig Materialanforderungen an den Materialexpress sendet. Auch wurde dem Personal in der Produktion die Möglichkeit gegeben spontane Auftragswechsel frühzeitig an das System zu melden. Somit konnte der Hintergrunddienst die Materialanforderungen für den Materialexpress genauer planen. Die Software Ab- bzw. Inbetriebnahme hat sich auf Seiten des Kunden immer wieder verzögert, weswegen die die geplante Projektzeit von 3 Monaten nicht eingehalten wurde. 
vb.Net C# .Net Framework .net Compact Framework ASP.NET Oracle MS-SQL Server (DDL; DML; PL) WPF Visual Studio 2008 Visual Studio 2015 Subversion ZPL Windows-Forms MVC Razor Bootstrap HTML CSS Kanban Redmine
3 Monate
2013-10 - 2013-12

personalisierter Wareneingang

vb.Net C# .Net Framework ...
Bei diesem Feature musste die Software Mobitouch an die internen Prozesse des Kunden angepasst werden. Der Feature Wunsch des Kunden resultierte aus einer Verfahrensanweisung im Zuge der Zertifizierung für die deutsche Automobil Industrie. Im Zuge der Spezifikation habe ich folgende Punkte abgeklopft und im direkten Gespräch mit dem Kunden spezifiziert: 1. Kann ein bestehendes Software-Feature genutzt werden? Wie müsste das bestehende Feature konfiguriert werden? Warum kann der Kunde das bestehende Feature nicht nutzen? 2. Wie sieht der Prozessfluss beim Kunden aus? Muss z.B. FIFO eingehalten werden. Wie werden die Waren eingelagert? 3. Wie sind die Rahmenbedingungen der Warenannahme? Welche Informationen muss der Lieferschein enthalten? Lieget dieser vielleicht elektronisch vor? Muss der physische Lieferschein mit dem digitalen Lieferschein abgeglichen werden? Wie müssen die Waren etikettiert sein? Nachdem diese Fragen geklärt wurden, wurde spezifiziert, wie der Wareneingang in unsere Software erfolgen soll. Dies wurde im Detail bis zur genauen Scanfolge festgelegt. Ebenfalls wurde ein internes Etikett spezifiziert, welches beim Wareneingang das Herstelleretikett ersetzt auszusehen hat. 
vb.Net C# .Net Framework .net Compact Framework ASP.NET Oracle MS-SQL Server (DDL; DML; PL) WPF Visual Studio 2008 Visual Studio 2015 Subversion ZPL Windows-Forms MVC Razor Bootstrap HTML CSS Kanban Redmine

Aus- und Weiterbildung

Aus- und Weiterbildung

3 Jahre
2009-05 - 2012-04

Duales Studium Software Engineering

Bachelor of Science,
Bachelor of Science
2 Jahre
2009-05 - 2011-04

Ausbildung staatlich geprüfter Medieninformatiker

Ausbildung staatlich geprüfter Medieninformatiker,
Ausbildung staatlich geprüfter Medieninformatiker

Position

Position

SOFTWARE ENGINEER

Kompetenzen

Kompetenzen

Produkte / Standards / Erfahrungen / Methoden

Profil
Als Softwareentwickler und Architekt mit 10 Jahren Berufserfahrung habe ich bereits bei einigen Unternehmen aus den unterschiedlichsten Domänen an vielen unterschiedlichen Softwareprojekten gearbeitet. Eine möglichst enge Zusammenarbeit mit Kunden bzw. den Anwendern war mir dabei immer besonders wichtig, denn nur so kann man das umsetzen, was der Kunde auch wirklich braucht. Cleancode, einfach zu verstehender sowie leicht zu wartender Code stand für mich immer Fokus meiner Arbeit. Der regelmäßige Austausch mit anderen Entwicklern war dabei über die Jahre wichtige, zentrale Elemente meines Vorgehens. In Zukunft würde ich gerne meine Kenntnisse im Bereich Azure, Azure DevOps und skalierender Architektur weiter ausbauen.

Testing
  • NUnit

Frameworks
  • .NET Framework
  • .NET Core
  • .NET Compact Framework
  • .NET Standard Framework
  • ASP.NET
  • ASP.NET Core
  • Entity Framework
  • EF Core
  • Serilog
  • VSSDK
  • Roslyn

Sandboxing
  • Docker

Versionsverw.
  • Git
  • TFS
  • Subversion

Frontend
  • WPF
  • Razor
  • Windows-Forms Bootstrap
  • HTML
  • CSS
  • ReactJS
  • Typescript
  • Xamarin Forms

Vorgehensm.
  • Waterfall
  • Kanban
  • Scrum

Architekturen
  • MVC
  • MVVM
  • CleanCode

Schnittstellen
  • REST (OpenApi)
  • Soap
  • GRPC

Projekt Tools
  • Azure DevOps
  • GitLab
  • Redmine

Develop GUI
  • Visual Studio
  • VS Code
  • Rider
  • Resharper

Programmiersprachen

C#
Experte
.Net
Experte
.Net Core
Experte
.Net Framework
Experte
ASP.Net
Experte
React
Fortgeschritten
REST
Fortgeschritten
Azure DevOps
Fortgeschritten
Visual Studio
Fortgeschritten

Datenbanken

MS-SQL Server
DDL
PL
DML
Oracle
SQLite

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.