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


How to Test Your Redux App
[ironic tone] We all know that Redux is about functional programming, and when you have it functional — it is testable, right? You just...
Dec 27, 20175 min read


The Story of Making Wix Accessible
One of Wix’s mottos is “The Way the Web was Meant to Be”. We believe that everyone should have a website, and of course, anyone should be...
Dec 14, 20178 min read


Hearts and Minds: Shaping Dev Culture Through Technical Training
Culture entails what is acceptable or unacceptable in people’s behavior, it's what puts some companies at an advantage in recruiting and...
Nov 28, 20171 min read


Contributing to Open Source in 2017: It's All About the Culture
Dev-Centric Culture We, at Wix Engineering, have our own dev-centric culture, built around empowering engineers not only as employees,...
Oct 30, 20172 min read


Is Scala Still Relevant? Yup
When I started with Scala in 2011 it was a pretty easy sell: show any Java developer the collections library, maybe a couple of lambdas...
Oct 24, 20174 min read


The Cost of Streaming Data from MySQL
Though the question of “How to query data from a database?” is quite an old one, we still have a reason to investigate it nowadays. True,...
Sep 18, 20175 min read


Change 100M URLs and Live to Tell
You think changing your website’s URL is quite simple. Use “Redirect” and you’re done, right? Actually no, it’s not that simple —...
Aug 3, 20176 min read


Wix Engineering Conference 2017
As dear Uncle Ben once said, “With great power comes great responsibility”, and with over 100 million Wix.com users worldwide – Oh boy!...
Jul 23, 20173 min read


GitHub & Wix Engineering Day 2017
“Wix is such a great global example of best practice in software engineering. With developer happiness at the core of Wix’s culture, Wix...
Jun 28, 20171 min read


Moving Beyond Animations to User Interactions at 60 FPS in React Native
What makes a good mobile app become a great app? What are the magical nuances that can set your app apart? Mobile is all about...
Mar 13, 20171 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...
Feb 10, 20176 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...
Jan 21, 20173 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,...
Nov 25, 20165 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...
Aug 24, 20163 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 22, 20162 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...
Jul 13, 20166 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...
Jun 4, 20162 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...
May 16, 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...
Apr 20, 20163 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 29, 20166 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...
Mar 28, 20162 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...
Feb 5, 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...
Jan 22, 20163 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,...
Dec 18, 20154 min read
bottom of page