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


Feb 10, 20176 min read
Recycling Rows for High Performance React Native List Views
Recycling previously allocated rows that went off-screen is a very popular optimization technique for list views implemented natively in...

Jan 21, 20173 min read
Testing Asynchronous Code
Asynchronous code is hard. Everyone knows that. Writing asynchronous tests is even harder. Recently I fixed a flaky test and I want to...

Nov 25, 20165 min read
Scaling to 100M: MySQL is a Better NoSQL
MySQL is a better NoSQL. When considering a NoSQL use case, such as key/value storage, MySQL makes more sense in terms of performance,...


Aug 24, 20163 min read
ESLint Plugins: Plug into a Better Coding Culture
When writing code, it’s a good idea to use a code linting tool for several reasons: it identifies possible errors, enforces a clear...

Jul 22, 20162 min read
Build Your Own Chrome Extension
The Services Team at Wix uses JIRA as our Scrum board, which is displayed on a big TV in our team’s room. We love JIRA because it’s...


Jul 13, 20166 min read
Taking CSS To Scale: A Pragmatic Approach
Wix’s WYSIWYG website builder supports tens of millions of users creating websites, which are accessed by hundreds of million users...


Jun 4, 20162 min read
Two Services and One Angular Factory – Case Study
Running code in a client-side environment is tricky. Some APIs are available at runtime, but other APIs are not supported. Whether APIs...

May 16, 20163 min read
Color Your Logs and Stack Traces
At Wix we produce gigabytes of logs for different applications every day. Logs are not the only way we monitor our systems, but they play...

Apr 20, 20163 min read
Git: Committing vs Pushing vs Stashing – OR: “what to do if I just want to work locally”
Many people ask me for advice when they’re trying to modify some code locally without the changes finding their way into the remote...

Mar 29, 20166 min read
Developing Large-Scale Applications with TypeScript
As a front-end developer, you’ve probably heard about TypeScript. Maybe you even tried using it. But not many developers know what it is...

Mar 28, 20162 min read
Applying Javascript thinking to AS3 – Anonymous functions
When Wix started developing the HTML editor, many of the people whose full time job was AS3 development suddenly had to start developing...


Feb 5, 20163 min read
Refactoring with Kleisli Composition
For quite awhile we have been maintaining an application that processes XML and JSON data. Usually the maintenance consists of fixing...


Jan 22, 20163 min read
Scaling Wix to over 100M Users: The Beginning
When I prepared the first presentation to tell the Wix scaling story, we had just over 10,000,000 (10M) registered Wix users. By the time...


Dec 18, 20154 min read
Scaling to 100M: To Cache or Not to Cache?
This blog post is part 2 in the “Scaling Wix to over 100M Users” series. Read part 1 here. When Wix started, we used the Tomcat,...

Nov 23, 20154 min read
Fluent JavaScript
It is not enough for code to simply work. Good code is meant to be easy to understand, and it is much easier to understand code that is...


Oct 7, 20155 min read
How Many Threads Does It Take to Fill a Pool?
In recent months we have seen a small but persistent percentage of our operations fail with a strange exception—...

Oct 3, 20152 min read
A Tale of Two XML Transformations
A few months ago we noticed unusually high CPU usage in one of our services. At first we didn’t take it seriously, but when we got a...


Aug 17, 20151 min read
Rekuire | a module for NodeJS
Just wanted to share a nice piece of code I created.. During my recent experience with NodeJs, there was one thing that bugged me the...

Jul 30, 20151 min read
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 14, 20152 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...

Jun 2, 20151 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...

May 14, 20153 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 8, 20151 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 1, 20154 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’,...
bottom of page