Position: Backend Engineer
Company: Wix
Experience required: 3y
Category: Java
English level: intermediate
Published: 2020-06-01T00:00:00+03:00

We are:

Wix’s Backend Engineering group, where our senior software engineers shape the architecture of our backend microservices. 

Due to our high scale, we run our production clusters across multiple data centers and cloud vendors, managing an ecosystem of more than 1,300 microservices, handling daily traffic of about 170 million users. 
This introduces unique distributed system challenges of synchronization, performance, testing, and monitoring while working with cutting edge technologies.

Our developer-centric approach places responsibility, ownership, and trust on each developer on their path to production. 
Our culture is transparent, highly technical, and agile. We invest 20% of our time in personal-professional development and improving our craftsmanship. 

You are:

A passionate team player who can reason and communicate your opinions, as well as accept others’ approaches. 
You’re proactive, never taking the present state for granted and always striving to understand why things are done the way they are. You’re a clean coder with readable, simple, and maintainable code. You recognize bad code and continuously search for better solutions. 

You quickly grasp large & complex systems and their inner workings. 
You’re experienced with software engineering best practices (testing, code reviews, immutability, etc) and are aware of bad practices and anti-patterns. You’re deeply familiar with the tools, libraries, and frameworks that you’ve worked with and feel at home in a POSIX production environment. 
You’re also able to debug and investigate production issues.

Bonus points if you:

Understand and write multi-threaded code, specifically a web server's request lifecycle.
Have practiced TDD.
Have an understanding of reactive patterns and toolkits.
Have contributed to open-source software.
Have spoken at developer meetups, conferences or have a blog about software engineering.
Have an excellent understanding of database systems, relational and otherwise, including sharding for big data applications.
Are able to conduct performance analysis for a system and find its bottlenecks.
Have been a “go-to” person in your previous teams/organizations.
 
As a Senior Backend Engineer, you will:

Work on cutting-edge technologies and become an industry leader.
Improve your skills and learn from top-notch engineers.
Tackle tough problems and find creative ways to solve them.
Push your code to millions of users every day.
Solve hard problems in a simple way using TDD and clean code.
Influence the developer community.
Contribute to the OSS community.