Technology at Boozt
New innovations, cutting-edge solutions and talent keep us right where we want to be – at the forefront.
We tailor for success
Not only do we tailor our selection to customers, we also tailor our tech. We design and develop all our systems in-house so that you can execute with ease and speed. New innovations, cutting-edge solutions and talent keep us right were want to be – at the forefront.
We love to develop - not only code but as individuals
We strive to be in the forefronts of the latest tech and innovation - challenging ourselves to be more efficient and find better solutions for our business. Sharing our knowledge and learning from one another is a core aspect of our tech department to tackle complex and challenging tasks. We enable this through organising events that bring our teams together. Be it at our annual tech conference, weekly FIKA talks, or hackathons. Together we make everything seem possible.
Building for the future
Tech is at the core of our business. We design and develop almost all of our systems in-house. These range from the webshop, content and product management, warehouse management, customer service, financial services, apps, and more. This enables us to control and tailor-make our systems to fit our needs, as well as the needs of our customers.
We foster a strong innovation culture that empowers our people, across our 5 offices in Malmö, Copenhagen, Aarhus, Vilnius, and Poznan, to be curious and dare to experiment with new technologies. Want to join us in developing the next great e-commerce? Join us
Our stack
-
All our systems are deployed in the Google Cloud Platform. We have adopted Terraform for all the configuration and management of the infrastructure, no manual ad-hoc changes are being done. We are using a mix of Compute Engine, App Engine, Cloud Functions, and Kubernetes to deploy our systems, depending on their needs and characteristics. Current plan is to go more towards Kubernetes, we are in the process of containerizing more of our applications. Cloudflare is being used for CDN, authentication, and canary deployments among other things.
-
For the backend parts the majority of our systems are written in PHP using the Symfony framework. Among other languages that we are using are Elixir, Go, Python, TypeScript, Kotlin, Swift. For the data layer we have a mix of MySQL, Redis, Elasticsearch, MongoDB, Manticore. We try to be pragmatic and pick the technology that suits us best for the specific task. Cross-system communication is happening over Google Pub/Sub and RabbitMQ.
-
The frontend world has gone into overdrive and introduced an array of frameworks, methodologies and tools. As we have many different systems from the webshop to internal business critical systems our focus is to use a similar frontend tech stack where we primarily work with React when building our components, Redux for our centralized state management and Webpack for our module bundler. Certain projects use Gulp as a task runner. For newer projects and components we refactor, we are transitioning to primarily work with Typescript which adds additional static type checking among other great things.
When it comes to styling our preprocessor of choice is SASS and we work with the BEM methodology in mind. For the webshop we work with Storybook to assist in building and maintaining our Design System (Palette), while some of our back office systems utilize either Bootstrap or Material UI.
Sticking to coding standards and having tools to help us find problematic patterns is vital and for this we use ESLint and StyleLint across most of our projects.
-
Observability is something we put a lot of focus on. We are actively monitoring the health of our infrastructure and applications using Datadog. We use it to get a good overview of the errors, make sure that deployments are not affecting performance, make sure that the SLOs are not over the limit, investigate and collaborate during major outages.
-
For iOS we aim to achieve a pure Swift codebase based on the Clean Swift architecture, which is modularized and shared between our apps. As we are coders, we have UI-as-code, documentation-as-code, and configuration-as-code. Our current challenges include: strengthening our testing and automation setup, modularizing and sharing more code between apps, and implementing Clean SWIFT in the entire codebase.
-
Within Android development we use Kotlin codebase, written in clean code that follows the principles of clean architecture. The codebase is modularized and we have several shared modules between our apps. We are not afraid of adopting new technologies and most recently we have started to integrate Compose into our UI components.