24. August 2018 // von Julia

Das Thomann Dev Camp

Das Entwicklerteam der Thomann Desktop-Seite hört sich normalerweise nur in Calls. Dank unseriöser Anzeigebilder in Slack vergessen wir also schon mal, wie unsere Teammitglieder eigentlich aussehen. Was da hilft? Ein Dev Camp. Die Headquarters in Treppendorf öffneten Anfang Juni ein Wochenende lang ihre Türen für die Berliner, Bamberger und Aschaffenburger Entwickler und es wurde fleißig gecoded. Und wo gecoded wird, da fallen Späne: 6,2 Quadratmeter Pizza, 1900 Gramm Schokolade (seids des Woahnsinns!), eine Menge Nerven der internen IT und Vieles mehr haben wir springen lassen, um Projektbaustellen und Codeunreinheiten den Garaus zu machen. Wir wissen, was die Devs letztes Wochenende getan haben und wollen euch den Bericht nicht vorenthalten.

Das haben wir gemacht

Aus einer ganzen Auswahl an Task-Bonbons durfte sich jeder sein ganz persönliches Wannado heraussuchen. Hier ein paar Impressionen:

Team 1 aka JPPerformance

Dieses Team kümmerte sich um die Performance des Desktop-Shops. Nachdem im Oktober schon eine Disruption Week die clientseitige Performance deutlich verbessert hatte, war nun die serverseitige Performance dran. Im Laufe des Dev Camps haben Francesco* und David der Datenbank eine Nitro-Einspritzeinlage verpasst, außerdem hat das Caching jetzt einen Heckspoiler.
Heißt konkret: die beiden haben langsame Queries umgeschrieben und auch sonst an der serverseitigen Performance gefeilt, bis die Nadel wieder im grünen Bereich war. Bei der Suche nach Wehwehchen wurden sie von Splunk und selbst entwickelten Logging Tools unterstützt. So wurden zahlreiche langsame SQL-Queries, unnötig große Datenstrukturen und vermeidbare Rendercalls identifiziert und ordentlich aufpoliert. Hübscher Nebeneffekt: der Code ist deutlich sauberer und strukturierter als vor dem Tuning und die Startseite hat um ganze 35 Millisekunden zugelegt! Und jetzt alle im Chor: UPLIFT!

Ganz heimlich widmete sich auch dieses Team der Seitenperformance: hinter dem Projektnamen Carousel verbirgt sich nämlich ein Slider Refactoring, das Sebastian, Fabian und Waqas erstmals auf der Startseite eingebaut haben. Das Ergebnis: Die Slider laufen deutlich flüssiger, performen allgemein besser und können bald an jeder Stelle im Desktop-Shop eingesetzt werden. Durch die stark verbesserte clientseitige Renderzeit bietet der neue Slider Kunden ein wesentlich verbessertes Einkaufserlebnis. Im Nachhinein wird der Gerät noch IE9-tauglich gemacht und mit einer Swipe-Funktion ausgestattet. Slider geil, ihren Nudelsalat** haben die Jungs sich echt verdient!

Team 3 aka Teenage Mutant Ninja Testers

Das dritte Team hat sich direkt neben den Snacks zusammengefunden und demnach auch einen hammermäßigen Output produziert: Stefan, Johannes und Johannes widmeten sich ein Wochenende lang dem Thema Testing. Getreu dem Motto „allein ist man weniger zusammen“ haben sie sich aufgeteilt, um unterschiedliche Testtypen unter die Lupe zu nehmen: Johannes beschäftigte sich mit unseren PHP Unit Tests, Stefan und Johannes machten sich auf, Webtests für unsere Desktopseite zu entwerfen. Kurz: snacktable-driven Development vom Allerfeinsten!
Unter anderem waren die Webtests von Erfolg gekrönt: zum Einsatz kamen ein headless Chrome mit Puppeteer und Mocha. So können automatisiert einzelne Seiten des Desktop-Shops auf ihre Komponenten überprüft werden. Zukünftig können wir leichter feststellen, ob sich die Änderung einer Komponente auf andere Teile der Shopseite auswirkt.

10/10 would do again

Jetzt haben wir also nicht nur umfassende Kenntnisse darüber, wer welche Pizza mag und wer wie lange morgens im Bad braucht, sondern auch einige eingebaute Features und eine deutlich verbesserte Performance. Fazit: So ein Dev Camp schweißt zusammen, macht Spaß und hat großes Potenzial, zu einer Thomann Tradition zu werden. Demnächst dann vielleicht mit noch mehr Entwicklern im Team. :-)

* Namen nicht von der Redaktion geändert

** Edles Nudelsalat-Rezept:

  • 750 g gekochte Nudeln (Schleifchen)
  • 500 ml Mayonnaise (vollfett!)
  • 1 große Dose Erbsen & Möhren
  • 1 Fleischwurst
  • Pfeffer, Salz

Verwandte Blogposts