Presentation: Beyond Serverless: Building a Serverless Platform @Wix

Track: Kubernetes and Cloud Architectures

Location: Churchill, G flr.

Duration: 1:40pm - 2:30pm

Day of week: Wednesday

Share this on:

What You’ll Learn

  1. Hear about Wix’s move to build their own serverless platform which is actually Platform as a Runtime. 
  2. Find out about development time wasters.
  3. Learn about the next thing beyond microservices.

Abstract

For decades the software industry has been constantly trying to deliver software faster and cheaper. We develop ways to be more efficient from software development methodologies and culture changes such as Scrum, Continuous Delivery, DevOps, supported by technology architecture and tools such as cloud, microservices and serverless.

In this talk I will describe how Wix.com is pushing this trend even further to build its own serverless infrastructure that will eventually evolve the development paradigm which will allow developers to develop faster and better. By allowing nano deployments we think we can achieve “stream development” where you develop almost directly onto your production system extremely fast and safe, thus delivering quick business value.

In this session I will describe why the current serverless platforms are not good enough, what’s Wix’s vision towards serverless platform, the steps we already took to get there and how it affected our developers who use this system to achieve extremely high velocity.

Question: 

What are you working on today?

Answer: 

I am VP of Engineering at Wix. Wix is the leading website builder platform. About 5% of the world websites are built on top of Wix. I've been here for about 10 years, and I've watched the company grow from a small startup. Right now we're 3,000 people, and I've had a big part in defining the engineering culture and the organizational structure to support rapid growth and a quick development philosophy. When I started at Wix in 2010, we were working like any other company, we had a monolith, big development lifecycle. One of the things that I lead here in the company, was the move towards a microservices architecture, although it wasn't the word back then. It was something that we started before it was a thing. Continuous delivery, a change in the engineering culture to a developer centric culture, DevOps. Always in the back of my mind was how do I make the engineering grow and continuously improve and produce software and business value faster. Now, as we continue to grow, we always thinking about the next step. What is the next thing that will give Wix an edge and allow us to develop faster as we keep growing. As you know, the more people you have, the more complex the system is, the slower a company develops applications. This relates to my talk. We'll look at the technology, the industry. What tools do the industry and the cloud provider have to offer us in order to do and develop software faster? At some point, we realized that we have some 1,500 microservices in production. The operations side of this is taking more toll on developers, Instead of producing your code, which brings features and business value. We ended up spending a lot more time and overhead on the operational side.

Question: 

Can you describe the goals of your talk?

Answer: 

The goal of my talk is actually not serverless, but how to leverage serverless to be able to develop software faster. If I look at the time wasters, I see the operational costs takes a lot of time, a lot of cognitive load because you have to worry about GDPR, accessibility, security, communication, wiring and configuring a lot of stuff. There's a lot going on before you even write a single line of code which brings business value.

By leveraging the serverless, you don't have to worry about operational stuff. This is the promise, at least. In reality, you actually have to worry about it because you need to configure the scaling schemes, wiring, security and all the other things you do in a microservices architecture. We want something it will be available for you all the time, will take care of all the non functional concerns and you just worry about business logic. But in practice, it doesn't work like this because especially when you run a big datacenter you have your own internal systems and you have your trusted zone. When you're running your own VPC, you have a crosscutting concern like GRPC, parse cookies, security schemes, parsing HTTP headers, encryption tokens, authentication and a lot of crosscutting concerns that you have to worry about.

With microservice architecture, we built a lot of frameworks to handle all these common concerns and protocols. However, when you build your service, even if for instance you'll have to write a simple API, you have to compile it and build it with the framework to handle all the nonfunctional requirements, which bloats your bundle size and on top of that, you have a lot of wiring, configuration and integration tests you need to do.

Question: 

In your abstract, you mention about Wix' vision about serverless. Can you talk about that?

Answer: 

Wix's Corvid, our customer facing coding platform, on top of our HTML editor, includes a serverless platform serverless, but has a very limited set of capabilities as it runs untrusted code. It serves a specific use case and it's very opinionated. But once you use it, you just don't need to worry about anything. It runs on all data centers, your data is always replicated and available and you get literally zero operating overhead. This is the product that we give to our customers.

What I want to bring to my developers is the same concept, that is opinionated, but has a lot more freedoms and it will be part of the whole Wix ecosystem that will run only trusted code, with zero operational overhead for the developers, focusing them to write more business logic and less worry about the production environment.

Question: 

What are the key takeaways?

Answer: 

One is to understand what are the biggest time wasters. We're building this not because it's a cool and fun project, but when you reach a certain scale, the things that you did so far just don't work anymore or they work less optimized. Also to think about what is the next step beyond microservices, and continuous delivery, DevOps that will boost productivity…

Speaker: Aviran Mordo

VP of Engineering @Wix

Aviran is VP of Engineering at Wix. He has over 25 years of experience in the software industry and has filled many engineering roles and leading positions, from designing and building the US national Electronic Records Archives prototype to building search engine infrastructures. Aviran is a tech-savvy and a technology blogger, with vast knowledge of internet technologies, software development, team building, continuous delivery and a dev-centric culture advocate.

Find Aviran Mordo at

Similar Talks

Scaling N26 Technology Through Hypergrowth

Qcon

Software Engineer and Tech Lead @N26

Folger Fonseca

How to Debug Your Team

Qcon

Senior VP Engineering @spring_health, former VP Engineering @Meetup

Lisa van Gelder

Trust, the Secret Ingredient in High Performing Team

Qcon

Site Reliability Engineer @immersivelabsuk

Jaycee Cheong

Monitoring All the Things: Keeping Track of a Mixed Estate

Qcon

Principal Engineer Operations and Reliability Programme @FT

Luke Blaney

3 Disciplines for Leading a Distributed Agile Organization

Qcon

Distributed Coach/Mentor & Community Cultivator

Mark Kilby

Tracks

Monday, 2 March

Tuesday, 3 March

Wednesday, 4 March

Download the QCon App!

Available on iOS and Android

The QCon app helps you make the most of your conference experience. Easily browse and follow the conference schedule, star the talks you want to attend, and keep tabs on your personal itinerary. Download the app now for free on iOS and Android.

QCon - iOS QCon - Android
QCon