Web Software Engineering
Als Software Engineer entwickle ich objektorientierte Software-Architekturen und Backend-Lösungen für webbasierte Anwendungen unter Verwendung von PHP und Java.
Neben der softwareseitigen Entwicklung entwickle ich ebenfalls normalisierte Datenbankstrukturen, welche ihr Abbild wiederum in Softwarestrukturen finden. Als Datenbanksystemen haben sich bisher MySQL mit der InnoDB-Engine, Postgres und Oracle bewährt.
Anbindungen an externe Ressourcen wie RSS- oder SOAP-Schnittstellen, Datenbanken und XML-Strukturen werden durch meine Arbeiten ebenfalls übersichtlich und verständlich in Programm-Code verfasst.
Die Entwicklung von Software basiert auf einem augearbeiteten Pflichtenheft, welches Ihre Anforderungen in technische Textform und grafische Strukturen formal übersetzt. Das Pflichtenheft beschreibt den Soll-Zustand und ist die Messlatte für die Entwicklung.
Modellgetrieben und getestet
Die modellgetriebene Entwicklung von Softwarearchitekturen basiert auf formalen Modelle, die die abstrakte Struktur der Software repräsentiert. Während der Entwurfsphase erstelle ich Modelle in der (größtenteils) grafischen Beschriebungs- und Modellierungssprache UML. Aus diesen Modellen wird zur Implenentierung objektorientierter Quellcode abgeleitet.
Anhand Ihrer Anforderungen und der abgeleiteten Anwendungsfälle erstelle ich Ihnen Testfälle. Diese Testfälle sollen die Funktionalität einzelner Softwarekomponenten testen und ein Zeugnis des Entwicklungsprozesses sein. Die Prämisse ist hierbei: ist eine Komponente getsetet, so arbeitet sie auch verlässlich innerhalb der Software-Architektur.
Effizienz durch Entwurfsmuster
Unter Zuhilfenahme international anerkannter Entwurfsmuster strebe ich eine effiziente Softwareumsetzung an. Entwurfsmuster lösen Problemstellungen durch anerklannte Konzepte. Der Fokus liegt hierbei eindeutig auf der Skalierbarkeit und Wartbarkeit von Software, welche auch einen hohen ökonmischen Vorteil bei einer Pflege und Weiterentwicklung mitsichzieht. Auch die Projektübergabe und -einarbeitung aufgrund verwendeter Standards in einem professionellen Umfeld mit minimalem Zeitaufwand realisierbar.
