Expertise
Entwicklung
- C# & .Net
- MVVM
- Scrum
- SQL Server
- Git
- Entity Framework
- Azure
- Architektur
Kontext
- Microservices
- Data Warehouse
- Webservices
- Individual
- Verteilte Systeme
- DevOps
Key Skills
- C# / .Net
- Webservices (Soap / Rest)
- SCRUM & Kanban
- SQL Server & Oracle
- WPF
- Entity Framework
- DevOps & CI
- Kommunikation
- Git / Azure DevOps
Erfahrung
- Software Development: 16 Jahre
- Im Beruf: 8 Jahre
- Gründer: 6 Jahre
Technologien & Design Pattern
- Microsoft Visual Studio 2017
- Xamarin
- Webservices (Soap & Rest)
- Microservices
- Data Warehousing
- IoC
- .Net Framework > 4.6.0
- .Net Core
- ASP .Net
- MVVM / MVC
- WPF, WCF
- Azure Functions
Framework's & Tools
- Git, SVN, Team Foundation Server 2017
- Azure DevOps
- NHibernate
- Entity Framework
- Angular
- DevExpress
- Roslyn .Net
- Unity & Autofac
- MOQ & NUnit
- Aspose & EPPlus
- PostSharp
- CodeFormatter
- Azure Service Bus
Methodik
- TDD, BDD
- SCRUM, Kanban
- AOP
- Clean Code
Customer Stories
40 Std die Woche
Dyckerhoff GmbH
6 Team Mitglieder
Agile
Beschreibung:
- Meine Aufgabe bei Dyckerhoff umfasste das Überführen der mit MVC Pattern umgesetzten Produktionssoftware in eine MVVM basierte Applikation (DevExpress MVVM Framework). Die Entwicklung des Systems begann bereits 2011 und die Codebasis hatte inzwischen eine Größe erreicht (mehrere Millionen Zeilen Code), bei der sowohl Wartung als auch Verbesserungen schwer umzusetzen waren.
- Nachdem ich die ersten proof-of-concepts und Prototypen erstellt hatte, wurde dem Team bewusst, dass eine direkte ?Übersetzung? ins neue Pattern den aktuellen Qualitätsansprüchen der User nicht mehr gerecht würde. Daher fiel die Entscheidung, das komplette UI Stück für Stück parallel zur bisherigen Anwendung zu redisignen. Hierdurch konnte den Benutzern eine modernes, frisches User Experience geboten werden, ohne den Funktionsumfang der App zu reduzieren. Die dafür von mir entworfenen Services umfassten die Bereiche Validierung, Content Management, In-App-Navigation, Animation und Error Handling.
- Neue Views & ViewModels können vom Team nun auf einfachem Wege durch das Vererben von mächtigen Basisklassen erstellt werden. Diese stellen bereits die benötigten Funktionen out-of-the-box bereit. Ein von mir entworfener Style Guide stellt sicher, dass alle neuen Komponenten denselben grafischen Stil teilen.
40 Std die Woche
Görlitz AG
14 Team Mitglieder
SCRUM
Beschreibung:
- Zu Beginn war das Entwicklungsteam bei Görlitz auf der Suche nach einem Backend Entwickler um ein intern entwickeltes Microservices-System auszubauen. Zentraler Teil der Landschaft stellte ein Middleware-Server dar, der zuständig für Vernetzung der einzelnen Hardware-Komponenten (wie Messgeräte oder Blockheizkraftwerke) auf der einen Seite mit einem Schwarmintelligenz-Nukleus auf der anderen Seite war. Der dafür zu verwendende Technologie-Stack (Sprache, message broker, Redundanzkonzept, ?) wurde im Vorfeld von einem internen Software Architekten festgelegt und einige Komponenten konnten bereits als ?productionready? betrachtet werden.
- Meine Aufgabe bestand in der Implementierung zusätzlicher User Stories. Damit die Komponenten untereinander ein Vertrauensverhältnis herstellen konnten, entwickelte ich beispielsweise einen Microservice zur Speicherung und dem automatisierten Austausch von Zertifikaten.
- Mit fortschreitender Projektdauer wurden mir zusätzliche Aufgaben übertragen. Da die Codebasis für .Net Apps keine einheitliche Formatierung aufwies und einige Entwickler sich einem vorher kommunizierten Code Style verweigerten, entschied das Team sich für eine technische Lösung. Nachdem ich mich in die Dokumentation von Roslyn .Net eingelesen hatte, entwickelte ich einen Algorithmus um eine einheitliche Formatierung und CodeStruktur sicherzustellen. Dieses Programm wurde fortan bei TFS-Checkins aufgerufen und stellte sicher, dass die eingecheckten Dateien automatisch angepasst wurden ohne das den Entwicklern hierfür zusätzliche Arbeit entstand.
- Eine Vielzahl der vom DevOps Team verwendeten Tools zur App Distribution wurde hausintern mit WPF und C# entwickelt. Nachdem mein Projektleiter meine Affinität für UX & UI-Design bemerkte, wurde ich beauftragt diese Tools zu optimieren. Für das DevOps Team bedeutete dies eine deutliche Erleichterung in Ihrer täglichen Arbeit, da diverse Workflows auf diesem Weg vereinfacht werden konnten.
40 Std die Woche
CompuGroup Medical AG
22 Team Mitglieder
Agile
Beschreibung:
- Da viele der Features von CompuGroup?s Verkaufsschlager ?Albis? bereits in den frühen 00?er Jahren entwickelt wurden, erschien das Arztinformationssystem nicht mehr ganz zeitgemäß. Obwohl die Software durchaus mächtig in der Verwaltung von Patientdaten, dem Erstellen von Rechnungen und beim Reporting war, bestand der C++ Programmcode aus einer sehr monolithischen Struktur. Änderungen im größerem Rahmen gestalteten sich hierdurch als schwierig und zeitaufwendig. Dennoch waren die Product Owner begierig darauf, den Anwendern einen frischen Look und Optimierung in deren Arbeitsprozessen zu liefern, ohne hierfür das Rad neu erfinden zu müssen.
- Nachdem ich einige Prototypen mit C# und DevExpress entworfen hatte, entschied sich das Team dafür, diesem Weg zu folgen. Durch Entwickeln eines Wrappers für WinForms-Controls konnte ich diese Prototypen in eine ausgewachsene Business App überführen, die auf der bisherigen C++ / MFC Lösung aufsetzt.
- Auf diesem Weg konnte die CompuGroup ihren Kunden einen zusätzlichen Mehrwert liefern, ohne hierfür das komplette LagacySystem (welche schließlich mehreren Millionen Zeilen Code umfasst) übersetzen zu müssen.