Kontakt

Software­entwicklung


Mit agil entwickelten Zusatzfunktionen & Shopware-Plugins der Konkurrenz eine Nasenlänge voraus sein. Wir haben die Lizenz(en) zum Programmieren.

Wer sauber und strukturiert arbeitet, kann sich auch in die Karten schauen lassen.

Gern geben wir Ihnen einen Einblick in unseren Programmier- und Deploy-Prozess, damit Sie selbst bewerten können, wie professionell, durchdacht und technisch sauber jede unserer Softwareentwicklungen umgesetzt werden. Die strikte Versionierung (GitHub) von Anpassungen und Änderungen sorgt für einen transparenten und stets nachvollziehbaren Ablauf jeder Programmier-Arbeit. Nicht nur für die Entwicklung von funktionalen Shopware-Plugins bedarf es einer solchen Struktur. Selbst alle kleinen und großen Softwarelösungen, die wir intern nutzen durchliefen den gleichen Prozess. Verschaffen Sie sich und gegebenfalls auch Ihren Entwicklern einen Überblick über unseren Workflow.
Grafik ansehen
Unser Entwicklungsprozess in schematischer Darstellung. Strukturiert & Bewährt.

Unser Software Deployment
Programmierung mit Verstand

Unsere Quellcodeänderungen werden mit einem zentralen Git-Server (Bitbucket) ausgetauscht. Dieser Bitbucket Server bietet uns zusätzlich zur Quellcodeverwaltung noch weitere Optionen zur Automatisierung. Mithilfe dieser Automatisierungen können wir Änderungen am Produkt in klar strukturierten Abläufen überprüfen und auf weitere Server-Updates verteilen.

Struktur

So wie auch Serverstrukturen eine Hierarchie inne haben, so ist auch die Update-Verteilung strukturiert:

1.
Entwicklungs­umgebung
des Entwicklers:

Hier werden Änderungen entworfen und umgesetzt.

2.
Test-/
Integrations­server:

Hier wird das grundsätzliche Zusammenspiel der neu entwickelten Komponenten mit anonymisierten Daten aus dem Produktiv-System untersucht.

3.
Staging-
server:

Hier werden alle Komponenten mit Produktivdaten getestet und regelmäßig vor der Veröffentlichung auf Herz und Nieren geprüft.

4.
Liveserver:

Hier läuft das fertig entwickelte Produkt.

Saubere Softwareentwicklung und Programmierung wird im Team besprochen.

Updates

Automatische Aktualisierungen finden nach einer erfolgreichen statischen Quelltextanalyse sowie erfolgreichen Einheitstests statt. Eine Änderung muss einmal alle Ebenen in der Hierarchie durchlaufen und von einer zweiten Person bestätigt werden bis diese in das Finale Produkt einfließt.

Bibliotheken

Für dynamische grafische Oberflächen setzen wir auf jQuery 3 und VueJs 2. Serverseitig setzen wir auf symfony 4 oder Laravel 5.7. Datenverwaltung mit MySQL und ElasticSearch sind für jedes Projekt ein Muss.

Infrastruktur

In unserer Infrastruktur programmieren wir nah an den Servern auf denen unsere Software am Ende laufen wird: Es laufen LAMP/LNMP-Stacks entweder auf einer macOS oder Ubuntu Maschine. Alternativ sind notwendige Infrastruktur und Tools auch in einem Docker-Container oder einer VagrantBox verfügbar. Als Management-Stack haben wir uns für Atlassian und damit auch Jira und Bitbucket entschieden. Unsere Continious Integration wird über die Bitbucket Pipeline realisiert. Hierbei werden eine statische Codeanalyse und oder Unit-Tests regelmäßig ausgeführt. Abhängig vom Projekt werden auch Server mit neuer Software aktualisiert oder Plugins gezippt und zum Download hochgeladen.

Sprachen

Wir versuchen immer die neusten Features aus ES 2017, PHP 7.3 und CSS 3 zu nutzen. Auch wenn nicht jedes Projekt dies ermöglicht, versuchen wir im Bereich JavaScript mit Bablify auf das notwendigste Minimum zu transpilen. Da LESS und SCSS so viel mächtiger als pures CSS sind, sind diese in jedem unserer Entwicklungs-Projekte präsent.

Tools / IDEs

Für IDEs setzen wir auf JetBrains Produkte wie PHPStorm oder DataGrip, da durch deren Funktionalität unsere Produktivität sehr gut unterstützt wird. Als Git Client wird je nach Gusto entweder die CLI, SourceTree, Gitkraken oder PHPStorm selbst genutzt. In der Grafik setzen wir auf die Adobe Produkte wie InDesign, Experience Design, Illustrator und Photoshop. Besonders die Vorschau mit technischen Daten aus Experience Design ist sehr hilfreich in der technischen Umsetzung. Für externe Ressourcen laden wir diese über Composer oder npm und bundlen diese mit WebPack, um die Strukturen der externen Ressourcen in die unserer Projekte anzupassen.

Contributions

Neben unseren Individual-Programmierungen für Kunden und Interna haben wir uns auch an den Bibliotheken und Projekten beteiligt, die uns im Alltag über den Weg laufen. Dazu gehört natürlich Shopware und dessen Plugins und Nebenprojekte wie die Dokumentation oder die composer-Projekt-Vorlage. Einige Entwickler waren auf dem Shopware #meetnext und haben an der nächsten Generation Shopware mitentwickelt. An dem Php Unit Converter haben wir mitentwickelt. Zusätzlich haben wir Teile unserer Arbeit mit anderen Shopware Community Mitgliedern entwickelt und öffentlich auf Github und im Shopware Community Store als Friends of Shopware veröffentlicht.
Unser Senior Developer Joshua Behrens: Datenbankanpassungen und Anwendungsentwicklung mit Köpfchen.

Joshua Behrens

Senior Developer

auf GitHub >
Unser Senior Developer Julian Krzefski: Programmierung und Anwendungsentwicklung als Passion.

Joshua Behrens

Senior Developer

auf GitHub >

Worauf noch warten?
Lernen sie unser Team kennen!

Mehr Erfahren

Softwareentwicklung & Programmierung:
Das schlagende Herz jedes Onlineshops

Unser vielseitiges Team aus Programmierern und Softwareentwicklern kann Ihre bestehenden Systeme (ERP, PIM oder CRM) mittels individuell entwickelter Schnittstellen an Ihren Shopware-Onlineshop anbinden. Wir arbeiten nach dem Prinzip der agilen Softwareentwicklung (nach Kanban & Scrum), so dass Sie nach jedem Teilschritt die Kontrolle behalten, ob alle gewünschten Anpassungen und Vorgaben zu Ihrer Zufriedenheit berücksichtigt worden sind.

Diese Arbeitsmethode führt schneller zum gewünschten Ergebnis und Missverständnisse können schon in der Entstehung vermieden werden. Um Ihnen die volle Einsicht und Kontrolle während der Entwicklungsphase gewährleisten zu können, nutzen wir die agile Projektmanagement-Software JIRA. Sie bekommen einen Zugang zu Ihrem Projekt und können mit den bearbeitenden Programmierern direkt über den Fortschritt oder Änderungswünsche kommunizieren.

Bis dass der Code uns scheidet:
Softwareentwicklung mit Sinn & Verstand

Dass Java mehr als ein idyllisches Urlaubsziel ist, JSON nicht nur an einem Freitag dem 13. aktiv ist und Ajax zu mehr zu gebrauchen ist, als den Boden zu wischen, ist unserem Programmierer-Team natürlich bewusst. Unsere Programmierer und Softwareentwickler decken durch Ihre verschiedenen Backgrounds und Schwerpunkte so gut wie alle Bereiche und Spielarten der Programmierung ab und beherrschen nicht nur eine Programmiersprache aus dem Effeff. Wir sind in der Lage jede erdenkliche Datenbank zu bearbeiten, zu erweitern und so anzupassen, dass sie von System A zu System B migriert werden kann. Speziell beim Wechsel zwischen zwei verschiedenen Shop-Software-Sytemen ist dies eine wichtige Arbeitsposition, die wir hausintern versiert erledigen können.

Unsere Programmierer sind aktive Mitglieder der Shopware Entwickler-Community und haben schon einige Anpassungen und Weiterentwicklungen vorgenommen, die bereits heute fester Bestandteil des Shopware-Core sind. Wir benutzen die Software also nicht einfach, wir entwickeln mit. Genau dieses tiefe Verständnis von Shopwares Software-Architektur versetzt unsere Entwickler in die Lage, so gut wie jede gewünschte zusätzliche Shopfunktion umsetzen zu können.

Shopware-Plugins:
Zusatzfunktionen von zertifizierten Software-Entwicklern.

Wir stehen im aktiven Austausch mit der Firma Shopware und unsere Entwickler sind mehrfach zertifiziert und aktive Mitglieder der Shopware-Community, so dass wir in der Lage sind Ihnen hochfunktionelle Plugins für die speziellen Anforderungen Ihres Unternehmens programmieren zu können. All unsere entwickelten Plugins und Software-Lösungen sind "Open Source" und auf der Programmier-Plattform GitHub versioniert.

Im Shopware-Community-Store findet man einige unserer Plugin-Lösungen , die nützliche Zusatzfunktionen wie zum Beispiel eine automatisierte Umrechnung von Fremdwährungen, Erhöhung der Sicherheit oder erweiterte Möglichkeiten zum Teilen von Inhalten bieten. Funktionen, die in fertigen Plugin-Lösungen noch nicht zu finden sind, aber für Ihr Geschäft wichtig sind, sind unsere besondere Spezialität.

Darstellung von unseren Plugins in einer Wolke

Suchen & Finden:
Umsatzvermeider oder Umsatzbringer.

Die Suchfunktion eines Online-Shops ist mit einem barrierefreien Checkout eine der wichtigsten Funktionen, die über Erfolg oder Misserfolg im E-Commerce entscheiden können. Neben dem Einbau umfangreicher und erweiterter Such-Plugins, können unsere Softwareentwickler Ihnen aus der Shopware-Datenbank individuelle Filterfunktionen entwickeln, die Ihren Kunden die passendsten Artikel für Ihre Suche präsentieren.

Gerade auf mobilen Endgeräten, allen voran auf Smartphones, ist die Suchleiste statistisch gesehen das meistgenutzte Mittel, um in Onlineshops zu navigieren und fündig zu werden. Wir haben das verstanden und beraten Sie hier gern, um die für Sie passendste Lösung zu finden.

Projektmanagement mit Jira:
Nachvollziehbare Softwareentwicklung

Um stets alle Schritte in der Anwendungsentwicklung nachvollziehen zu können werden sämtliche Aufgaben in der Projektmanagement-Software Jira erfasst, was eine optimale Verwaltung und Planung garantiert. Diese Softwarelösung wurde initial von Programmierern und Softwareentwicklern benutzt, die vielfältigen Anwendungsgebiete führten mittlerweile zu einer Branchen übergreifenden Verbreitung von Jira. Der Vorteil für unsere Kunden liegt in der Transparenz unserer Entwicklungsarbeit. Sie erhalten einen Zugang zu Ihrem Projekt und sind jeder Zeit über den aktuellen Status Ihres Projektes im Bilde und können direkt in Jira mit den zuständigen Bearbeitern kommunizieren.

Die Struktur unserer Softwareentwicklungs-
Prozesse konnte Sie von uns überzeugen?

Das freut uns sehr. Melden Sie sich bei uns und wir können Sie bereits bei Ihrem nächsten Shopware-Projekt unterstützen.

Kontakt