top of page

Wix Engineering Blog
Wix engineering blog tells the story of our daily challenges and our way of solving them. Read about architecture, scaling, mobile and web development.

Search

Maven 2 on OS X Snow Leopard killed by latest update
So apparently, the latest Java update to OS X Snow Leopard broke Maven 2 support. It did so in a rather nasty way; For over a year now...
Jul 30, 20151 min read

The Microservices and DevOps Journey at Wix
We at Wix.com started our journey on DevOps and Microservices about two years ago and recently switched from a monolithic application to...
Jul 14, 20152 min read

‘Leap Second’ Bug Fixed
On Saturday, at midnight Greenwich Mean Time, as June turned into July, the Earth’s official time keepers held their clocks back by a...
Jun 2, 20151 min read

How Does HikariCP Compare to Other Connection Pools?
This blog post is a follow up to “How Many Threads Does It Take to Fill a Pool?”, written by Yoav Abrahami in June 2013. In Yoav’s post,...
May 14, 20153 min read

Wix guest appearance on JavaScript Jabber
Last week our very own Amit Kaufman (Editor Manager) and Avi Marcus (Editor Client Architect) appeared for a guest appearance on the...
May 8, 20151 min read

The Lambda Experiment
I’ve recently started coding in Scala (recently being over a year ago). While I dislike Scala companion religion ‘everything functional’,...
May 1, 20154 min read

EasyPattern | Human readable RegEx
Checkout EasyPattern for Javascript and NodeJs! During some work on our internal tool, I have created EasyPattern, which is a readable...
Apr 24, 20151 min read

EmbeddedJettyProbe – a simple tool for checking your HTTP requests
EmbeddedJettyProbe is a small tool for examining the contents of HttpRequests that arrive at an embedded Jetty instance. This is useful...
Apr 17, 20151 min read

How to turn any api to a fluent API with extension methods in C#
Let’s say you have a class A, which exposes an old fashion, not fluent api In languages like Java, you would be stack with using this...
Apr 6, 20151 min read

Death by Redirect
It is said that the greatest harm can come from the best intentions. We recently had a case where, because of the best intentions, two...
Apr 3, 20153 min read

Scala Extension methods via implicit classes
In this post i will demonstrate a nice trick to add “extension methods” for a given class. Note: The feature is based on implicit class...
Mar 23, 20151 min read

Integration Tests in JavaScript That Don’t Suck
Most developers don’t like writing integration tests. But what’s not to like? Integration tests ensure that a newly added feature...
Feb 13, 20153 min read

Building and Open-Sourcing Wix’s A/B Testing System
Have you ever worked using Continuous Delivery (CD)? You know, that process where you push the code, run it through an automatic build...
Jan 19, 20156 min read

End-to-End TDDing an iOS Application
Recently we prototyped the development of a native OS application that needed to talk to multiple backend services. Although the project...
Dec 9, 20144 min read

Explicit Implicit Conversion
One of the most common pattern we use on our day to day is converting objects from one type of object to another. The reasons for that...
Oct 16, 20142 min read


Continuous Delivery – Feature Toggles
Photo by Alberto Restifo on Unsplash One of the key elements in Continuous Delivery is the fact that you stop working with feature...
Aug 11, 20146 min read

Using Specs² macro matchers for fun and profit
At Wix, we make extensive use of the Specs² testing framework. It has become the standard tool for writing software specifications in our...
Jul 28, 20142 min read

Introducing Accord: a sane validation library for Scala
Accord is an open-source (Apache-licensed) Scala validation library developed at Wix. It’s hosted on GitHub and you’re welcome to fork...
Jun 20, 20142 min read

Introduction to Slick: Plain SQL Usage
In this post I will cover usage of the Slick library, which provides a Scala-centric API over JDBC. Slick offers 3 flavors for querying...
May 15, 20141 min read

Why calling Source.mkString() is a very bad idea
So we have some Scala code that consumes text from an InputStream from an HTTP response. So, like any good Scala developer, I handed over...
May 14, 20141 min read

Chef Happens – Managing Solaris with Chef
Adding Solaris servers to be managed by Chef was the most annoying entry in our Wix.com DevOps backlog for almost a year. We moved our...
Apr 10, 20143 min read

Using Scala Pattern Matching for a URL dispatching mechanism
At Wix.com, we deal quite a lot with URL dispatching, being a company that handles editing, hosting and serving user-generated websites....
Mar 24, 20143 min read

How to pass an interview at Wix
During the last couple of months I’ve interviewed a quite a few people for Senior Developer/architect positions here at Wix (Java). A...
Feb 12, 20145 min read

Scaling to 100M: Service-Level Driven Architecture
This blog post is part 3 in the “Scaling Wix to over 100M Users” series. Read the previous posts here and here. Wix started with one...
Jan 11, 20144 min read
bottom of page