Spryker: rethinking e-commerce architecture with Project A

On my quest to find the right technology for my rethought e-commerce architecture I am always happy to see more radical approaches. And this is why I was very excited to hear that Project A is releasing its e-commerce framework Yves & Zed for merchants with very high demands in flexibility and especially pace for driving their business models.

I have already mentioned Yves & Zed in my main architecture post and why I like their architecture approach. By that time this technology was only available for ventures incubated by Project A. This will change very soon.

Spryker is an e-commerce framework, which enables launching and scaling individual e-commerce businesses at a very fast pace. And here is what happened before I’ve actually started to believe this:

To get some brief insights about this project I had a call with Alexander Graf (@supergraf), who is driving the company behind Spryker: Spryker Systems. A couple of weeks after that I sat together with Fabian Wesner (@FabianWesner), CTO of Project A Ventures and the technical brain of Spryker. He provided me with deeper insights into the core of Spryker: the software architecture, the components, source code and the reasoning behind important technology decisions.

The following characteristics of Spryker distinguish it from currently available solutions on the market:

1. Developer friendly core technology instead of endless and mostly useless features

A very important fact to get straight right at the start: Spryker is not supposed to be a plug and play e-commerce software with a lot of ready to use.

Its main purpose is to be a powerful tool and proven base for development teams with the task to build a solution for very ambitious merchants or brands. These merchants and brands have already years of experience in digital commerce and have very well defined expectations and requirements. Usually they are currently stuck on their current technology stack, which consists of heavily customized software products.

Spryker is addressing this exactly by not shipping with a long list of features. Instead it provides a framework and a core architecture with separated components to guide the development team and make it very efficient.

2. Deeply integrated own data warehouse as the single point of truth for business decisions

Most of the products on the market are not covering this essential component at all. This leaves the clients stumbling in the dark when it comes to analysing the efficiency of marketing campaigns and spending their budget with more success in the future. And this is only one example.

Spryker has a data warehouse at its heart and it is the single point of truth for all decisions, because it pulls in web analytics data, order processing data (returns, payment defaults, etc.) and offers an easy way for developers to create reliable reports.

3. No page caching for predictable application behaviour instead of cache layers of maintenance hell

The front end of Spryker is build to serve requests very fast by accessing the needed data from fast key-value-storage systems and search engines like ElasticSearch. There are no requests to relational databases or web services. Only when customer data is requested (e.g. at the login) or an order is placed the backend systems are called via an API.

This allow Spryker to scale without whole page or page fragment caching which becomes quickly inefficient when you begin to service customers individually and can be also very painful to maintain.

4. Different and separated application components for the right job instead of all-in-one monsters

Stryker consists of the main software components front end, backend and data warehouse. They are separated and built on different technology to master their designated tasks better than an all-in-one solution.

The front end handles presentation, is easy to extend, has no own data storage and allows very fast release cycles. The backend covers order processing, stores operational data and provides web services for the front end. The data warehouse collects all data about customer engagement, operations and finance and offers reports.

All these components are built on PHP if you exclude software like ElasticSearch or Saiku. This enables the team to work on the complete backbone of the solution for the client.

Summary

Considering the facts above I will definitely keep an eye on the further development of Spryker. After what I have learned about it I’m convinced that development teams can indeed work fast and efficient with Spryker. And without all the overhead merchants do not get stuck in a slow and expensive development process.

For all of you who like to get information about Stryker at first hand and meet the team: there are already announcements for events on http://spryker.com/events/.

Advertisements

About Dimitri Gatowski
ecommerce enthusiast

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: