Techno­logie Stack bei WTL

Projekt­ma­nagement

Überzeu­gende Ergeb­nisse entstehen nur mit überzeu­genden Werkzeugen: Wir setzen zur Verwaltung  und zur Steuerung auf das bewährte Trio aus Jira, Confluence und GitLab, das uns auch als zentrales Cockpit dient.

In Atlassian Jira erfassen wir alle Aufgaben und Arbeits­ab­läufe und führen außerdem das Projekt- bzw. Versi­ons­ma­nagement durch. Jira unter­stützt dabei verschiedene Entwick­lungs­me­thoden, etwa Scrum, Kanban oder das von uns häufig prakti­zierte Scrum-ban.

Projekt­spe­zi­fi­sches Wissen und zentrale Assets dokumen­tieren, struk­tu­rieren und pflegen wir im Wiki Atlassian Confluence. Den Quellcode unserer Projekte halten wir in Git-Reposi­tories bei Github oder GitLab.

Alle Systeme sind mitein­ander verknüpft und gewähr­leisten so eine optimale Effizienz. Die durch­gängige Revisi­ons­si­cherheit erlaubt es uns, jeden belie­bigen Arbeits­stand nicht nur einzu­sehen, sondern bei Bedarf auch wieder­her­zu­stellen.

Best of Breed vs. homogenes Ökosystem

Die Auswahl der Entwick­lungs­tech­no­logien zu Beginn jedes Projekts machen wir im Wesent­lichen von den Anfor­de­rungen, Projekt­zielen und dem Kunden­kontext abhängig. Dabei bewegen wir uns im Spannungsfeld von robusten, bewährten Standards und modernen, hochspe­zia­li­sierten Techno­logien auf der anderen Seite.

Unsere Software­ar­chi­tekten und Software­ent­wickler evalu­ieren mit Wissen, Erfahrung und gesundem Augenmaß. Sie treffen die Auswahl der für Ihr Projekt am besten geeig­neten Techno­logien und schätzen die Aufwände. Wir kommu­ni­zieren die Attribute Zeit, Budget und Qualität trans­parent und stellen unsere Auswahl vor.

In einer Vielzahl erfolg­reich durch­ge­führter Entwick­lungs­pro­jekte hat sich dabei der Hybrid aus Standard und „Best of Breed“ als besonders tragfähig heraus­ge­stellt. Bei den erfolgs­kri­ti­schen Kompo­nenten einer Plattform setzen wir auf Best of Breed-Techno­logien. Für Rumpf­kom­po­nenten werden Standard­lö­sungen genutzt.

Entwick­lungs­um­gebung

Wir nutzen State-of-the-Art Compu­ter­systeme, die wahlweise mit Windows, MacOS oder Linux betrieben werden. Als integrierte Entwick­lungs­um­gebung (IDE) kommen z.B. IntelliJ, PHPStorm oder Visual Studio Code zum Einsatz.

Lokal arbeiten alle Entwick­le­rinnen und Entwickler mit virtua­li­sierten Setups auf Basis von Docker oder Virtu­alBox. Die Build-Pipeline betreiben wir zentral und projekt­spe­zi­fisch per VMware vSphere und GitLab CI.

Dieses Vorgehen stellt sicher, dass jeder Entwickler mit der identi­schen Infra­struktur arbeiten kann. So erreichen wir einen besonders hohen Grad an Effizienz und Skalier­barkeit der Teams bei der Software­entwicklung.

Starten Sie ihr Entwick­lungs­projekt mit WTL

Bewährte Techno­logien

Bereich Plattform Entwicklung

Basis

In der Mehrzahl unserer Platt­form­pro­jekte bildet die Program­mier­sprache PHP 7 das technische Grund­gerüst der Entwicklung. Wir nutzen die jeweils neuesten Sprach- und Entwick­lungs­stan­dards, sowie Enter­prise Design Patterns. Damit erreichen wir schnell unsere Ziele, stellen beste Qualität sicher und gewähr­leisten Wartbarkeit, Langle­bigkeit und Wirtschaft­lichkeit. Bei der Wahl der Program­mier­sprache sind wir aber nicht dogma­tisch. Häufig setzen wir auch andere Sprachen wie beispiels­weise Go, Java EE oder Node.js ein, um die indivi­du­ellen Anfor­de­rungen zu erreichen.

Daten­banken

Uns ist sowohl die Arbeit mit relatio­nalen (MySQL, MS SQL, Oracle) als auch mit dokumen­ten­ba­sierten (MongoDB) Daten­banken vertraut. In den deployten Instanzen sind auch Cloud-Imple­men­tie­rungen wie DynamoDB (Amazon AWS) oder Cosmos DB (Microsoft Azure) im Einsatz. Wir stimmen uns in der Daten­bank­frage eng mit der IT unserer Kunden ab, um eine harmo­nische Integration in die Infra­struktur und die gelebten Prozesse zu erreichen.

Frame­works

Im Ökosystem von PHP setzen wir häufig auf Laravel, ein modernes Framework, dass stark von .NET beein­flusst ist. Es unter­stützt uns dabei, kompo­nen­ten­ba­sierte, perfor­mante und zukunfts­si­chere Software zu entwi­ckeln. Wir integrieren gern Open Source-Pakete in unsere Lösungen. Damit stellen wir sicher, dass wir uns auf die erfolgs­kri­ti­schen Geschäfts­fälle eines Projekts konzen­trieren können. Neben Laravel bringen wir fallweise auch Symfony oder Phalcon zum Einsatz.

weitere Techno­logien

Neben den bereits genannten Techno­logien nutzen wir natürlich noch erheblich mehr Lösungen im täglichen Entwick­lungs­alltag. So sind die Themen Virtua­li­sierung (Docker, vmWare oder Virtu­alBox), Provi­sio­nierung (Vagrant, Chef), Volltext­suche mittels Elastic­Search, Caching von Daten mittel Redis oder Message Queuing (RabbitMQ; ActiveMQ) in nahezu jedem komplexen Platt­form­projekt präsent.

Zunehmend spielt auch die revisi­ons­si­chere, verteilte Daten­haltung auf Basis der Block­chain Techno­logie eine immer wichtigere Rolle in unseren Projekten. Hier nutzen wir sehr gern die Werkzeuge Hyper­ledger oder IOTA um auf deren Basis konkrete Anwen­dungen für Ihre Business-Cases zu entwicklen.

Bereich Frontend und Hybrid Mobile Entwicklung

Basis

Das Ökosystem im JavaScript Umfeld unter­liegt einem extrem schnellen Wandel. Daher ist es gerade in diesem Bereich schwierig aber auch besonders wichtig, eine moderne, solide und zukunfts­si­chere Techno­lo­gie­auswahl zu treffen. Die von uns entwi­ckelten Frontend bzw. Mobile Apps basieren auf JavaScript in einem der modernen Sprach­stan­dards, wie ECMAScript 2018 oder TypeScript 3.

Diese bilden die Basis unserer JavaScript Frontend und Mobile Apps, sie die Entwicklung modernen, wartbarer Software ermög­lichen und objekt­ori­en­tierte Entwick­lungs­pa­ra­digmen unter­stützen.

Sonstiges

Neben den bereits genannten JavaScript Biblio­theken und Basis­tech­no­logien nutzen wir im Entwick­lungprozess eine große Zahl spezia­li­sierter Kompo­nenten und Module. Diese sind jeweils sehr genau auf die Lösung einzelner spezi­fi­scher Probleme entwi­ckelt und stellen dabei eine optimale Lösung für das jeweilige Problem bereit. Einige Beispiele dafür sind die JavaScript Laufzeit­um­gebung Node.js, das State-Management Modul Redux oder die Websocket Imple­men­tierung mit socket.io zur Echtzeit­kom­mu­ni­kation.

Frame­works

Für die Entwicklung moderner Web-Apps setzen wir auf die vielfach bewährten und am Markt etablierten Biblio­theken React oder Angular. Diese ermög­lichen es uns, Ihrer Appli­kation ein sehr modernes Erschei­nungsbild (UI) zu geben und die Benut­zer­er­fahrung (UX) optimal zu gestalten. Die Brücke von diesen Progressive Web Apps hin zu echten Mobile Apps schlagen wir über die ebenfalls sehr beliebten Frame­works React Native und Ionic. Diese nutzen als Basis React bzw. Angular und erlauben es uns, native Mobile Apps zu entwi­ckeln.

Bereich Code Qualität, Test Automa­ti­sierung und Deployment

Zur Messung und Sicher­stellung unserer Quali­täts­kri­terien nutzen wir verschie­denen und vielfach bewährte Werkzeuge. Bereits zum Zeitpunkt der Program­mierung führen wir mit php-cs (PHP Coding Style) und php-md (PHP Mess Detector) eine Analyse des gerade geschrie­benen Quell­codes durch. Damit erhält jeder Entwickler unmit­telbar eine Rückmeldung, ob der von ihn bzw. ihr geschrie­benem Quellcode, unsere Quali­täts­richt­linien, die WTL green code policy, erfüllt.

Neben diesen lokal genutzten Hilfs­mitteln führen wir mit Scruti­nizer-CI statische Code-Analysen durch, um die Komple­xität und Qualität der entwi­ckelten Software messen und veran­schau­lichen zu können. Zusätzlich werden automa­ti­sierte Test durch eine Gitlab-CI Pipeline ausge­führt, um die Korrektheit der entwi­ckelten Software bzw. deren Kompo­nenten sicher­zu­stellen.

Die von uns entwi­ckelte Software ist prinzi­piell Cloud-Ready und kann in einer bestehenden Cloud-Infra­struktur (z.B. AWS oder Azure) oder in der Infra­struktur unserer Kunden bereit­ge­stellt und betrieben werden.

Starten Sie ihr Projekt mit WTL.

Mit fundiertem Know-how und einer Extra­portion techno­lo­gi­scher Neugier machen wir uns für unsere Kunden auf den Weg. Wir freuen uns, Sie kennen­zu­lernen.

 

WTL Softwareentwicklung Ansprechpartner Jan Bager

Ihr Ansprech­partner

Jan Bager
+49 341 393 781 30
hallo@wtl.de

Wir beraten Sie gern