Tech-Arbeitsweisen
Wir begreifen Softwareentwicklung und Technologie als eine unserer Kernkompetenzen.
Wir implementieren Microservices für otto.de, dem größten deutschen Onlineshop und Marktplatz, der sich im schnelllebigen E-Commerce Markt kontinuierlich verändert und weiterentwickelt. Wir entwickeln Konzepte, Designs und Features, die unseren Kund*innen das Einkaufen erleichtern und zum Erlebnis werden lassen. Das sind unsere Tech-Challenges.
Wir bauen Self Contained Systems, die durch unsere CD-Pipeline kontinuierlich live deployed werden. Dabei tragen wir die Verantwortung für unser Teilprodukt – fachlich, technisch und auch für den Betrieb in der AWS. Technische Entscheidungen werden von uns und nicht durch Manager*innen getroffen. Ebenso gestalten wir die Art unserer Zusammenarbeit selbst und finden in vielfältigen Teams gemeinsam neue Wege. Das ist für uns Autonomie.
Das bedeutet sowohl iterativ Lösungen zu entwickeln als auch den kulturellen Wandel zu fördern mit dem Ziel, schnell und flexibel auf veränderte Marktbedingungen zu reagieren. Unsere Arbeit ist selbstorganisiert und crossfunktional mit Scrum und den Methoden der agilen Softwareentwicklung wie Test-Driven-Development (TDD), Pair-Programming oder Continuous Delivery.
Unser hoher Entwicklungsantrieb führt zu einer regelmäßigen Reflektion unseres Verhaltens und der Arbeitsergebnisse. Wir tauschen uns auf (internationalen) Fachkonferenzen wie Code Talks, GOTO Berlin, JAX, DEVOXX, internen Fachevents, Hackathons und Tech Talks bzw. Meet-ups aus.
Wie wir uns beschreiben? Technologie-orientiert und teilweise nerdig - im positiven Sinne. Wenn der tägliche Wahnsinn überhand nimmt, begegnen wir dem zusammen mit Humor. Dabei genießen wir ein hohes Maß an Eigenständigkeit und Freiraum für eigene Ideen – das zeigt sich auch in den flexiblen Gestaltungsmöglichkeiten der Arbeitszeit. Freie Hardware-Wahl und bereichsübergreifend mitbestimmendes Arbeiten sind einige der vielen weiteren Vorteile - wie auch die Wahl der Team-Maskottchen. Das ist unsere Kultur.
Die Auswahl der Tools und Technologien sind oft Team-Entscheidungen, auf die viel Wert gelegt wird. Die Vielfalt unserer Aufgaben ergibt einen stark heterogenen Technologieeinsatz, welcher sich von Team zu Team unterscheidet. Wir experimentieren gerne mit neuen Technologien und Programmiersprachen und wägen den Nutzen für uns ab.
## Philosophie
agile | xp | tdd | devops | kanban | scrum | continuous-integration | continuous-delivery | continuous-deployment | continuous-everything | responsive-design | microservices | event-sourcing | self-contained-systems
## Programmiersprachen
java | scala | clojure | javascript | swift | python | kotlin | elixir | go | c | haskell
## Frameworks & Tools
spring-boot | edison | akka | finatra | phoenix | swagger | dropwizard | react | redux | vue.js | vaadin | JavaEE/JakartaEE | eclipse microprofile | nodeJS | kafka
## Mobile
google-play | arkit | scenekit
## Versionierung / CI
git | jenkins | gitlab-ci | lambdacd | circleci | gocd
## Frontend
html5 | css3 | sass | less
## Build-Tools
gradle | gulp | groovy | babel | cucumber | jasmine | selenium | junit | testng | geb
## Datenhaltung
mongodb | apache-kafka | solr | hadoop | spark | redis | amazon-s3 | postgresql | lucene | elasticsearch | maven
## Cloud
AWS | azure | GCP
## Plattformen
docker | android | iOS
## Infrastructure as Code (IaC)
terraform | cloudformation
„Ich sitze nicht nur den ganzen Tag alleine vorm Rechner und schreibe rund um die Uhr Codes, sondern bin im regelmäßigen Austausch mit meinen Kolleg*innen.“
Jan, Jobbotschafter Softwareentwicklung