Insights into our technology

Our technology has been key to our commercial success. Putting our customers first and delivering a fast user experience is at the centre of our technology developments.

To handle the multitude of orders worldwide each day, we’ve created our own proprietary software solution based on open source technology. By using a highly modular service oriented architecture we’re able to reuse components for our different e-commerce platforms.

The tech department consist of about 20 colleagues and is rapidly growing. To date we have developers, test engineers, scrum masters, system administrators and an architect on board. We work with self-organizing Scrum teams. Every single one of them is focused on technological improvements.

Each month we climb up the technological ladder to do things better, faster and simpler. Our open and informal culture is an important success factor to this.

In our growing company there is always room for like-minded people, so take a look at our career opportunities.

Roadmap

At Creative Group we are continuously innovating our platform and building new features for our business.

As a tech company, we believe that improvements to our platform are essential to keep it future proof. It ensures high quality of our services to the customers, it enables growth and it’s fun to work on. To achieve this, we work with a roadmap focused on technology we want to adopt or improve.

This year, the main goal of the tech roadmap is scalability. We want to make our platform ready for a tenfold increase in visitors and ensure a fast user experience in certain regions in the world. Also, as we grow in office space and number of employees, we need to make sure that every tech employee is able to work on our platform while increasing its quality.

Microservices

A few years ago, we had several monolithic e-commerce platforms based on (somewhat) different technologies.

Our PSP was integrated in each one of those platforms. However, when we switched to another PSP, we extracted this functionality into a payment gateway. This is how our first service was born. This approach enabled the reuse of our technology and made maintenance easier. Until 2015 when we came in contact with micro services.

We were quickly convinced by its advantages over our current service-oriented architecture and decided to work towards this in the coming years. This year we have put our first true micro services into production and prepare for the orchestration of a large amount of micro services.

Cloud

To get our infrastructure ready for a tenfold increase in visitors and to ensure a fast user experience globally, the cloud is an obvious solution.

This year we are going to choose a cloud provider and migrate our applications to make use of the cloud advantages.

The cloud also has advantages for our agile way of working: our feature teams will be able to set up new applications (or services) themselves using the DevOps mind-set.

Test automation

How do we guarantee quality in an ever-changing environment and keep our time-to-market as short as possible?

We focus on achieving a good balance between manual and automatic testing. For our functional automated tests, we are working hard on establishing the testing pyramid, which focuses mostly on unit and integration tests and to a lesser extent on user-interface tests. For unit testing we currently use Rspec and PHPUnit and for user-interface testing we use Cypress. Besides functional testing we are also about to start automated non-functional testing.

For us this means that we primarily focus on performance, usability on mobile devices and recoverability. While test automation is essential for our success, so is manual testing. All new features are tested manually as we believe that test automation only is not enough to provide the pleasant journey that we’d always want our customers to experience.

Front-end back-end decoupling

Our websites serve customers all across the world.

A lot of these customers visit us from mobile devices in countries where internet isn’t fast. To serve these customers we need well performing websites that respond as quickly as possible. A separate (static pre-generated) front-end can be hosted on a CDN with endpoints all across the world. This is one of the reasons to separate our front-end from our back-end. This separation also allows our front-end developers to focus more on just front-end technologies, as currently they are still required to work on our (Ruby on Rails) backend as well.

Our back-end will be converted into an API which serves its content to our front-end via an API gateway using GraphQL queries. Another reason to separate our front-end from our back-end is that we want to build an iOS and Android app in the near future, and these apps will talk to our API gateway like our web front-end. After a lot of consideration and testing we decided to go with Vue, mainly because it’s easier to work with for employees already familiar with HTML, CSS and JS and we simply didn’t like the idea of React’s JSX.