Entwicklung einer Android-App zur Fortbildung in aktuellen Technologien, Programmiersprachen und Plattformen.
Die App basiert auf einer selbstentwickelten Bibliothek in Kotlin zum Aufbereiten eines Wegenetzes aus OpenStreetMap (OSM), sowie das Tracking von Bewegungen darauf. Die UI wurde mit dem Crossplatform-Framework Flutter in Dart entwickelt und an das Kotlin-Backend angebunden. Neben der Einarbeitung in neue Programmiersprachen und Frameworks bestanden folgende Herausforderungen:
Effiziente Datenhaltung und Beschränkung auf das nötigste; nur Daten im aktuellen Sicht- oder Trackingbereich werden in die lokale Datenbank bzw. den Hauptspeicher geladen.
Asynchrones Laden, Rendern und Aktualisieren der Daten ohne die Responsivität der App einzuschränken
Aufsetzen eines OSM-Servers
Eine bereits in früheren Projekten aufgebaute und erweiterte Software zur Verwaltung von aeronautischen Daten auf Basis von AIXM 5 wurde um diverse Features erweitert:
Autorisierung von Datenänderungen auf Basis der enthaltenen Geoinformation
Unterstützung für weitere Koordinatensysteme im gesamten Stack (Datenbank, Backend, Frontend), dazu u.a. Erweiterung einer internen DSL für die Transformation von AIXM 5.1 nach AIXM 4.5 und zurück
Erweiterung der automatischen Pflege von sog. Mapping Metadaten, die die reversible Abbildung von Datenstrukturen von AIXM 4.5 auf AIXM 5.1 und zurück erlauben
Performanzoptimierung durch Denormalisierung auf Datenbankebene
Implementierung einer Schnittstelle zur Bereitstellung von Geodaten im GeoJSON-Format zur Ansteuerung durch eine OpenLayers-basierte Web-Komponente
Implementierung einer WFS-TE Schnittstelle für den Zugriff durch Drittsysteme (WFS-TE: siehe auch frühere Projekte)
Optimierung des Buildprozesses: automatische Branchtests mit Jenkins Pipeline Scripts
Neuentwurf des gesamten Datenimportprozesses und deren Implementierung. Ausrichtung auf massive parallele Verarbeitung und Verwendung der Java Streams API.
Erweiterung des temporalen Konzepts durch Entwurf und Implementierung des Imports von sog. Baselines (festen Zwischenständen), die zusätzlich zu Änderungen (Deltas) existieren können.
Anbindung einer NOTAM Datenbank per SOAP.
Für weitere Details siehe entsprechende frühere Projektbeschreibung unten.
Dieses Projekt war eine Nebentätigkeit. Der Arbeitsaufwand betrug einige Wochen.
Eine Inhouse-Lösung bestehend aus mehreren Servern zur Steuerung und Erfassung der Werbeauspielung auf selbst betriebenen, stark frequentierten Internetportalen wurde durch eine von einem externen Dienstleister betriebene Lösung ersetzt. Ein Java-Standalone-Anwendung sollte dabei zeitgesteuert einen performanten Datenabzug per SOAP und eine Datentransformation gewährleisten, sowie eine Persistierung in eine Oracle-Datenbank.
Dieses Projekt war teilweise eine Nebentätigkeit. Der Arbeitsaufwand betrug etwa 6 Monate.
Entwicklung und Umsetzung eines CI-Prozesses:
1994
Abitur
1994 ? 2001
Studium der Naturwissenschaftlichen Informatik an der Universität Bielefeld
Abschluss: Diplom (Zeugnisgesamtnote 1)
07/1998 ? 12/1998
Auslandssemester am Royal Melbourne Institute of
Technology (RMIT), Australien
02/2010 ? heute
freiberufliche Tätigkeiten in der Softwareentwicklung
02/2009 ? 01/2010
Sabbat-Jahr/Elternzeit mit Familie in Australien und Neuseeland
01/2005 ? 01/2009
Angestellter der GeoDok GmbH, Bielefeld
ab 2007: Leiter Consulting & Entwicklung
2002 ? 12/2004
Angestellter und Gesellschafter der data-Q GmbH,
München
2001 ? 2002
freiberufliche Tätigkeiten in der Softwareentwicklung
Auszeichnungssprachen
Frameworks
Server-Software
Methoden
Entwicklungsumgebungen und -tools
PC
Aufgaben im Studium:
Projekt ?AkuVis?:
keine Präferenz
Entwicklung einer Android-App zur Fortbildung in aktuellen Technologien, Programmiersprachen und Plattformen.
Die App basiert auf einer selbstentwickelten Bibliothek in Kotlin zum Aufbereiten eines Wegenetzes aus OpenStreetMap (OSM), sowie das Tracking von Bewegungen darauf. Die UI wurde mit dem Crossplatform-Framework Flutter in Dart entwickelt und an das Kotlin-Backend angebunden. Neben der Einarbeitung in neue Programmiersprachen und Frameworks bestanden folgende Herausforderungen:
Effiziente Datenhaltung und Beschränkung auf das nötigste; nur Daten im aktuellen Sicht- oder Trackingbereich werden in die lokale Datenbank bzw. den Hauptspeicher geladen.
Asynchrones Laden, Rendern und Aktualisieren der Daten ohne die Responsivität der App einzuschränken
Aufsetzen eines OSM-Servers
Eine bereits in früheren Projekten aufgebaute und erweiterte Software zur Verwaltung von aeronautischen Daten auf Basis von AIXM 5 wurde um diverse Features erweitert:
Autorisierung von Datenänderungen auf Basis der enthaltenen Geoinformation
Unterstützung für weitere Koordinatensysteme im gesamten Stack (Datenbank, Backend, Frontend), dazu u.a. Erweiterung einer internen DSL für die Transformation von AIXM 5.1 nach AIXM 4.5 und zurück
Erweiterung der automatischen Pflege von sog. Mapping Metadaten, die die reversible Abbildung von Datenstrukturen von AIXM 4.5 auf AIXM 5.1 und zurück erlauben
Performanzoptimierung durch Denormalisierung auf Datenbankebene
Implementierung einer Schnittstelle zur Bereitstellung von Geodaten im GeoJSON-Format zur Ansteuerung durch eine OpenLayers-basierte Web-Komponente
Implementierung einer WFS-TE Schnittstelle für den Zugriff durch Drittsysteme (WFS-TE: siehe auch frühere Projekte)
Optimierung des Buildprozesses: automatische Branchtests mit Jenkins Pipeline Scripts
Neuentwurf des gesamten Datenimportprozesses und deren Implementierung. Ausrichtung auf massive parallele Verarbeitung und Verwendung der Java Streams API.
Erweiterung des temporalen Konzepts durch Entwurf und Implementierung des Imports von sog. Baselines (festen Zwischenständen), die zusätzlich zu Änderungen (Deltas) existieren können.
Anbindung einer NOTAM Datenbank per SOAP.
Für weitere Details siehe entsprechende frühere Projektbeschreibung unten.
Dieses Projekt war eine Nebentätigkeit. Der Arbeitsaufwand betrug einige Wochen.
Eine Inhouse-Lösung bestehend aus mehreren Servern zur Steuerung und Erfassung der Werbeauspielung auf selbst betriebenen, stark frequentierten Internetportalen wurde durch eine von einem externen Dienstleister betriebene Lösung ersetzt. Ein Java-Standalone-Anwendung sollte dabei zeitgesteuert einen performanten Datenabzug per SOAP und eine Datentransformation gewährleisten, sowie eine Persistierung in eine Oracle-Datenbank.
Dieses Projekt war teilweise eine Nebentätigkeit. Der Arbeitsaufwand betrug etwa 6 Monate.
Entwicklung und Umsetzung eines CI-Prozesses:
1994
Abitur
1994 ? 2001
Studium der Naturwissenschaftlichen Informatik an der Universität Bielefeld
Abschluss: Diplom (Zeugnisgesamtnote 1)
07/1998 ? 12/1998
Auslandssemester am Royal Melbourne Institute of
Technology (RMIT), Australien
02/2010 ? heute
freiberufliche Tätigkeiten in der Softwareentwicklung
02/2009 ? 01/2010
Sabbat-Jahr/Elternzeit mit Familie in Australien und Neuseeland
01/2005 ? 01/2009
Angestellter der GeoDok GmbH, Bielefeld
ab 2007: Leiter Consulting & Entwicklung
2002 ? 12/2004
Angestellter und Gesellschafter der data-Q GmbH,
München
2001 ? 2002
freiberufliche Tätigkeiten in der Softwareentwicklung
Auszeichnungssprachen
Frameworks
Server-Software
Methoden
Entwicklungsumgebungen und -tools
PC
Aufgaben im Studium:
Projekt ?AkuVis?:
keine Präferenz
Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.