Jürgen SImon
Freier Software-Ingenieur
Persönliche Daten
Deutsch (Muttersprache)
English (Muttersprache)
Portugiesisch (Grundkenntnisse)
Zur Person
Beschreibung
Referenzen
Leitender Entwickler
Web- und GIS Entwickler, Wissenschaftlicher Berater
Web-Entwickler, Java/JSF
Anlagen
Curriculum Vitae
Überblick
Name
Jürgen Simon
Ausbildung
Studiengang Physik (Haupfach Meteorologie, Nebenfächer
Angewandte Geophysik und Theoretische Physik) an der Universität
zu Bonn, Diplom in 2003. Doktorarbeit laufend.
Sprachen
Deutsch (Muttersprache), Englisch (sehr gut), Portugiesch (Anfänger)
Schwerpunkte IT
In der letzten Zeit hauptsächlich Webanwendungen in
Java/Javascript, Konzeption und Implementierung von Microservice -
Architecturen, Leitung kleinerer bis mittelgrosser Entwicklerteams
und Projektmanagement. Würde mich gerne mehr in Richtung
wissenschaftlicher Softwareentwicklung oder Projektmanagement in
internationalen Remote-Teams entwickeln. Ich arbeite seit über zehn
Jahren ausschliesslich remote.
Kontakt (PT)
Rua Joaqim Martins Bispo Jr. 113
6000-037 Castelo Branco, Portugal
F: +351 272 337 419 M: +351 965 290 341
Kontakt (DE)
Quirinusstrasse 13
52353 Düren, Germany.
Email
Referenzen
Ben Gillingham, Ag-Space (
)
Peter Folle, Triginta Capital ([email protected])
Martin Fehlhaber, GFT (
)
Mark Sandroc, WDR (
)
Prof. Clemens Simmer, MIUB (
)
Fertigkeiten
Planung & Design
Requirement-Management, Schreiben von High-Level –
Dokumentation, System-Entwurf, Software-Architektur und
technische Planung komplexer Projekte, Protokoll-Design und
Rapid Prototyping.
Projektleitung
Agiles Projektmanagement mit SCRUM und Kanban.
Lead-Programming und Code-Revision zur Qualitätskontrolle,
Dokumentations-Management von Code- und Projektdokumentation.
Atlassian (JIRA/Confluence etc.), TRAC, Redmine.
Programmierspachen
Java, C/C++, Objective-C, Python, Javascript, FORTRAN, Tcl/Tk,
Pearl, Ruby, Shellscripting, was immer gebraucht wird.
OOA/OOD
Design Patterns (Gang of Four etc.), UML, CASE Tools (Rational
Rose, ArgoUML, Together)
IDEs
Borland Suite, Eclipse, XCode, JBuilder, IntelliJ, Netbeans,
PyCharm, CLion und andere.
Deployment/CI
Heroku, Github, Bitbucket, CircleCI, TravisCI, Papertrail, Slack,
Hudson/Jenkins, Teamcity.
Cloud Services
AWS Services (S3, ES, IAM etc.), RabbitMQ
Revision Control
GIT, Mercurial, Subversion, CVS, Perforce.
SQL Datenbanken
PostgreSQL / PostGIS, MySQL, Oracle, H2, Derby, andere.
NoSQL Datenbanken
Couchbase (inklusive Couchbase Mobile), MongoDB
Mobil
iOS, Android, Hybrid-Apps
Web
HTML5, CSS3, XML, JSON, Ajax, REST Backend / Microservices
Javscript Frameworks
Node.js, Angular, Bootstrap, React, Express, Strongloop, JQuery,
Sencha, Treesaver, Google Maps, Bing Maps, D3J u.v.m.
J2EE Stack
JSF, Primefaces, myBatis, JDBC, Spring, Hibernate
Java Applikationsserver
Apple WebObjects, Tomcat, JBoss
BI Frameworks
Jasper Reports, Crystal Reports
EAI
XML-RPC, SOAP, CORBA, RMI, JMS
WebServices
SOA, REST, JAX-WS / JSR244
XML
DTD, XSD, XSLT, Xpath, SAX- und DOM – Parser, JAXB etc.
Protokolle
TCP/IP, HTTP/HTTPS, proprietäre Protokolle (ASN.1)
OSX Programmierung
Cocoa / Foundation, AVFoundation, Quartz
Administration
Linux / Unix / OSX / Debian / Raspbian
Verschiedenes
SugarCRM, Lucene/SolR, OpenVPN, Java Swing, Raspberry Pi
Kommerzielle Projekterfahrung
(IamBNB, Amsterdam, 2016 bis dato) [Remote] {Hotelgewerbe}
Ich leite das Entwickerteam in einem prämierten Amsterdamer Start-Up (Liste der Top-Ten
Start-ups in den Niederlanden in 2015). Ich übernehme die technische Leitung und erstatte
dem CTO Bericht. Ich arbeite eng mit dem ‘Product Owner’ zusammen bei der Konzeption
neuer Features und berate ihn bei den technischen Aspekten der Planung. Ich halte
regelmässige Code-Revisionen ab um die Qualität und Konsistenz des Sourcecodes zu
erhalten und zu verbessern. Wir verwenden Javascript sowohl im Backend (Node.js) als auch
im Frontend (Angular).
Meine Arbeit im Backend ist in der Hauptsache das Design und Implementierung einer
modernen Mikroservice-Architektur in Node.js und loopback sowie Anbindungen an externe
REST-Dienste wie Airbnb, Booking.com, Amazon S3, Mandrill und mehr. Im Front-end geht
es um eine reaktive Angular-Anwendung, die es dem Personal ermöglicht alle Aspekte des
Vermietens einer Wohnung über Airbnb oder Booking.com für den Wohnungseigner so
problemlos wie möglich zu gestalten und den Gästen einen reibungslosen und netten Urlaub
in Paris oder Amsterdam zu ermöglichen.
Durch loggen von Events in einen Elasticsearch-Server und Auswertung in Kibana (alles in
AWS gehostet) ist es uns möglich eine gutes Monitoring von Problemen zu erreichen und
auftretende Bugs oder Integrationsprobleme schnell zu erkennen, zu prioritisieren und dem
Management anschaulich zu kommunizieren.
Zudem führe ich diverse Tätigkeiten aus die klassischerweise dem Dev-Ops – Bereich
zugeordnet sind, wie das Management der Appplikation auf Heroku und die Wartung des
Sourcecode-Repositories (Github). Ausserdem die Pflege unserer Entwicklungsumgebung mit
Hilfe von Bash-Scripten und Docker, die Bereitstellung und Aktualisierung von Testdaten
extrahiert aus einem Produktionsdatenkonvolut und so weiter.
Lasttests mit Jmeter und das Erstellen von Experiment-Protokollen zwecks Erforschung der
Grenzen von eigenen und besonders auch externen APIs fallen ebenfalls in mein Metier. Ich
benutze dazu Apache Jmeter. Derweil der Prozess solide Daten zu bekommen zeitraubend
sein kann, glaube ich dass Quantifizierung und laufende Messung solcher Performance-
Daten langfristig die einzig valide Methode ist ordentlich Fortschritt in diesem Bereich zu
messen. Dazu kommen das regelmässige Erfassen der Zufriedenheit von Nutzern der
Applikation mit Antwortzeiten, Aufbau und Workflow in der Anwendung etc. Insgesamt
bevorzuge ich einen datengesteuerten Ansatz in der Entwicklung.
Neben den rein technischen Anforderungen übernehme ich auch Management-Aufgaben wie
Organisation des Kanban Workflows (mit Hilfe unseres JIRA Boards), Erstellen von User-
Acceptance Tests und Beaufsichtigung bei der Durchführung, sowie die Schulung von
jüngeren oder weniger erfahrenen Mitarbeitern in Techniken, Patterns oder Methodik der
Software-Entwicklung und unterstütze den CTO bei der Personalentwicklung.
(Javascript ECMA5+6, Node.js, Angular, Grunt, Bower, Loopback, Mocha, Karma, Protractor
(Selenium), Postgre, Github, JIRA, CircleCI, Heroku, Slack, Elasticsearch/Logstash/Kibana
(ELK), RabbitMQ/AMQP, AWS-S3, newrelic, Jmeter, Docker, json-rules, D3 zur
Visualisierung von Geschäftsmetriken).
(AgSpace Precision Farming, Swindon, 2014 - 2015)
[Remote] {Agrikultur}
Entwicklung auf allen Ebenen des Technologie-Stacks von AgSpace-Software für Precision
Farming. Intensive Arbeit am Webservice-Backend und Swing Frontend. Datenstrukturen und
Import-Routinen für regulatorische Daten von Insektiziden und Pestiziden. Interfaces für die
Planung und Applikation von Spray-Mixen. Geoinformatische Anwendungen mit Satelliten-
Daten und verschiedenen Datenformaten, vorwiegend in Python. Klassifizierung von
Pflanzenkrankheiten und Schädlingen mit Hilfe eines multinonialen, multivariaten Bayes-
Classifiers. Refactoring eines Kartenwerkzeugs von Bing Maps nach Google Maps.
Datenbank-Design. (Java, Python, Javascript, Spring, Hibernate, Swing, Google Maps, Bing
Maps, Apache Mahout, QGis, various GIS tools, Mercurial, Bitbucket, JIRA).
(WDR Media Group, Köln, 2013 - 2014)
[Überwiegend vor Ort, teilweise remote] {Medien}
Überarbeitung der Architektur einer Real-Time Ticker – Lösung für Sportnachrichten für den
grössten deutschen Anbieter von Sportnachrichten: sportschau.de . Design und
Implementierung von REST Webdiensten und Front-Ends mit JSF/Primefaces. Anbindung
von Push-Diensten und Twitter. WebServices zur Versorgung der Sportschau Apps mit Live-
Daten. Das Projekt geht zur Bundesliga 2014 live. (Java, J2EE, JSF/Primefaces, iBatis, JAX-
RS, XML, HTTP, Apple Push, Google Cloud Messaging, Twitter, Javascript, iOS, Android).
Entwicklung einer Archiv-Lösung für Nachrichten und Artikel im Rahmen einer CMS-
Umstellung. Die Daten wurden aus einem alten Format transformiert und indiziert, sowie in
einer neuen HTML-Darstellung bereitgestellt. Eine Javascript-basierte Oberfläche für die
komfortable Suche nach Text- und/oder anderen Kriterien wurde in JQuery implementiert.
(Java, J2EE, XML, XSLT, SolR, Javascript, JQuery, HTML5/CSS3)
Überarbeitung eines Web-Dienstes für Akronyme im WDR (fertiggestellt). (Java, J2EE,
myBatis)
(Gerolsteiner Brunnen GmbH, Gerolstein, 2011 - 2014)
[Remote] {Nahrungsmittel}
iPhone App "TrinkCheck" zur Protokollierung und Verbesserung des Trinkverhaltens mit
Empfehlung basieren auf den Vorgaben der Deutschen Gesellschaft für Ernähung
(www.dge.de). Die App erlaubt dem Nutzer Empfehlungen für die Trinkmenge basierungen
auf verschiedenen, täglich wechselnden Faktoren sowie Alter und Gewicht zu erhalten. Es
gibt eine tabellarische und graphische Verlaufs-Darstellung, statische und dynamische Alarm-
Funktionen und einen Mineralienrechner. Lokalisierung in Deutsch und Englisch. Die aktuelle
Version ist im iTunes AppStore erhältlich. (iPhone SDK 3.x – 7.x, Objective-C, SVN, Mingle,
Trac).
Android-Version der Trink-Check - Applikation. Teile der Entwicklung wurden an eine externe
Firma vergeben. Das Projektmanagement, Teile des Codes und Qualitätskontrolle wurden
von webtecc übernommen. Die App ist im Google Play Store erhältlich. (AndroidSDK 2.3 -
4.x. Java. SVN/Git,Trac).
(Ambassadors Associated International Networking, Bonn, 2012)
[Remote] {Politik}
Gefallen für einen Freund: Netzauftritt und Firmen-Infrastruktur für Ambassador Associates
International (
http://www.aain.biz
). Das eigentliche Design wurde von einer Berliner
Freelancerin erstellt. Zumeist Projektleitung, Administration und Koordination.
(GFT, Bonn, 2011 - 2012) [Vor Ort] {Medien}
Unterstützung bei der Konzeption und Umsetzung der Client-Anwendungen der
www.contentconverter.de – Plattform der Deutschen Post (via GFT). Darstellung von
redaktionellen Inhalten mit Hilfe von Treesaver in einer Javascript-Applikation, Layout
vollständig auf dem Client. Content-Verarbeitung und Lieferung mit CouchDB und Mobile
Couchbase. Native Client-Komponenten in Android und iOS. Technische Leitung der Client-
Entwicklung (5 Entwickler). (CouchDB, Mobile Couchbase, Java, Javascript, HTML5, ExtJS /
Sencha-Touch, Treesaver, WebKit, iOS, Android).
(YOC-AG, Cologne, 2010 - 2011)
[Teilweise remote] {Medien}
Suite von Applikationen zu verschiedenen Content-Bereichen des DuMont Verlagshauses.
Modulare Entwicklung. Konfigurierbare Applikationen aus Modulen. Release der ersten 6
Apps im August 2010. (iPhone SDK 4.0, Objective-C, JSON over HTTP, Subversion).
Knorr Rezepte-Applikation. Umfangreiche Rezept-App mit Darstellung von Rezept-Details in
verschiedenen Orientierungen, Suchfunktion, ungewöhnlichen Navigationselementen. Derzeit
im App-Store Release-Prozess. (iPhone SDK 4.0, Objective-C, CoreGraphics, CoreData,
JSON, Subversion).
Jacobs Photo-Freezer. Applikation zur Bildmanipulation (Vereisung durch Pusten in’s
Mikrofon, Wegreiben mit den Fingern) im Rahmen einer Marketing-Aktion. Erhältlich im App-
Store. (iPhone SDK 3.2, Objective-C, CoreGraphics, Facebook-Integration, Subversion).
(Violet Enterprise Solutions, Singapore, 2009 - 2012)
[Remote] {Hotelgewerbe}
iPhone Applikation für interne Nutzung bei Violet Enterprise Solutions (Singapur). Diverse
Tabellenansichten mit nachladenden Bildern, Detailansichten und Bildern. Anbindung an
XML-Backend. (iPhone SDK 3.1, Objective-C, XML, Subversion, Trac).
(Flow By Access, Bonn, 2009 - 2012)
[Remote] {Medien}
Übernahme des Codes aller Applikationen von Flow By Access (Gig Guide, diverse Radio-
Clients). Refaktoring der Code-Basis und Weiterentwicklung des GigGuide zur Version 1.2
(im AppStore erhältlich). (iPhone SDK 3.0 – 3.1, XML, Objective-C, SVN, Trac).
(FOC World AG, Zurich, 2010)
[Remote] {Mode}
Integration einer SolR-Indizierung und Suchmaschine in eine Mode-Outlet-Webseite dert FOC
World AG (www.brands-paradise.com). (SolR, Java, Apache Tomcat, OpenBIZ).
(Kontrast Communication Services, Düsseldorf, 2008 - 2010) [Remote] {Medien, Bildung}
Applikation zum Management von bundesweiten Werbecampagnen für einen grossen
deutschen Mobilfunk Carrier, Abwicklung von Kampagnen von der Konzeption über Content-
Management, Kommunikation mit Agenturen und Werbepartnern bis hin zur Auslieferung.
Hochkomplexe Anwendungslandschaft mit WebServices, Indexing-Diensten, Adobe Flash
und Webapplikationen. Integration von Web2.0 Features. Apple WebObjects, Webservices,
(XML, SolR und Lucene Indexing, Java, Javascript, Java Applets, Ajax, FTP, SVN und Trac).
Refactoring und Erweiterung von WebObjects - Applikationen im E-Training Umfeld. Aufbau
von SOA Infrastrukturen und Portal-Technologie für Toshiba und Vodafone. (Apple
WebObjects, Single-Sign-On. Oracle, MySQL, Java, SVN, Trac).
(Triginta Capital, Düsseldorf, 2005 – 2008) [Remote] {Finanzindustrie}
Management - Informationssystem für einen namhaftes deutsches Private Equity Haus.
Komplexe Geschäftslogik zur Erfassung der Marktsituation und Filterung nach Kriterien bis
hin zum Controlling von Firmen, inklusive Reporting - Mechanismen etc. Kurze
Entwicklungszyklen (Agiler Ansatz) Umfangreicher und erfolgeicher Einsatz von DirectToWeb
Technologie. Ausführliche Projektdokumentation mit Wiki. (Apple WebObjects, OpenBase,
MS Access + Excel, MySQL, Java, XML, SVN, POI, Jasper Reporting, Business Objects,
Crystal Reports).
(Meteorologisches Institut Uni Bonn, 2007 bis dato) [grösstenteils remote] {Wissenschaft}
Refactoring eines Projektes zur Verarbeitung von meteorologischen Niederschlagsdaten und
Transformation in ein regelrechtes IT Projekt. Erweiterung um neue Formate (Radolan,
HDF5) nach Spezifikationen. Erstellen einer Bibliothek und diverser Tools und Prozesse und
Integration in den operationellen Workflow. Die Bibliothek libradolan ist auf GitHUB verfügbar
und immer noch in Gebrauch. (C, C++, Eclipse CDT, Proj4, GeoTIFF, SVN, Git, Github)
(Debitel, Stuttgart, 2006) [Remote] {Telekommunikation}
Beratung bei der Entwicklung von WebServices im SOA Umfeld. Spezielle Hilfestellung bei
Problemen mit SOAP in einem mCommerce Produkt. (SOAP, XML, WebServices).
(webtecc, 2005 - 2015) [Eigene Büros] {Verschiedene}
iPhone-Anwendung "Bellyaches", die bei der Analyse von Ursache und Wirkung beim Essen
helfen soll. Die Anwendung ist besonders für Menschen gedacht, die unter
Nahrungsmittelunverträglichkeiten (etwa Fructose- oder Lactose – Malabsorption,
Glutenallergie oder chronischer Colitis) leiden und herausfinden möchten, welche
Lebensmittel sie vertragen und welche nicht. Mit PDF-Export von Ernährungs- und
Symptomtagebuch und einer statistischen Analysefunktion. Aktuelle Version im AppStore
erhältlich. (iPhone SDK 3.0 – 7.x, Objective-C, SVN, Trac).
Konzeption und Entwicklung des webtecc Push-Services (http://www.webtecc-push.com). Es
handelt sich um eine Webservice-Schnittstelle mit komfortabler Administration, die App-
Entwicklern plattformübergreifende Push-Dienste zur Verfügung stellt. Mit einer Client-
Bibliotheken für iOS. Projekt ist nicht länger live. (Java, Apple WebObjects, WebServices,
Apple Push, Google Cloud Messaging, Android, iOS, SVN, Trac).
Konzeption und Umsetzung einer Applikation zur Assimilation und Visualisierung von
meteorologischen Radarinformationen im europäischen Radarverbund. Cross-Plattform-
Entwicklung parallel für C und Java – basierte Endgeräte, Funktionen gekapselt in jeweils C
und Java basierte Bibliotheken. Verwendung von CMake für Cross-Plattform-Entwicklung.
Implementierung einer iPhone-Applikation unter Verwendung der C-Bibliothek. Entwicklung
und eines Java Applets mit der Java Bibliothek. Visualisierung von Radar-Rohdaten in GIS
Kontexten unter Verwendung von OpenGIS Mapservern und OpenCV Grafikbibliothek.
Erstellung des Kundenportals mit WebObjects. Anbindung der Clients über REST. Weitere
Clients geplant für RIM, JavaFX und Android. (iPhone SDK 2.0 – 3.1, Objective-C, C, C++,
CMake, Xcode, Java, Eclipse, PostGIS, OpenGIS, OpenCV, uDig, Mingle, XML, REST,
WebObjects).
(Phenomic Game Development (heute EA Studios), Ingelheim, 2004) [Remote] {Gaming}
Design und Entwicklung einer Online - Plattform für Spellforce 2. Dynamische Webseiten für
Spieler, Statistiken usw. Anbindung von Clients über Webservices und TCP/IP für Staging
und Chat. JMS im Backend. (Java, Visual C++, MySQL, WebObjects, Axis, JBoss und
JBossMQ, gSoap, OpenSSL. Perforce, Doxgen).
(T-Mobile, Bonn, 1999 - 2004) [Vor Ort] {Telekommunikation}
Design und Programmierung einer TCP/IP - Schnittstelle als Java Server für Provisioning.
Integration in SunCluster 2.0. Hochperformantes Design den neuen .nio Klassen. (Java 1.4).
(Java, TCP/IP, CORBA, Oracle)
Vorstellung und anschliessende Administration eines Wiki-Webs zur Verbersserung der
Kommunikation zwischen den Entwicklern, Testern und Betriebspersonal.
(Twiki, Apache, CSS).
Neuentwicklung der B2B Schnittstelle des OTA Servers als WebServices mit Cluster-
Integration. (C++, Java, SOAP, RMI, CORBA, SunCluster 2.0, Apache Tomcat).
Entwicklung eines Tools, mit dem Datenbank-Trigger als Auslöser für Logging-Prozesse.
Genutzt werden können. Graphischer Konfigurationsassistent. Dynamische Generierung von
Java und PL/SQL Code aus Templates und Integration in UNIX Prozesse. (Oracle, Java,
PL/SQL, Java Stored Procedures, Swing).
WebObjects-Prototyp einer Kundenapplikation im Zusammenhang mit einem Produkt zur
Dynamischen Vergabe von MSISDN Nummern. Konfiguration von zeitlichen Vorgängen,
Benutzergruppen, Erreichbarkeit von einzelnen Nutzern usw. (Java, WebObjects, Oracle,
Solaris).
Entwicklung von C++ Modulen für den OTA Server. Konfiguration, Core-Engine, SMS
Kodierung.Stabilitäts- und Performance Tests. Deployment. Refactoring der OTA engine.
Erweiterung um eine Schnittstelle zur All-In-One Applikation. SMSC Anbindung. Cluster-
Integration. (C++, Oracle, RogueWave, XML, yacc/lexx. EMI - Protokoll (SMSC), CORBA,
SunCluster 2.0).
Entwicklung einer Schnittstelle für den OTA Server. B2B Anbindung der 'All-In-One'
Applikation auf SIM - Karten, mittels OTA Server über ein HTTP basiertes Protokoll.
Programmierung einer graphische Testsuite als Applet und Applikation. (HTTP, OTA, AIO,
Java, Swing/AWT).
Entwicklung eines Strategiespiels für WAP Phones mit Internet - Anbindung. (Apple
WebObjects, Java, WAP/WML. Oracle).
Test von WAP Phones verschiedener Hersteller auf Benutzbarkeit, Kompatibilität und
Sicherheitslücken bezüglich geplanter mCommerce Applikationen. Entwicklung einer WAP
mCommerce Applikation. Mit grossem Erfolg auf der Cebit 99 präsentiert. (WML, Ericsson's
Jaffa Framework, RMI, Java, Oracle).
Evaluation verschiedener CORBA - Orbs auf Solaris 8. Interoperabilitäts- und
Integrationstests. (Oracle. RogueWave DBTools+, Visibroker, TAO, Mico, Omniorb.
Java,C++).
Konzeption und Entwicklung eines Installationsmanagers zur Installation verteilter Systeme
auf Clustern unter Solaris. Installation von Software-Paketen und Datenbank-Tabellen.
(Tcl/TK, Shellscript, Package-Manager und Oracle).
Entwicklung einer Projektmanagement-Software für interne Zwecke. (MS-Access und Visual
Basic).
(ProSolutions, Bonn, 2000) [Remote] {Telekommunikation}
Entwicklung einer komplexen WebObjects-Komponente zur Visualisierung von Slices aus
einem Data-Cube. Teil eines von ProSolutions entwickelten MIS für T-Mobile. (Java,
WebObjects, GIFplot).
(Tegaron Telematics, Bonn, 1998-1999) [Vor Ort] {Telekommunikation}
Test von Telematik - Endgeräten in einem Computerlabor. Automatische und Manuelle
Testverfahren nach Spezifikation. Erstellen von Testreports. (Testing).
Wissenschaftliche Erfahrung
(Hans-Ertel Zentrum für Wetterforschung und MIUB Bonn, 2011 - 2014)
Doktorarbeit (laufend) der Meteorologie. Bis Mitte 2013 tätig als wissenschaftlicher
Mitarbeiter im Hans-Ertel – Zentrum für Wetterforschung im Projekt OASE (Themenbereich 1
– Atmosphärendynamik und Vorhersagbarkeit). Ich bin verantwortlich für die Entwicklung und
Anwendung hoch-performanter Algorithmen zur Objekterkennung und dem Tracking von
Objekten zwecks der Erforschung von konvektiven Stürmen mit Hilfe von hochaufgelösten
Komposits aus 2D/3D Radar-, Satelliten- und Blitzsensor-Daten. Nebenbei Einführung von
GIT und Redmine am Institut mit entsprechender Lehr- und Beratungstätigkeit.
Präsentationen: Hans-Ertel-Zentrum (DWD), EGU Wien, X-Band Workshop Delft, ESSL
Helsinki,
HDCP2 Meetings, Workgroup Meetings
(Polarimetrische Radar-, Satelliten- und Blitz - Daten, C++, Templates, NetCDF, HDF5, TBB,
Boost, FLANN, Visualisierung, GIT, Redmine)
(Meteorologisches Institut Bonn, 1996 - 2005)
Diplom-Arbeit (2003): Tracking von Regenzellen in zweidimensionalen Radardaten unter
Einsatz von Methoden aus der AI/Computer-Vision (Scale-Space Theory). (Objective-C,
GNUDB, X-Band Radardaten, Bildverarbeitung, Visualisierung, CVS, QT)
Diverse Projekte während des Studiums zur numerische Strömungssimulationen,
Modellierung von Erdbeben and more. (Datenassimilation, Simulation)
Curriculum Vitae
Overview
Name
Jürgen Simon
Education
Diploma in Physics (Major in Atmospheric Physics, Minor in Applied
Geophysics and Theoretical Physics), University of Bonn.
Ongoing PhD (Meteorology)
Nursing (Diploma), Psychiatry, Intensive Care and Oncology.
Languages
German (native) and English (very good), Portuguese (Beginner)
Focus IT
Lately mainly web applications (full stack) in Java/Javascript, design
and implementation of micro service architecture, leading of small to
medium sized teams and project management. Would love more
scientific software development and more management / project
leading in international remote teams. I’ve been working remotely for
more than 10 years now.
Contact (PT)
Rua Joaqim Martins Bispo Jr. 113
6000-037 Castelo Branco, Portugal
F: +351 272 337 419 M: +351 965 290 341
Contact (DE)
Quirinusstrasse 13
52353 Düren, Germany.
Email
References
Jorg von der Ham, iambnb (
)
Ben Gillingham, Ag-Space (
)
Peter Folle, Triginta Capital ([email protected])
Martin Fehlhaber, GFT (
)
Mark Sandrock, WDR (
)
Prof. Clemens Simmer, MIUB (
)
Skillset
Planning and design
Project management, requirement management, high-level design
and documentation, architecture, everything involved in the technical
side of planning and implementating complex projects, rapid
prototyping.
Project leading
Agile project management with SCRUM and Kanban. Lead-
programming and code revisions. Quality control. Documentation
management for code- and project documentation.
Atlassian (JIRA/Confluence etc.), TRAC, Redmine.
Programming languages
Java, C/C++, Objective-C, Python, Javascript, FORTRAN, Tcl/Tk,
Pearl, Ruby, Shellscripting. Whatever does the job.
OOA/OOD
Design patterns (GoF etc.), UML, CASE Tools (Rational Rose,
ArgoUML, Together)
IDEs
Borland Suite, Eclipse, XCode, JBuilder, Netbeans, IntelliJ,
PyCharm, CLion and others.
Deployment/CI
Heroku, Github, Bitbucket, CircleCI, TravisCI, Papertrail, Slack,
Hudson/Jenkins, Teamcity
Cloud Services
AWS Services (S3, ES, IAM etc.), RabbitMQ
Revision Control
GIT, Mercurial, Subversion, CVS, Perforce
SQL Databases
PostgreSQL / PostGIS, MySQL, Oracle, H2, Derby, others.
NoSQL Databases
Couchbase (including mobile), MongoDB
Mobil
iPhone / iPad (~10 apps), Android (2 apps)
Web
HTML5, CSS3, XML, JSON, Ajax
Javscript Frameworks
Node.js, Angular, Bootstrap, React, Express, Strongloop, JQuery,
Sencha, Treesaver, Google Maps, Bing Maps, D3J and more.
J2EE Stack
JSF, Primefaces, myBatis, JDBC, Spring, Hibernate
Java Application-Servers
Apple WebObjects, Apache/Tomcat, JBoss
BI Frameworks
Jasper Reports, Crystal Reports
EAI
XML-RPC, SOAP, CORBA, RMI, JMS
WebServices
SOA, REST, JAX-WS / JSR244
XML
DTD, XSD, XSLT, Xpath, SAX- and DOM parsers, JAXB etc.
Protocols
TCP/IP, HTTP/HTTPS, proprietary protocols (ASN.1)
OSX Programming
Cocoa / Foundation, AVFoundation, Quartz
Administration
Linux / Unix / OSX / Debian / Raspbian
Miscellaneous
SugarCRM, Lucene / SolR, OpenVPN, Java Swing, Raspberry Pi
Commercial project experience
(IamBNB Amsterdam, 2016 to date) [remote] {hospitality}
I’m lead developer in an Amsterdam startup (top ten start-up in the Netherlands in 2015)
where I perform the technical lead of an international remote team, reporting to the CTO. I
work closely with the product owner to advise on the technical aspects of planned features,
perform create and maintain the architecture and hold regular code reviews to maintain and
improve the quality and cohesion of the code base, which is mainly Node.js and Angular.
Our work consists largely of design and implementation of a modern microservices
architecture including B2B integrations with external API such as Airbnb (inofficial),
booking.com and others. An Angular front-end provides the people working with customers
with a reactive UI designed to help them meet the needs of the customers and smoothly
organise all the aspects around making their stay in Amsterdam or Paris as pleasant as
possible. By logging to Elasticsearc and analyse logs in Kibana, I am capable of delivering a
good prioritisation of bugs and other problems and monitor the status of the integration
quallity with external API (booking.com/Airbnb) in an efficient and eaily communicable
manner. I’m also performing many dev-ops tasks, maintaining the application on Heroku and
many of the AWS services we are using.
To facilitate the development process I automate many of the processes in development
(developer setup, regular development data updates from production data and so on as well
as deployment (automated deployment and repository maintenance) using bash scripts and
docker.
I also perform extensive load and other behavioral tests on internal and external services
using experimental protocols and Jmeter scripts, design test protocols and documentation for
user acceptance testing and help conducting those. Getting solid data to base your decisions
on can be time consuming, but only by developing quantifiable criteria can one truly gauge
one’s progress.
Besides the technical tasks, I mentor/tutor younger and/or more inexperienced members of
the team in coding, patterns and methodology, organisise the JIRA based Kanban workflow
and help the CTO with his decision making process.
(Javascript ECMA5+6, Node.js, Angular, Grunt, Bower, Loopback, Mocha, Karma, Protractor
(Selenium), Postgre, Github, JIRA, CircleCI, Heroku, Slack, Elasticsearch/Logstash/Kibana
(ELK), RabbitMQ/AMQP, AWS-S3, newrelic, Jmeter, Docker, D3 for the visualisation of
business metrics).
(
AgSpace Precision Farming,
Swindon, 2014 - 2015) [remote] {agriculture}
I remotely developed software on all levels of the stack of the precision farming software
provided by AgSpace, more intensively on the web services backend and Swing UI client. I
created data structures and import routines for information from regulatory bodies concerning
insecticides and pesticides, provided an interface for planning and applying spray mixes. I
enjoyed the geoinformatical applications, working with satellite imagery in python. I also
created webservices for applying external rulesets (by seed companies for example) to plans
made by farmers. My favourite piece of work was the classification of crop diseases and
pests using a multinomial multivariate Naïve Bayes classifier. Another part of my duties was
refactoring a mapping framework from Bing Maps to Google Maps.
(Java, Python, Javascript, Spring, Hibernate, Swing, Google Maps, Bing Maps, Apache
Mahout, QGis, various GIS tools, Mercurial, Bitbucket, JIRA).
(WDR Media Group, Cologne, 2013 - 2014) [mostly on site, some remote] {media}
I performed a vast refactoring and extension of a real-time news system for sports news for
the biggest German sports news provider sportschau.de. I was resposible for the design and
implementation of the REST webservices backend (JSR244) and the JSF front-end
components. The work entailed connections to Push Services (like APNS and GCM) as well
as Twitter and backend API for Sportschau’s mobile Apps. The project is going live for the
Bundesliga 2014.
(Java, J2EE, iBatis, JAX-RS, XML, HTTP, JSF, Primefaces)
Before that, I developed a news archiving solution in the context of CMS change at the WDR.
A transformation of news articles from an customary XML was required, I designed a system
indexing the transformed legacy data using SOLR. HTML/Javascript front-end for archive
searches with JQuery. The system was important for journalists to have access to past
articles of this broadcasting station.
(Java, J2EE, XML, XSLT, SolR, Javascript, JQuery, HTML5/CSS3)
I also updated a webservice for an ancronym database @ WDR
(Java, J2EE, myBatis)
(Gerolsteiner Brunnen GmbH, Gerolstein, 2011 - 2014) [remote] {food }
The iPhone App ‘TrinkCheck’ allows users to log their water consumption and compare it to
guidelines layed out by the German society for nutrition (www.dge.de). The app allows the
user to get recommendations based on a number of daily varying factors as well as age and
weight. It contains a graphical and tabular history, static and dynamic reminder functions and
a mineral calculator. The app is localized in English and German and available in AppStore.
The idea, concept and implementation was done by myself, I then sold the app to
Gerolsteiner for branding and a few extensions were commissioned.
(iPhone SDK 3.x – 7.x, Objective-C, SVN, Mingle, Trac)
I also supervised, code-reviewed and bugfixed an Android version of the TrinkCheck-App.
The bulk of the development was performed by contractors (due to time constraints) and I
mainly managed the project. The app is also available in Google PlayStore.
(AndroidSDK 2.3 - 4.x. Java. SVN/Git,Trac)
(Ambassadors Associated International Networking, Bonn, 2012) [remote] {politics}
As a favor to a friend I helped seting up a company web presence at http://www.aain.biz This
mainly required management, negotiations and service configuration. The actual web design
was done by a contractor from Berlin.
(Project management, operational setup)
(GFT, Bonn, 2011 - 2012) [on-site] {media}
I supported the conceptualisation, prototyping and implementation, mainly of the client-side
components of the www.contentconverter.de - Plattform of the Deutsche Post AG (via GFT).
Using Javascript with Treesaver for rendering news and magazine content through templates
and styles completely on the client in HTML5/CSS3 proved a challenging job. The tool is
mainly targeted at iOS and Android smartphones. I developed the native application
components in iOS and mentored the development on Android. Content providing and
exchange using CouchDB and MobileCouchbase was a new concept at the time. I enjoyed
the technical lead role in a small team of 5 developers tremendously and made a name for
creative solutions with an eye for the feasible.
(HTML5, ExtJS / Sencha-Touch, WebKit, Treesaver, iOS, Android. CouchDB, Mobile
Couchbase, Objective-C, C++, Java, Javascript, Python.)
(YOC-AG, Cologne, 2010 - 2011) [partially remote] {media}
Developed a suite of apps covering various areas of content provided by the established
German publishing house DuMont. Modular Application-Development, Apps are fully
configurable from modules through JSON files. Release of the first 6 Applications is planned
for August 2010.
(iPhone SDK 4.0, Objective-C, JSON over HTTP, In-App – Purchase, Subversion.)
Recipe application for the german food producer Knorr. Voluminous app with unusual
navigation elements and Core-Data backend. Search functions. Responds to orientation to
provide a different look on recipe details. Complicated CI integration.
(iPhone SDK 4.0, Objective-C, CoreGraphics, CoreData, JSON, Subversion)
Jacobs Photo-Freezer. Application for image manipulation (icing over by blowing into the
microphone and rubbing off with the fingers) for a marketing campaign. Released to
AppStore.
(iPhone SDK 3.2, Objective-C, CoreGraphics, Facebook-Integration, Subversion.)
(Violet Enterprise Solutions, Singapore, 2009 - 2011) [remote] {hospitality}
iPhone Application for in-house deployment at VES. Mutliple table views with reloading
images, detail views, image views, web views, etc. Link-up with backend via XML.
(iPhone SDK 3.1, Objective-C, XML, Subversion, Trac.)
(Flow By Access, Bonn, 2009 – 2012) [remote] {media}
Code responsibility for all applications marketed by Flow By Access. (GigGuide, numerous
radio-clients). Development of the new features for the GigGuide version 1.2, which is
available in the AppStore now.
(iPhone SDK 3.0 – 3.1, XML, Objective-C, SVN, Trac.)
(FOC World AG, Zurich, 2010) [remote] {fashion}
Integration of a SolR/Lucene framework into the website www.brands-paradise.com
(SolR, Java, Apache Tomcat, OpenBIZ)
(Kontrast Communication Services, Düsseldorf, 2008 – 2010) [remote] {media, education}
Application for the management of nation-wide advertisement campaigns for a big german mobile phone
carrier. Campaigns are supported at all stages from conception (including web-based sketch tools) to
content management (image database, text databases, corporate identity guidelines, etc) to
communication between advertisement partners, printers, radio stations and newspapers. Highly
complex application landscape with web services, indexing servers, Adobe Flash, Web2.0 features and
WebObjects applications.
(Apple WebObjects, Webservices, XML, SolR und Lucene Indexing, Java, Javascript, Java Applets,
Ajax, FTP, Subversion und Trac)
Large scale refactoring and extension of WebObjects applications in an E-Training context.
Migration of a complex live Oracle database to MySQL.
(Apple WebObjects, Single-Sign-On. Oracle, MySQL, Java, Subversion, Trac.)
(Triginta Capital, Düsseldorf, 2005 – 2008) [remote] {finance}
Management Information System (MIS) for one of the leading German private equity
providers at that time. Complex business logic for observing markets and information
gathering from various sources, including legacy (such as MS-Access databases) and
external sources. Data Mining. Controlling Modules. Fund management. Reporting tools for
aiding with the reporting to the companies investors, including automated document
generation, integration of Microsoft Office products and investor specific web applications.
Extensive use of Direct2Web (D2W, WebObject’s rule engine) for website and report
generation.
(Agile Development. Project documentation with Wiki. WebObjects, OpenBase, MS Access +
Excel, MySQL, Java, XML, Subversion, POI, Jasper Reporting, Business Objects (Crystal
Reports))
(Meteorological Institute Bonn, 2007 to date) [mostly remote] {science}
Refactoring of a set of applications and loose source codes for processing of meteorological
precipitation radars into a coherent library and set of applications. Extension of the library by
routines for reading newer formats, like HDF5 and Radolan (DWD) files. Integration into the
operational procedures. The C++ library libradolan is available on GitHUB and still in use.
(C, C++, Eclipse CDT, Proj4, GeoTIFF, Subversion)
(Debitel, Stuttgart, 2006) [remote] {telco}
Troubleshooting problems with webservices in an SOA context for an mCommerce
application. Special help with SOAP protocol and Apache Axis.
(Java, Apache Axis, SOAP, SOA)
(webtecc, 2005 to 2015) [own offices] {misc}
iPhone Application ‘TrinkCheck’ allows people to track their water intake and makes
recommendations based on changing daily conditions. Localized in German and English
language. The applications was created by us and later sold to Gerolsteiner.
(iPhone SDK 3.0 – 3.1, Objective-C, SVN, Mingle, Trac)
iPhone Application “Bellyaches” designed to help people to link symptoms to ingested food.
Aimed to assist people suffering from food tolerance issues (like lactose- or fructose
malabsorption , gluten allergy, chronic colitis etc.), helping them in finding out which type of
food they tolerate and which not. Released January 2010.
(iPhone SDK 3.0 – 3.1, Objective-C, SVN, Trac)
Conceptual planning and implementation of a set of applications on different platforms. The
Goal is assimilation and display of weather radar information by the European Radar
Association. Cross-platform development in parallel for Java and C based Clients.
Functionality encapsulated in Libraries for each language. Visualization of raw radar
information in GIS contexts using OpenGIS Mapservers and OpenCV graphics library.
Implementation of the customer internet portal in Java WebObjects. REST server for
customer profile information. Implementation of the C-Library. Implementation of the iPhone
Application, including CoreLocation features and Push Messages. Backend Connection using
REST. Further clients are planned for RIM, JavaFX and Android
(iPhone SDK 2.0 – 3.1, Objective-C, C, C++, CMake, Xcode, Java, Eclipse, PostGIS,
OpenGIS, OpenCV, uDig, Mingle, XML, REST, WebObjects)
(Phenomic Game Development (now EA Studios), Ingelheim 2004) [remote] {gaming}
Design and Implementation of an online platform for Spellforce2. Web application for player
registration, stats, game infos, Forums etc. Connection of game clients using webservices
and tcp/ip for game matchmaking and in-game chat. Backend application with JMS and C++
tcp/ip server.
(Java, Visual C++, MySQL, WebObjects, Axis, JBoss and JBossMQ, gSoap, OpenSSL,
Perforce, Doxgen,Wiki)
(T-Mobile, Bonn, 1999 - 2004) [on site] {telco}
Design and implementation of a TCP/IP server in Java for provisioning of mobile phones in
connection with T-Mobile’s SAT-Server project. High availability integration. High performance
design using .nio classes.
(Java, TCP/IP, CORBA, Oracle, SunCluster 2.0)
Proposal, installation and administration of a Wiki for improving communication between the
development team, test department and the live system administration team.
(Twiki, Apache)
Development of the B2B interface for T-Mobile’s SAT – Server. Web services. High
availability cluster integration.
(C++, Java, SOAP, RMI, CORBA, SunCluster 2.0, Apache Tomcat)
Design and development of a tool for managing Oracle PL/SQL database triggers with
associated java code running in the database. Graphical user interface. Dynamic code
generation from templates. Integration with unix processes.
(Oracle, Java, PL/SQL, Java Stored Procedures, Swing)
WebObjects prototype of a customer application for managing dynamically allocated MSISDN
numbers. Configuration of time schedules, user groups, availability etc.
(Java, WebObjects, Oracle, Solaris)
Development of C++ modules for T-Mobile’s SAT server. Configuration, Core-Engine, SMS
encoding. Performance and stability tests. Deployment procedures. Help with the refactoring
of the core engine in design and implementation. Connectivity with SMSC. CORBA interface
for third party access. High availability integration.
(C++, Oracle, RogueWave, XML, yacc/lexx. EMI - Protokoll (SMSC), CORBA, SunCluster
2.0)
B2B integration for the third party interface (http) to T-Mobile’s SAT server. Graphical test
applications (desktop and applet).
(HTTP, OTA, AIO, Java, Swing/AWT)
Design and implementation of a strategy game for the WAP market. WebObjects application
for customer access and WAP generation (WapObjects).
(WebObjects, Java, WAP/WML. Oracle)
Test of WAP enabled mobile devices of various vendors with regard to usability, standard-
compatibility and security. Evaluation under aspects of a planned set of mCommerce
applications.
(WAP/WML, Testing)
Development of a WAP application prototype (mCommerce). Presented with great success at
Cebit 1999.
(WML, Ericsson's Jaffa Framework, RMI, Java, Oracle)
Evaluation of several different CORBA orbs on Solaris 8. Aspects of interoperability,
performance and integration.
(Oracle. RogueWave DBTools+, Visibroker, TAO, Mico, Omniorb. Java and C++)
Conception and development of an installation manager for distributed systems on high
availability clusters on Solaris. Installation of software packages and provisioning of
databases.
(Tcl/TK, Shellscript, Package-Manager and Oracle)
Development of an internal project management tool.
(MS-Access and Visual Basic)
(ProSolutions, Bonn, 2000) [remote] {telco}
Development of a complex WebObjects component for imaging slices of data cubes as pie
charts, bar- or line diagrams to be used in an MIS for T-Mobile.
(Java, WebObjects, Visualisation)
(Tegaron Telematics, Bonn, 1998-1999) [on site] {telco}
Test of telematic devices in a test laboratory. Implementation and operation of automatic and
manual test routines and reporting of results
(Testing).
Scientific experience
(Hans-Ertel Zentrum für Wetterforschung und MIUB Bonn, 2011 - 2014)
PhD (ongoing): Until middle of 2013 I was working as scientist for the Hans-Ertel – Zentrum
für Wetterforschung in the OASE project (Theme section 1 – atmospherical dynamics and
predictability), where I developed more computer vision algorithms for tracking multivariate
events in high resolution 3D composits of radar-, satellite- and lightning data for lifecycle
studies in highly dangerous weather events (storm research). Besides the research I
introduced software management tools at the meteorological institute and taught
GIT/Redmine basics to the scientific community there.
Presentations: Hans-Ertel-Zentrum (DWD), EGU Wien, X-Band Workshop Delft, ESSL
Helsinki, HDCP2 Meetings, Workgroup Meetings
(Polarimetric radar-, satellite- und lightning data, C++, Templates, NetCDF, HDF5, TBB,
Boost, FLANN, Visualisierung, GIT, Redmine)
(University of Bonn, Meteorology, 1996 - 2005)
Diploma Thesis: development of an algorithm for tracking precipitation in meteorological
radar. Implementation into an operational routine and porting to straight C/C++ and Java
libraries and applications for the meteorological institute. Scientific software development.
Radar meteorology (X-Band, C-Band, Composits). Satellite data (formats and applications).
Tracking and computer vision applications. Statistical analysis. Stastistical classification
problems. Meteorological know-how.
(WebObjects, Objective-C, MySQL, Cocoa, GNUstep, Mac OSX
Linux)
Numerous projects and workshops during my studies on the subjects of numerical simulations
of flow patterns, mechanics and statistics of earthquakes, data assimilation routines and
more.
(Data Assimilation, Simulation)