Paul van Hemmen

Freier Full Stack Web Entwickler TYPO3 Entwickler OXID Entwickler

Skills

Der Werkzeugkasten eines jeden Programmierers

Ein Entwickler ist immer nur so gut wie das Werkzeug, welches ihm zur Verfügung steht. Denn letztendlich kann man einen Nagel nur dann in die Wand schlagen, wenn man den passenden Hammer in der Hand hat und weiß, wie man ihn benutzt. Mit den mir zur Verfügung stehenden Mitteln bin ich zwar noch kein Raketenwissenschaftler, tolle Web Applikationen bauen kann ich damit aber schon.

Fachliche Qualifikationen

Von der Idee bis zur fertigen Webseite - ein Projekt beinhaltet viele einzelne Komponenten, die unterschiedliche Qualifikationen voraussetzen.
Als Full Stack Developer decke ich dabei alle Arbeitsschritte ab - von der Umsetzung im Frontend bis hin zur Implementation im Backend.
Zusätzlich sorge ich dafür, dass Ihre Ideen sicher und performant entwickelt und ausgeliefert werden.

Frontend

Die frontendseitige Programmierung beinhaltet alles, was im Browser passiert, von der einachen Darstellung mit HTML und CSS bis hin zu komplexer 3D Logik.

  • Erstellung von HTML Templates basierend auf Photoshop Layouts unter Anwendung moderner Code Standards (HTML5/CSS3/Javascript)
  • Programmierung von User Interfaces (inkl. z.B. Slider, Konfiguratoren, UI Elemente) auch mithilfe aktueller Frameworks (jQuery, requirejs, angularjs u.a.)
  • Entwicklung eigener jQuery Plugins
  • Responsive Umsetzung zur Darstellung von Webseiten auf sämtlichen Bildschirmgrößen inkl. mobilen Geräten
  • Progressive Enhancements / Graceful Degration zur Unterstützung älterer Browser und Geräte u.a. mit Polyfills
Backend

Die backendseitige Programmierung erzeugt den Programmcode, der auf dem Server läuft. Dazu gehört das Speichern und auslesen von Daten ebenso wie deren Auslieferung an den Browser.

  • Integration der Frontend Templates in CMS Systeme, vornehmlich TYPO3 (Enterprise Websites) und OXID (Shopsysteme)
  • Modul- und Pluginentwicklung für bestehende Systeme zur Umsetzung erweiterter Funktionalitäten auf Basis aktueller Code Standards (OOP, MVC)
  • Verheiratung mehrerer Systeme zur Abbildung komplexer Websitestrukturen (TOXID)
  • Programmierung eigenständiger Applikationen mit php/MySQL
  • Einhaltung von Sicherheitsstandards bei der Umsetzung zur Vermeidung von u.a. XSS und SQL Injections
  • Performance Optimierung
  • Umsetzung von Projekten auf komplexen Server Strukturen mit Load Balancer, mehreren App- und Datenbankservern, Memcache (Varnish) und CDNs
  • Systemupdates von eigenen sowie Fremdprojekten
Server/IT

Jede Webseite benötigt eine Serverumgebung auf der sie läuft - mit einer gesonderten Entwicklungsumgebung, einem gesteuerten Deployment und versioniertem Programmcode.

  • Verwaltung von Entwicklungsservern
  • Deployment auf Staging und Live Servern
  • Laufende Versionierung von Projekten mit GIT sowie die Überwachung der eigenen Code Qualität per Continuous Integration
  • Aufsetzen von Build Systemen
  • Administration und Nutzung eines Atlassian Stacks zur Projektverwaltung (JIRA, Confluence, Bitbucket, Bamboo)

Short Facts

Für die Techies: Alle Skills in der Übersicht.
Legende: exzellent sehr gut gut

Paradigmen

Moderne Paradigmen und Coding Guidelines sorgen für einen hohen Qualitätsstandard und gewährleisten modularen, hochwertigen und leicht wartbaren Code.

Domain Driven Design
MVC
OOP
Sprachen

Die Programmier- und Markupsprachen sind das Gerüst, auf dem jede Applikation basiert. Jede Sprache erfüllt dabei einen spezifischen Zweck.

Javascript
AJAX jQuery RaphaelJS KonvaJS requireJS modernizr AngularJS ThreeJS
PHP
FLOW RainTPL Symphony 2
HTML5
Smarty Fluid OpenGraph
CSS
CSS2.1 CSS3 Bootstrap SASS
MySQL
C++
CMS / Frameworks

Ein Content-Management-System ist eine Software mit gebündeltem Funktionsumfang zur Erstellung, Bearbeitung und Organisation von Inhalten.

TYPO3
Integration Extension Development
OXID
Integration Module Development Payments
Laravel
Integration Application Development
Vanilla Forums
Integration Module Development
modx
Integration Module Development
Wordpress
Integration Module Development
Entwicklung

Von diversen Entwicklungswerkzeugen bis hin zur richtigen Serverumgebung benötigt eine Webseite viele Komponenten, damit sie lauffähig wird.

Versionierung
GIT SVN
Deployment
Bamboo Ant
Continuos Integration
Jenkins
Server
Debian Ubuntu Apache