David Lee

Über mich

Ursprünglich komme ich aus Schottland. Seit 2010 wohne ich in Deutschland und seit 2018 besitzte ich die doppelte Staatsangehörigkeit: Deutsch und Britisch. Im März 2010 habe ich meine Doktorarbeit (in Informatik) bestanden. Davor habe ich 2006 meinen Bachelor in Informatik für Wirtschaft und Electronic Commerce mit Auszeichnung (beste Note) abgeschlossen. Ich habe über 14 Jahre Erfahrungen in Softwareentwicklung mit besonderem Schwerpunkt auf E-Commerce.

Softwareentwickler & Softwarearchitekt & Product Owner

Ich habe über 14 Jahre Erfahrung in der Softwareentwicklung. Ich habe nicht nur als Softwareentwickler, sondern auch als Softwarearchitekt und Product Owner gearbeitet und kann damit viele Fähigkeiten rund um Softwareentwicklung anbieten.

  • Alter: 35
  • Website: www.davelee.de
  • Abschluss: Doktor in Informatik
  • Stadt: Berlin, Deutschland

Bei der Softwareentwicklung geht es für mich darum großartige Produkte für Kunden zu bauen. Deshalb ist es existentiell wichtig regelmäßige Kontakte mit Stakeholder zu halten. Ich glaube das Agil Methoden wie Scrum und Kanban helfen, um Anforderungen zu priorisieren und schnell ein MVP (Minimum Viable Product) für den Kunden zu entwickeln. Trotzdem kann man mit diese Methoden Roadmaps und Visionen für Produkten entwickeln und umsetzen. Durch Clean Code & Clean Architecture kann man Lösungen bauen, wovon Kunden mehrere Jahren zufrieden sind.

Fakten

Hier sind einige interessante Fakten über mich und mein Leben als Softwareentwickler und auf dieser Erde:

2

Staatsgehörigkeiten - Deutsch & Britisch

14

Jahre Erfahrung in Softwareentwicklung

18

Repositories/Projekte auf GitHub

1,263

Kilometer - durchschnittliche Distanz die ich in einen Monat fahre

Fähigkeiten

Softwareentwicklung
Ich habe umfangreiche Kenntnisse von Java mit besonderem Schwerpunkt auf die Entwicklung von RESTful Web Services und Microservices mit den Spring Framework. Viele meiner Applikationen sind mit Maven gebaut und nutzen Git für Versionsverwaltung. Ich habe FishEye für Codereviews und Jenkins für Continuous Integration pipelines genutzt. Ich habe auch Erfahrung mit C#, Visual Basic und Perl. Als IDEs habe ich Visual Studio Code, Intellij IDEA und Eclipse genutzt.

Webentwicklung
Ich habe umfangreiche Kenntnisse über den Aufbau von Websites für geschäftlich als auch gemeinnützige Zwecke mit den LAMP Stack (Apache/MySQL/PHP). Ich habe auch Erfahrung mit CSS, JavaScript und NGINX (als Webserver und Reverse Proxy Server).

Softwarearchitektur & Projektmanagement
Ich habe Erfahrung folgende Architekturarten zu planen, entwickeln und aufrechtzuhalten: monolithisch, SOA (Service Orientated Architecture) & microservice Architekturen. Ich habe BPMN und UML als Werkzeuge dafür genutzt. Ich habe umfangreiche Kenntnisse von JIRA, YouTrack, Asana, Trello und Mantis für operatives Projektmanagement.


Weiterbildung
Ich finde es sehr wichtig meine Kenntnisse und Fähigkeiten kontinuerlich zu erweitern. Deshalb besuche ich gerne Seminare, oder nehme an Online-Kursen teil. Ich habe sowohl an einem Digitalisierungs Kurs auf Masterplan.com, als auch an den folgenden Online-Kursen auf Udemy erfolgreich teilgenommen:


Weitere Bescheinigungen von Seminaren, Trainings und Konferenzen in die ich teilgenommen habe kann ich nach Anfrage weiterreichen.

Fähigkeiten und Kenntnisse Matrix

Java 100%
Spring Framework (Spring Boot, Data etc.) 90%
CI/CD DevOps (Jenkins, Maven, ...) 95%
Webentwicklung (HTML, PHP/MySQL, CSS) 95%
Projektmanagement Werkzeuge (e.g. Jira, Asana) 100%
Cloud Computing (AWS)80%

Lebenslauf

Zusammenfassung

David A J Lee

Erfahrender und leidenschaftlicher Softwareentwickler, Softwarearchitekt und Product Owner mit über 14 Jahre Erfahrung in Softwareentwicklung. Ich habe Erfahrung in allen Teilen des Softwareentwicklungsprozess von Anforderungen durch Konzeptarbeit zum Minimal Viable Products und Ausbau diesen MVPs um wirklich tolle Produkten für die Kunden zu entwickeln.

Studium und Qualifikationen

Certified Professional Software Architect (Foundation Level)

2015

Hamburg, Deutschland

Themen: Grundlagen von Software-Architekturen, Komponenten/Bausteine, Schnittstellen/Beziehungen, Architekturziele, Qualitätsziele, Werkzeuge.

Doctor of Philosophy in Informatik

2006 - 2010

The Robert Gordon University, Aberdeen, Schottland

Doktorarbeit Titel: Hybrid Algorithms for Distributed Constraint Satisfaction. In meiner Doktorarbeit habe ich Algorithmen für Distributed Constraint Satisfaction untersucht und entwickelt. Unter anderem habe ich die Algorithmen PenDHyb, Multi-Hyb und Multi-HDCS entwickelt.

Bachelor of Science mit 1st Class Honours in Informatik für Wirtschaft und E-Commerce

2002 - 2006

The Robert Gordon University, Aberdeen, Schottland

Dieser Abschluss ist ein Informatik Abschluss der mit mehreren Wirtschafts Modulen kombiniert ist. Einige Beispiele von den Wirtschafts Modulen sind Marketing, Buchhaltung und Change Management. Die meisten Firmen kommen aus den E-Commerce Umfeld.

Berufserfahrung

Senior Produktmanager

Juli 2020 -

myToys.de GmbH, Berlin, Deutschland

  • Zuständig für die Suche und Produktdaten Systeme.
  • Kundenzentriert Produktentwicklung und Benchmarking.
  • Entwicklung von Produkt Backlog (sowohl aus Wirtschaftlicher- als auch Technischer Sicht).
  • Trainer für andere Produktmanager.

Produktmanager

Februar 2018 - Juni 2020

myToys.de GmbH, Berlin, Deutschland

  • Zuständig für die Weiterentwicklung des Content Management System.
  • Entwicklung von Produkt Backlog und Stakeholderkommunikation.

Softwarearchitekt

Juli 2014 - Januar 2018

myToys.de GmbH, Berlin, Deutschland

  • 40% Softwareentwicklung von Prototypen und Technologien.
  • 30% technische Führung von Projekten
  • 30% Zukunftsarchitektur (Vision, technische Roadmap, Konventionen)

Softwareentwickler

August 2010 - Juni 2014

myToys.de GmbH, Berlin, Deutschland

  • Backend Java Entwickler um, unter anderem, folgende Systeme zu entwickeln:
  • Java-basierten Server/Client System mit REST für Gutscheine (Datenbank, Java Backend, Wicket Frontend, Maven, Spring-MVC, Hibernate, Tomcat) inklusiv Migration von 30 Millionen Gutscheincodes
  • Job Portal (Java, Maven, Spring-MVC, Hibernate, Oracle DB, Tomcat) für Bewerbungen.

Zusätzliche Leistungen

Ich habe einige technische Vorträge in den letzten Jahren gehalten. Zwei davon sind online verfügbar (leider nur auf Englisch):

  1. Developer’s Roadtrip to Heaven? myToys transition from SOA to Microservices Architecture
  2. On The Road to Continuous Delivery
Seit 2017 bin ich Teil des Organisationsteams bei der MICES Konferenz.

Portfolio

Ich habe mehrere kostenlose- und Open Source Computerprogramme entwickelt. Diese Computerprogramme beinhalten unter anderem Personalmanagement Software, ein Verkehrsmanagement Spiel, Statistikanalyse Software und einige Skripte für DevOps Tätigkeiten. Bitte beachten Sie, dass diese Computerprogramme mit GNU General Public License lizenziert sind.

Forschung

Distributed Constraint Satisfaction

Ein Constraint-Satisfaction-Problem ist durch einen Algorithmus der Werte (von einen Wertenbereich) zu Variablen zuordnet gelöst. Diese Werte müssen so zugeordnet sein, dass keine Constraints oder Restriktionen verletzt sind. Mit Distributed-Constraint-Satisfaction-Problem sind die Variablen durch Agenten vertreten, die nur teile von den gesamten Problem kennen. Die Agenten kennen nur ihre Variablen und die Restriktionen die ihre Variablen betreffen. Distributed Probleme sind wichtig, wenn die Informationen nicht allen zur Verfügung gestellt werden kann. Entweder, weil es zuviel wird oder wegen Sicherheitsbedenken. Bestehende Algorithmen für Distributed-Constraint-Satisfaction können in zwei Kategorie aufgeteilt werden: backtracking und local search Algorithmen. Obwohl backtracking alle mögliche Lösungen für ein Problem finden kann, ist es oft zu langsam. Local Search ist dagegen schneller kann aber manchmal keine Lösungen für ein Problem finden obwohl eins existiert. In einen Sommerforschungsprojekt 2005 (unter der Aufsicht von Dr. Ines Arana & Dr. Hatem Ahriz), habe ich das Distributed Breakout Algorithm mit den Distributed Stochastic Algorithm verglichen. Dafür haben wir zufällig-generierten Probleme, sowie Terminplanungs Probleme genutzt. Die unverbindliche Ergebnisse haben gezeigt dass das Distributed Breakout Algorithm besser bei zufällig-generierten Probleme war und dass das Distributed Stochastic Algorithm besser bei Terminplanungs Problemen funktioniert hat. Ein Preis war für diesen Forschung zu vergeben. Zusätzlich zu meiner Forschung, hab ich Werkzeuge für weitere Experimente mit Distributed Constraint Satisfaction Algorithmen in Java entwickelt. In meiner Doktorarbeit (unter der Aufsicht von Dr. Ines Arana, Dr. Hatem Ahriz & Dr. Kit-Ying Hui), habe ich hybrid Algorithmen für Distributed Constraint Satisfaction geforscht und entwickelt. Diese Algorithmen kombinieren die Geschwindigkeit von Local Search mit der Bestätigung von Backtracking dass man immer eine Lösung findet, wenn eine existiert. Dadurch habe ich folgende neue Algorithmen für Distributed-Constraint-Satisfaction entwickelt: PenDHyb, Multi-Hyb und Multi-HDCS.



Informationsabruf und Relevanz Profilbildung

Bevor ich mit meiner Doktorarbeit gestartet habe, war ich auch in der Informationsabrufforschungsfeld tätig. Zusammen mit Professor David J. Harper habe ich geforscht, ob man Relevanz Profilbildung nutzen kann, um ein Verzeichnis für ein Buch automatisch generieren zu können. Die Ergebnisse dieses Projekts waren bei den Ninth Australasian Document Computing Symposium präsentiert.

Publikationen


Multi-HDCS: Solving DisCSPs With Complex Local Problems Cooperatively.

LEE, D. and ARANA, I. and AHRIZ, H. and HUI, K. 2010. Multi-HDCS: Solving DisCSPs With Complex Local Problems Cooperatively. In: Proceedings of 2010 IEEE/WIC/ACM International Conference on Intelligent Agent Technology (IAT 2010). 1st-3rd September 2010. Toronto: Canada. pp. 295-302.

Multi-Hyb: A Hybrid Algorithm for Solving DisCSPs with Complex Local Problems.

LEE, D. and ARANA, I. and AHRIZ, H. and HUI, K. 2009. Multi-Hyb: A Hybrid Algorithm for Solving DisCSPs with Complex Local Problems. In: Proceedings of 2009 IEEE/WIC/ACM International Conference on Intelligent Agent Technology (IAT 2009). 15th-18th September 2009. Milan: Italy. pp. 379-382.

A Hybrid Approach to Solving Coarse-grained DisCSPs.

LEE, D. and ARANA, I. and AHRIZ, H. and HUI, K. 2009. A Hybrid Approach to Solving Coarse-grained DisCSPs. In: Proceedings of the Eighth International Conference on Autonomous Agents and Multi-Agent Systems (AAMAS 2009). 10th-15th May 2009. Budapest, Hungary. pp. 1235-1236.

A Hybrid Approach to Distributed Constraint Satisfaction

In: D. DOCHEV, M. PISTORE and P. TRAVERSO, ed. Artificial Intelligence: Methodology, Systems and Applications. 13th International Conference, AIMSA 2008 Varna, Bulgaria, September 4-6 2008 Proceedings. 4th-6th September 2008. Varna: Bulgaria. pp. 375-379.

On the Effectiveness of Relevance Profiling

HARPER, D. J. and LEE, D. 2004. On the Effectiveness of Relevance Profiling. In: P. BRUZA, A. MOFFAT and A. TURPIN, ed. Proceedings of the Ninth Australasian Document Computing Symposium. 13th December 2004. Melbourne: Australia. pp. 10-16.

Kontakt

Sie sind herzlich eingeladen Kontakt mit mir aufzunehmen: