We’ re the Technology Team at Zalando! Zalando is transforming from an e-commerce company into a multi-service platform that provides fashion as a service. We make it our mission to imagine and predict the infinite points of interaction between fashion and people - and develop the technology to make them possible.
The 1300+ members of Zalando Tech build most of our products in-house and open source, from our logistics software to our mobile applications. We use Scala, Java, Go, Akka, Spring and Docker - to name just a few. Check out our Tech Radar for more information on the technologies we use.
Under Radical Agility, we offer our technologists the chance to work with autonomy, mastery, and purpose, based on and bound by organisational trust. Our teams are agile, choose their own tools to get things done, and own quality end-to-end. The foundation for how we will build the systems of our future is based on five key principles: API First, REST, SaaS, Cloud, and Microservices. Interested to learn more? Check out our Tech Blog.
What does it take to become “a Zalando”?
Above all, it requires passion: to experiment, learn, fail, and repeat the process, so that we get stronger and better every day. Zalando Tech includes men and women from more than 70 different nations and representing a seemingly endless number of interests, hobbies, programming-language preferences, personality types and other characteristics. What unites us is the energy and enthusiasm we share in tackling our common purpose: to deliver award-winning, best-in-class shopping experiences to our customers.
Learn more about us! Jobs: tech.zalando.com/jobs Blog: tech.zalando.com Twitter: @ZalandoTech Open Source: github.com/zalando
Automatic Parallelisation and Batching of Scala Code
Featuring Gjeta Gjyshinca and James Belsey
Morgan Stanley has developed a technology that allows the widespread automatic parallelisation of execution. James and Gjeta are part of a team who, using the Scala language and ecosystem, have built a runtime that automatically parallelises users’ Scala code. During this talk, you will discover...parallelism scala
Lightning Talk - Install Your Scala Toolchain with SDKMAN!
Featuring Marco Vermeulen
SDKMAN! is a tool for managing parallel versions of multiple Software Development Kits on most Unix based systems. It provides a convenient Command Line Interface (CLI) and API for installing, switching, removing and listing Candidates.
Keynote: The Maths Behind Types
Featuring Bartosz Milewski
You often think of types as specifying data layouts in computer memory. You have bytes, shorts, floats, and arrays, which are very close to the metal. But then you have integers and Booleans, which are abstractions taken from math. And then there are algebraic data types, and function types....scalax scala category-theory constructive-logic type-system types mathematics maths math bigdata
Akka support in IntelliJ IDEA
Featuring Andrew Kozlov
No doubt that almost every application is multi-threaded nowadays. But building a good one is still a big deal. For example frameworks (that were actually supposed to make the concurrent programming easier) became quite complicated themselves. So now it's IDEs' turn.scala akka kotlin jetbrains
Farewell Any => Unit, Welcome Akka Typed!
Featuring Heiko Seeberger
Akka has become a very successful platform for building reactive systems. At its core the akka-actor module implements the actor model as created by Carl Hewitt et al. Surprisingly enough, although Scala and Java are type safe languages, Akka actors are untyped. This means that we can send Any...scala akka
Real World Serverless
Featuring Petr Zapletal
Serverless is a hot topic in the software architecture world and also one of the points of contention. Serverless can let you run our code without provisioning or managing servers. You don't have to think about servers at all. Things like elasticity or resilience might not longer be our...scala serverless distributed-systems
Building a Tagless Final DSL for WebGL in Scala
Featuring Luka Jacobowitz
In functional programming you very often find yourselves wanting to use some kind of library that doesn’t really expose a functional API. That’s where embedded domain specific languages come to the rescue.scala dsl functional-programming scalajs api
Integration Testing using sbt, Scalatest and Docker
Featuring Emanuele Blanco
Unit tests help you to write software that adheres to a certain sets of requirements, expressed as tests. However, they focus on testing units of software in isolation and not so much on how major parts of a system are integrated. Integration tests fill this gap, and they are an important part of...
Free Monad or Tagless Final? How Not to Commit to a Monad Too Early
Featuring Adam Warski
Functional programming is on the rise; monads are everywhere. But how to choose the right wrapper for the values which we manipulate (i.e. monad)? Quite often, the answer is far from obvious, and it’s useful to delay the decision as much as possible. Furthermore, picking a particular monad too...scala functional-programming free-monads tagless monads
The Ubiquitous Language in Functional Programming
Featuring Renato Cavalcanti
Domain modelling in software is never pure. Next to the domain data and business logic there is a whole other universe of programming language constructs that we have to deal with (control structures, error handling, asynchronous computations, etc).scala functional-programming asynchronous-programming dddesign