top of page

Recap from Wix Engineering Conference 2023: Performance, Platform Engineering, AI, and Open Source

Updated: Apr 3


Wix Engineering Conference


It was Dr. Seuss who said: "The more that you read, the more things you will know. The more that you learn, the more places you'll go". We believe that the same goes with organizations. The more an organization learns, the more it is capable to achieve and to grow.


That is the reason why the Wix Engineering Conference, our internal gathering, is such an important event. And this is the reason why we invest so much time and effort into it.


Here's a quick look at some of the talks and technical takeaways from the Wix Engineering Conference 2023:



 

Web Performance in 2023: How React 18, Quik & Remix Can Speed Up Your Web Application - Gil Eckstein


Web performance technologies have made significant advancements in recent years, introducing terms like islands, selective hydration, and server components. Those buzzwords can be confusing, and starting a high-performing web application today can be pretty overwhelming. Which framework to choose and what do all those buzzwords mean anyways?


This talk is aiming to answer exactly those questions. In this talk, Gil will introduce the most popular and up-to-date architecture for creating fast web applications. We'll dive into the common challenges that slow down web applications today and explore how modern technologies like React 18 (including Suspense and server components), Quik, and Remix address them. We'll discuss the pros and cons of each framework and its features, and how you can take advantage of those concepts when developing your web application:



 


Troubleshooting - From Art to Science to Automation, Aviva Peisach


Back in 2020 we faced a large problem (other than covid) - Wix's production incidents troubleshooting time was soaring, and it took long minutes and sometimes hours to get to the incident root cause and fix it. With our scale and proliferation of domains, teams & products, it seemed impossible to find common denominators that will allow us to improve troubleshooting times across teams and domains.


Afterall, troubleshooting was perceived as an art, only mastered by the most veteran and experienced developers in the team. However we accepted the challenge and over the last 3 years we managed to improve MTTR of production incidents by 30%!


In this talk I'll describe the journey of taking (what seemed to be) an impossible, fragmented challenge of cross Wix inefficient troubleshooting, mapping it to find commonalities and patterns, onto creating tools, training and automation we use today as part of our day to day to more effectively troubleshoot production!




 


Hook Into Objects Properties Like a Pro - Guy Bary


This session will cover how object properties are defined and operate, as well as how they can be overridden. We will discuss proxy objects, prototype patching, scope-chain hooking, real-life scenarios, and some advanced JavaScript concepts:



 


Wix Engineering


Workshop Wix Engineering Conference


Wix Engineering Conference 2023


 

Off with Their Heads: Rise of the Headless Components - Omry Nachman


Aren't You Tired of Repeating Yourself? Tired of repeating the same code over and over again in your React projects?


In this talk, we'll discover the power of headless components, a design pattern that separates the logic from the presentation layer, allowing you to create reusable and flexible UI components. We'll explore how headless components can simplify your development process, saving you both time and effort.


We'll examine popular headless component libraries and provide tips for integrating them into your projects. Whether you're a beginner or an experienced developer, join us to discover how headless components can help you streamline your React development and create high-quality, customizable UIs:



 


Migration to Nile: How to Break Monolith to 8 Microservices and Stay Sane - Elena Kravchenko



How to Break Monolith to Microservices - Elena Kravchenko

Once upon a time Stores team was brave enough to rewrite a huge project called Catalog to Nile. This meant that we needed to remodel our "monolith-microservice" in such a way that one service would hold only one domain entity. Eventually we received 8 separate services with various relationship types. Such separation means a lot of challenges which will be covered in the talk with focus on relations modeling along with issues, possible solutions and trade-offs.


We will see why collaboration is the key to success and how many Nile/framework features were born as a result to help us and other devs to solve common challenges.


The audience will learn from this talk how to read data from several services: materializer vs in memory join vs let client solve it, pros and cons and some cases when you don't really have a choice How to handle write in multi-services: what is an orchestrator proxy and when to choose this pattern. How to enforce "at least one policy" in a distributed world Tools and guidelines already provided by Nile and planned in future:




 


Search Meets Nile: When Whole is More Than Sum Of its Parts - Vilius Lukosius & Gediminas Kriščeliūnas



Wix Engineering Nile - Vilius Lukosius & Gediminas Kriščeliūnas

Wix Backend is composed of hundreds of API’s that are user/developer-facing. While not all of them need search capabilities, many still do. One way of approaching this problem is to give developers access to a search engine and leave them to do their thing. However, with our scale, we decided to approach this problem from a platform engineering perspective - to see how we can build a platform where API owners could effortlessly add search capabilities while evolving APIs with minimal friction.


In this talk, we will delve into how Wix prioritizes platform engineering to enhance developer experience and velocity, ensuring seamless integration of search capabilities and API evolution with minimum effort and maximum efficiency:




 


(Re)designing Systems with Event Storming - Gal Sharir



Gal Sharir - Designing Systems

As everyone at Wix are faced with the daunting task of redesigning complex systems into nicely modeled Nile services we all had to make a few hard decisions: which entities/flows should we tackle first, how do you remodel one part without knowing what happens to the other parts of the system?


In order to build a strategic plan of how to approach this huge task, that many of us have estimated in human years, we first tackled the issue of clarifying our ideal domain model - where we want to be at the end of this huge effort - our Northstar architecture. As we approached this task with different teams at premium, where we have complex business domains with highly coupled entities, it was hard to know where to start from. When you have a huge task, the first thing you need is a plan, with clear steps and small milestones that will get you to your goal.


In this talk I will share my tale of the search after “the magical method” to generate a north star. A method that if one would follow will generate this “Northstar architecture”. I will review our chosen method: event storming, and explain it step by step with an example from the premium domain:



 


Wix Engineering


Developers and arcade


Wix Engineering Conference 2023

 



Lessons I Wish I’ve Learned Before Becoming a TL - Yael Zaritsky Perez



Yael Zaritsky Perez lessons learned for team leaders


I’ve liked and disliked my allegedly same job as a developer in different teams I’ve been to. At some point in my career I realized that the software engineering, the people, and the freedom I was given (or not), had a lot to do with how much I enjoyed my job. And so I decided to become a TL, to try to build a team in which software developers grow, and enjoy working in.


Apparently, there is a lot to learn in order to make that happen. Here are the three most important points I’ve learned so far, in a nutshell: Focus and prioritize. You can’t do everything at once; Know your domain(s). In addition to the codebase, ever-evolving software industry and your business domain, your team members and people you work with are each a domain you must learn. Trust.


In order to do an excellent job, you must have your manager’s trust and trust in your team; After this talk you'll be aware of a few things I wish I’d learned before I took on my first TL role:



 

Think You’ve Built a Kick-ass Product? Think Again… - Aliza Solomon



Aliza Solomon Product

You’ve designed the APIs for a stunning new product. The micro-services are just the right size, they all communicate with each other seamlessly and your product has gone live without a hitch. Take your team out and celebrate, you’re done! But are you actually done? This is how we usually define “done” internally. But how often have you gotten feedback with design issues several weeks or even months after release, once a critical mass has started using the feature?


And then you have to reopen the design and decide whether and how to fix them? Imagine hearing from support that your site owners’ Stores Inventory randomly doesn’t update after an order is canceled. It only happens occasionally, and you can’t recreate the issue. How can you fix what you can’t find? Luckily the Wix Stores team was taking advantage of a severely underrated resource that is available to all of us, who discovered the issue and how to fix it before any store owners noticed!


Join us and learn how to take advantage of this resource to improve the quality of your offering and to truly be “done”:



 

Leveraging Generative AI to Build the Ultimate AI Chatbot - Assaf Elovic & Mykhailo Ulianchenko



How to build an AI Chatbot - Assaf Elovic & Mykhailo Ulianchenko


How We're Leveraging Generative Al to Build the Ultimate Al Chatbot: Assaf Elovic and Mykhailo Ulianchenko will discuss our research and strategy for building an AI assistant that does not require chat flows and endless manual work. We will also see how we're leveraging LLMs to work in orchestration and continuously learn to improve over time. Watch:



 

IGOR, My Problem Child - Ayal Gelles


During a company hackathon at Wix, the AI agent service known as IGOR was quickly developed and went on to win first place. In this session, we will explore the development journey of IGOR, covering various aspects such as the initial challenges faced, the approaches that didn't work, successful strategies employed, and valuable lessons learned.


Topics of discussion will include the optimization of prompts using embeddings to generate concise and effective responses. Additionally, we will touch upon the creation of a makeshift Wix Editor API, which was rapidly put together for the purpose of the demo. Furthermore, we will delve into the implementation of sandboxed code evaluation for secure execution of the generated code.


Watch this session to learn more about IGOR's award-winning performance and the insights gained from its development process:



 



Wix Engineering


Wix Engineering Conference


Wix Engineering Hats

 

Leading a Multi-Platform Open-Source Project: Lessons from Detox - Amit Davidi & Asaf Korem



Open-Source Detox React Native Amit Davidi & Asaf Korem


Wix’s Detox is a high-traction UI testing framework for mobile apps (React Native). It is one of the most prominent tools in Wix’s mobile-ecosystem toolbox, and also one of Wix’s top-5 open-source projects, with more than 10K stars on Github, 250 contributors, 200K weekly downloads on npm.js, 300 members on Discord, 600 tagged questions on StackOverflow, and more. Contributing to the community through working on such a project has been a rewarding experience for us, the Detox team.


Nevertheless, the desire to both provide the best solutions alongside top-notch support for Wix’s developers and QA, on the one hand, and to sustain the strong brand in the OSS community, on the other, sometimes puts things on a collision course between opposite interests.


Join Amit Davidi (Android/JS developer and the Detox tech lead) and Asaf Korem (iOS/JS developer) for an insightful overview of how Wix utilized the small (yet talented) team in order to find the right balance between the internal and external worlds:



 

How To Work With Israelis - Maksim Norkin


You've joined Wix in Vilnius / Kyiv / Krakow, you have your first zoom call and there is a sudden culture shock. You panic, you think what's wrong with you. Let's digest how to work with Israeli people.



 

Scott Chacon, Co-Founder of GitHub: Wix Engineering Conference 2023, Keynote



Scott Chacon Wix Engineering Conference


As part of our recent Wix Engineering Conference 2023, a remarkable day that brought together over 1,000 of our developers for a day filled with learning and growth, we had the honor of hosting Scott Chacon, Co-Founder of GitHub, as our keynote speaker.


During this event, Scott shared his insights and unique perspectives on product design, along with the lessons he gleaned from his experience in building and expanding GitHub. He delved into how these invaluable lessons can be applied to shape the creative products of the future. We hope you had the opportunity to watch and gain inspiration from Scott's expertise.



 

More of Wix Engineering's updates and insights: 

Σχόλια


bottom of page