IT-Consulting, Development, Architektur
- Verfügbarkeit einsehen
- 0 Referenzen
- auf Anfrage
- 57610 Altenkirchen
- Weltweit
- de | en | fr
- 12.11.2018
Kurzvorstellung
Qualifikationen
Projekt‐ & Berufserfahrung
6/2015 – 7/2015
Tätigkeitsbeschreibung
Entwicklung und Fortführung von Softwaresystemen im Bereich des Techniker- und Kundensupports, um Serviceleistungen zu erbringen. Die eingesetzte Gesamtlösung basiert auf mehreren Webportalen mit ASP.NET MVC und ASP.NET WebForms als auch auf einer Windows Phone 8 App, welche von Servicekräften und Technikern beim Kunden vor Ort eingesetzt wird. Für den Datentransfer zwischen Server und WP8 App wird ein eigens entwickelter Webservice genutzt. Ferner wer-den als Fremdsysteme SAP und ggf. weitere, länderspezifische ERP-Systeme über diverse Dienste angebunden.
Die Aufgabe bestand u. a. darin die vorhandenen Legacy Systeme durch eine moderne, stabile und nachvollziehbare Architektur zu mo-dernisieren. Insbesondere galt es zukünftig die Wartungsintensität und damit die Kosten zu reduzieren und durch entsprechende Maßnahmen wie Unit-Tests, Integration-Tests und Code-Metriken (dynamisch wie statisch) die Qualität messbar zu erhöhen. Als geeignetes Architektur-konzept wurde Domain Driven Design (DDD) eingeführt und technisch durch die entsprechenden Layer und Komponenten umgesetzt. Die we-sentlichen Aspekte um DDD und TDD wurde an den Kunden in Form von gemeinsamen Besprechungen (ähnlich Workshops) weitergegeben. Die Architektur und die beschlossenen Vorgehensweisen wurden mit Hilfe von arc42 und dem hausinternen Wiki dokumentiert.
Des Weiteren wurde aktiv an der Entwicklung teilgenommen, um das recht kleine Entwickler-Team direkt zu unterstützen. Dabei gelangten TFS, IIS 8.5, VS 2013 mit ASP.NET MVC, WebForms, Windows Phone 8, SQL Server 2014 und der Reporting Service zum Einsatz. Als Program-miersprachen wurden primär C# und VB.NET genutzt. Automatisierun-gen im Rahmen von Softwarebuilds wurden u. a. mit PowerShell vollzogen.
Eine besondere Herausforderung in diesem Projekt war es als primäres Mitglied der Entwicklungsabteilung sowohl die Entwicklung als auch die Planung optimal zu unterstützen. Ziel war es den Kunden nach dem Einsatz in die Lage zu versetzen, völlig unabhängig die Systeme basie-rend auf den neuen Methoden weiterentwickeln zu können.
Reporting, Microsoft SQL-Server (MS SQL), Windows Powershell, Visual Basic, Microsoft Visual Studio, .Net, C#, ASP.NET, Jquery, JavaScript-Frameworks, JavaScript
4/2015 – 5/2015
Tätigkeitsbeschreibung
Weiterentwicklung und Ergänzung einer Auftragsentwicklung mit Anfor-derungsanalyse, Softwarearchitektur, Projektleitung und Programmie-rung einer multilingualen, mehrbenutzerfähigen Applikation zur Durch-führung mobiler Teilnehmerregistrierung, Fahrzeugtracking und Ge-päcktracking. (S. a. Projekt scanIT.net & scanIT.net mobile 06/2009 – 09/2010.)
Über mobile Scangeräte, auf denen ScanIt Mobile installiert ist, können Teilnehmer registriert und/oder Fahrzeuge auf Veranstaltungen und Events getrackt werden. Dabei werden sowohl die Teilnehmer als auch die Fahrzeuge mit Barcodes oder RFID-Chips, welche sich auf oder in den Namensschildern befinden, ausgestattet. Mittels der Scangeräte, die von Hostessen oder dem sogenannten Roadservice bedient werden, werden die Codes erfasst und lokal auf dem Gerät gespeichert. Bei Be-darf werden die Informationen auch direkt per UMTS oder WLAN an einen Webservice übertragen. Sobald die Scangeräte in der Zentrale eintreffen, werden die Daten mit dem Server automatisiert abgegli-chen bzw. synchronisiert. Sollte bereits eine Remote-Übertragung er-folgt sein, werden die vorhandenen Daten gegen die lokal auf den Scangeräten befindlichen Daten validiert. Die Server- und Client-Anwendung ScanIt dient hierbei als Verwaltungswerkzeug, um komfor-tabel Auswertungen und Analysen über die gesammelten Informationen durchführen zu können. Da auch den Hostessen bzw. dem Roadservice Recherchemöglichkeiten zur Verfügung stehen müssen, sind auch in ScanIt Mobile einfache Tabellenübersichten und Auswertungen vorhan-den.
Neben allgemeinen Verbesserungen und neuen Features wurde bei der Weiterentwicklung insbesondere ein neuer Scan-Modus für das Gepäck-tracking ergänzt.
Zur Erstellung der Anwendungen gelangten Visual Studio 2008 und Visual Studio 2013 mit .NET 4.5, WinForms, WebForms, ASP.NET, WebForms, AngularJS, JavaScript, XAF, DevExpress, WPF, WCF, .NET CF (Compact Framework 3.5), Windows Mobile 6.1, C#, und VB.NET zum Einsatz. Als DBMS wird serverseitig Microsoft SQL Server 2014 und auf den mobilen Geräten SQLite genutzt.
ScanIt bzw. ScanIt Mobile wurden mehrfach bei Events mit bis zu 20.000 Teilnehmern und über 500 Fahrzeugen erfolgreich eingesetzt.
Microsoft SQL-Server (MS SQL), SQL, Windows Powershell, Visual Basic, Microsoft Visual Studio, .Net, C#, Subversion, ASP.NET, AngularJS, JavaScript
9/2013 – 3/2015
Tätigkeitsbeschreibung
Entwicklung und Fortführung von Softwaresystemen im Bereich der Verkehrssicherheit. Zum einen sollten die UIs der WPF-Clients, welche auf Basis von Caliburn.Micro entwickelt wurden, überarbeitet werden. Zum anderen galt es komplexe Funktionalitäten über Webservices per WCF zu erstellen und weiter zu entwickeln.
Die Einrichtung von Jenkins und SonarQube ermöglichte es dem Team mit Continuous Integration ähnlichen Prozessen zu beginnen. Ferner wurden die Buildskripte vollends von MSBuild auf psake und PowerShell umgestellt. Ein weiterer Schritt hin zu Continuous Deployment bzw. Delivery wurde nur konzeptionell angedacht.
Des weiteren trug die Einführung und Etablierung der SQL Server Data Tools durch einen konsequenten Einsatz zu einer enormen Verbesse-rung bei der Weiterentwicklung der bestehenden Legacy Datenbanken bei.
Da es sich bei den zu entwickelnden Anwendungen um reine LOB-Applikationen handelte, brachte die Empfehlung und Einführung des eXpress Application Frameworks (XAF) von DevExpress eine immense Produktivitätssteigerung. Zwei Clientsysteme sind somit auf XAF-Basis (Win- und Web-Anwendungen) in kurzer Zeit entstanden. Diese bein-halten u. a. umfangreiche Dashboarding-, Reporting- und endanwen-dertaugliche Workflow-Funktionalitäten.
Aufgrund des kleinen Teams war eine gute Kommunikation mit den Teammitgliedern aber auch mit den Stakeholdern von Nöten.
WPF, WCF, Caliburn.Micro, MVVM, WinForms, ASP.NET MVC, Web-Forms, Angular JS, JavaScript, jQuery
psake, PowerShell, Installer, MSBuild, Jenkins, SonarQube
DevExpress, eXpress Application Framework (XAF), eXpand Framework
Visual Studio 2013, .NET 4.5
Microsoft SQL Server 2008 – 2014, SSIS, SSAS, SSDT
C#, VB.NET, ReSharper, CodeRush, etc.
Reporting, Microsoft SQL-Server (MS SQL), SQL, SAP IS-U, Windows Powershell, Microsoft Visual Studio, Softwareentwicklung (allg.), .Net, C, C#, C++, Java (allg.), ASP.NET, AngularJS, Jquery, JavaScript
4/2013 – 7/2013
Tätigkeitsbeschreibung
Projekt:
Auftragsprogrammierung mit Planung und Entwicklung einer umfangreichen Datenbank zur Verwaltung von Strukturdaten und Durchführung eines vorgegebenen Workflows zur Aufnahme und Bearbeitung von Reklamationen. Die Software kann sowohl über ein Web-Frontend (ASP.NET) als auch einen Windows Client (.NET, WinForms) genutzt werden. Die Architektur basiert auf dem eXpress Application Framework (XAF) von DevExpress.
Tools:
DevExpress, eXpress Application Framework (XAF), eXpand Framework
Visual Studio 2012, .NET 4.0, ASP.NET, WinForms
Team Foundation Server (TFS)
Microsoft SQL Server 2012
C#, VB.NET, ReSharper, DotCover
Besonderheiten:
Durch den Einsatz von XAF war es in der vorgegebenen Zeit möglich den gewünschten, weitreichenden Funktionsumfang und die Unterstützung der Web- und Windows-Plattformen zu realisieren.
Über mich
-----------------------
Project Management:
Leitung interner und externer Projekte.
Software Architecture:
Umfangreiche Kenntnisse bei der Planung und dem Aufbau vollständiger Software-Architekturen.
Zum Einsatz gelangt eine angepasste Version des arc42 Templates von Dr. Peter Hruschka und Dr. Gernot Starke.
Agile Software Architecture & Development Umfangreiche Kenntnisse bei der Durchführung agiler Softwareprojekte (Scrum, Kanban, Personal Kanban, XP, etc.) und weiterer Vorgehensmodelle wie V-Model XT, etc.
Requirements Engineering:
Umfangreiche Kenntnisse bei der Durchführung vollständiger Anforderungsanalysen. In allen von mir betreuten Kundenprojekten wird eine anfängliche Anforderungsanalyse durchgeführt, welche später iterativ weitergeführt und versioniert wird.
Zum Einsatz gelangt eine angepasste Version des Volere Requirements Specification Templates von James und Suzanne Robertson der Firma The Atlantic Systems Guild Inc.
Software Development:
Umfangreiche Kenntnisse bei der Entwicklung kompletter Applikationen wie Smart Clients, Serverdiensten, Webservices, Webseiten, mobiler Applikationen.
Zum Einsatz gelangt meist Java, C#, VB.NET, Objective-C, C oder C++.
Als Datenbanken werden häufig Oracle, MS SQL Server, MySQL oder ähnliches verwendet.
UI Design:
Planung und Umsetzung von Benutzerinterfaces für verschiedene Plattformen. Je nach Plattform gelangen gewisse Standards zum Einsatz, wie z. B. die User Experience Guidelines von Microsoft, wenn es sich um eine Windows Smart Client Application handelt oder die User Interface Guidelines von Apple, sobald eine App für das iPhone/iPod/iPad zu erstellen ist.
Design Patterns:
Umfangreiche Kenntnisse beim Einsatz von Design Patterns für die Entwicklung und die Architektur.
Als Basis dienen u. a. die Erkenntnisse der GoF und die Patterns of Enterprise Application Architecture von Martin Fowler.
Ich setze Design Patterns ein,
a) wenn sich bei der Planung der Architektur der sofortige sinnvolle Einsatz erschließt.
b) wenn sich bei der weiteren Entwicklung Teile herauskristallisieren bei denen der Einsatz eines bekannten Patterns Vorteile verspricht, so dass ein Refactoring to Pattern stattfinden kann.
c) nie (!) nur um des Patterns willen.
Testing (BDD & TDD):
Umfangreiche Kenntnisse beim Einsatz von xUnit Frameworks wie JUnit und NUnit in Kombination mit den Paradigmen des Behaviour Driven Designs respektive Test Driven Designs.
Continuous Integration:
Einsatz von Continuous Integration bei allen meiner Kundenprojekte.
Buildmanagement:
Einsatz von Buildmanagement Tools wie Maven, NPanday, Ant, Hudson, Jenkins, Nexus, NAnt, FinalBuilder, etc.
DMS:
DOMEA konformes Dokumentenmanagement insbesondere über das Produkt DOMEA der Open Text.
Workflow & Prozesssteuerung:
Z. B. prozessorientiertes DMS in Verbindung mit dem Produkt DOMEA der Open Text.
DSL:
Nutzung und Entwicklung von Domain Specific Languages zur Vereinheitlichung, besseren Verständlichkeit und höheren Produktivität. Die fachlichen Stakeholder sollen in die Lage versetzt werden, die Skripte direkt zu interpretieren und auf ihre fachliche Gültigkeit zu überprüfen. Die Grammatik einer DSL wird auf Basis von Xtext erstellt, welches auch einen gut funktionierenden Scripteditor für Eclipse generiert. Als weiteres Werkzeug wird auch gerne MPS von JetBrains genutzt. Über die DSLs hinaus kann sodann Codegenerierung eingesetzt werden.
Weitere Kenntnisse
ASP.NET, ASP.NET MVC,
C++, C#, Java, JavaScript,
Objective-C, Pascal, Perl,
PHP, Python, Ruby, Scala,
SQL (ANSI SQL, PL/SQL, Transact SQL und weitere)
VB, VB.NET, VBA, VBScript
Xtext für DSLs
Tools / Produkte / Standards:
Eclipse, Visual Studio, Xcode, Visual Studio 6,
Enterprise Architect, ARIS, MagicDraw,
XML, HTML, XHTML, SOAP, Webservices,
WPF, WCF, WF,
Maven, Ant, NAnt, MSBuild, Hudson, Jenkins, TeamCity,
DevExpress, Infragistics, Telerik,
u. v. m.
Persönliche Daten
- Deutsch (Muttersprache)
- Englisch (Fließend)
- Französisch (Grundkenntnisse)
- Spanisch (Grundkenntnisse)
- Europäische Union
- Schweiz
- Vereinigte Staaten von Amerika
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden