Every day, millions of people from over 190 countries trust us to handle their precious creative ideas.
Since making our name with quick & simple file-sharing, WeTransfer has evolved to help creators organize, share, and get feedback on their work – from inception right up to delivery. We showcase the best brands to more than 80 million users per month, and our editorial platform WePresent has championed unexpected stories of creativity from around the globe and features collaborations from world-famous artists, too.
Sounds like fun, right? Allow us to sweeten the deal: as a certified B Corporation, we do all of this while using business as a force for good, balancing people, the planet, and profit along the way.
In March 2020, WeTransfer was designated as a Certified B Corporation, confirming its ambition to strengthen its values-driven approach to responsible technology and business. As a certified B Corporation™, WeTransfer supports issues such as climate change by maintaining a climate-neutral status and aiming to reduce its carbon footprint by 30% by 2025. The company is also focused on promoting diversity and inclusion and championing employee mental health.
About Transfer
Join product and design leaders in developing the vision for the future of WeTransfer’s namesake—internally known as the Transfer product.
The Transfer product team is responsible for building on the success of our widely beloved file delivery service that is used by hundreds of millions of people each year. Our unique business combines a productivity tool with an award winning advertising platform showcasing highly designed promotional wallpapers. The Transfer product is the highest impact product for our business, and you’ll be joining the team at an exciting stage of new development as we build the next evolution of our service.
You will be part of the Transfer backend team, which builds the major backend services which power what you see on wetransfer.com. Our teams are open, eager to try new things, fun and dynamic. As a team, we’re much more concerned with finding the right solution than being right.
Above all else, we value kindness, understanding and empathy. We believe in open and honest communication and good teamwork to achieve a shared vision. We are passionate learners, who aren't afraid of trying out new tools and technologies to build a great end-to-end customer experience. We love to share our knowledge and experience when we can.
We are constantly striving to be more inclusive. Our team represents a variety of cultural backgrounds. We believe diversity of perspective and experience are key to building great products. You’ll play a key role in fostering collaboration and creating an environment where people can do their best work.
About the role
You'll be responsible for the happiness of millions of users by taking ownership of the reliability and performance of our product, implementing new features with your project team, and ensuring our codebase stays in good shape.
What you’ll be doing:
work closely with PMs, designers, and client teams to build new product offerings
seek out ways to improve the quality of our services (performance, reliability, observability, etc)
work with engineers from many teams to improve conventions across the organization
contribute to a culture of learning and growth through mentoring and knowledge sharing
review teammates' code
and hopefully writing just the right amount of code (many of our existing codebases are written in Ruby, but we’re moving towards Node & Go for new services)
Qualities we’re looking for:
You care deeply about the quality of the products we ship to customers. Helping others to improve their skills is something you enjoy and actively seek out to do.
Strong backend engineering fundamentals (we’re not seeking out any specific language, we’re confident you’ll pick that up as you go)
A sense of ownership over the products you contribute to
Strong verbal and written communications skills (English).
Ability to navigate ambiguity and operate independently
Experience building and scaling distributed systems
Experience improving database performance and ability to reason about trade-offs
Comfortable presenting ideas or solutions to a team and receiving feedback (both positive and negative)
Being comfortable with failure
Tech Stack
Ruby/Go/Node
Our Engineering Principles
Obsess over customers
We obsess over our customers - whether it’s working to exceed their expectations and bring moments of delight, following up on support tickets, building tests to validate their scenarios, or using data from their use of our products to inform our decisions.
Prepare, Commit, Focus
Before we commit to work, we understand the scope, the priority, and and impact. When we commit to work, we commit to doing it with high quality. We work with focus and urgency to ensure we can deliver on our commitments.
Favor proven solutions
We favor proven tech that we have or can buy over what we can build. Building new is a rarity, and we choose to build because the problem hasn’t been solved before to our level of requirements, or we have unique intellectual property we are creating in the process.
Keep it simple
The simple solution will be right sized. It will be easier to build, to maintain, to throw away if people don’t use it, and to iterate on or replace if they do.
Learn from everything
From our customers and support; from experiments; from data we gather; from our peers; from feedback, through whatever channels we can; from the incidents last month or the PR someone else commented on. There are limitless opportunities to learn from everything happening around us.
Take pride in our craft
Engineering is a craft; we do work that we can be proud of. We pride ourselves in the quality of our work, whether on new systems or old. We pride ourselves delivering on our engineering fundamentals and on owning and running our services.
Our Engineering blog
Interview Process
Behavioral Interview - 60mins - Nick, the Engineering Manager of the team, and Julia, the Product Manager that you would work with.
Take Home assignment - Max 2/3 hours to be spent on this
Technical Interview - 90 mins - 30 mins of discussion around your test, 60 mins of System Design with the engineers that would have reviewed your test.