OverleafOverleaf

Software Engineer (Frontend / React)

Posted 30.12.2021
Take The InterviewOriginal Job Post

Your New Role:

We are looking to hire a frontend engineer to help work on our platform. This is a complex web app that allows users to edit their scientific documents in collaboration with others, in real-time.

Initially, your main focus for this will be helping us migrate from Angular 1 to React (a lot of which has been done already) and to switch our code editor from ACE to CodeMirror. In the longer term, we are planning projects around improved collaboration features for teams, improvements to our rich text mode to help non-LaTeX users, and more.

There will be opportunities to work on the backend, so full-stack engineers, as well as frontend engineers, are welcome to apply.

As a Software Engineer at Overleaf, you will be helping to make Overleaf the place where scientists, researchers and academics go to do their best work.


Our Tech:

Overleaf is based on open-source software, and most of our product code is itself open source. You can find it on GitHub: https://github.com/overleaf/overleaf

On the front end, we mainly use React, although we are still migrating some code from Angular 1. On the backend, we run a microservices architecture, mainly in Node.js using MongoDB, PostgreSQL and Redis, running on Google Kubernetes Engine.


How We Work:

Overleaf is remote-first — all staff work remotely and this is part of our values. We also have an office space in London for those that want to use it, and when the pandemic settles down we'll again get the whole team together in London a few times a year for face-to-face time.

Our core hours for meetings are 2pm–5pm UK time; we try to schedule all team meetings during this time, including daily 10–15 minute standup calls and biweekly company update calls.

We always collect user feedback to inform our work. We have UX professionals on our team, and we run many surveys and user interviews. Our engineers work closely with the product team in product trios (PM, engineer, UX) during both discovery and delivery of new features.

Our development process is based on the “Shape Up” model, using 6-week delivery cycles and a 2-week cooldown between them. In each cycle, we have multiple delivery tracks, each with its own tech lead. Engineers move between delivery teams each cycle. We practice code review, invest in automated testing and are big fans of linting.


The stages in our hiring process are typically:

  1. We will aim to update you on the status of your application within 7 working days from when we receive it.
  2. We'll follow up by email with any questions we have about your application, usually around logistics, your ambitions and your expectations about the role.
  3. We’ll schedule a 30-minute call for an initial discussion to discuss the role and your experience, to see if they look like a good fit.
  4. We'll schedule a more in-depth interview, which is typically two hours long. The first hour is discussion, and the second hour is based on a short homework assignment (max 1h outside of interview) or an exercise during the interview if you prefer. The problems are practical in nature (no fizz-buzz or reversing linked lists).
  5. We'll make an offer. We usually interview in batches, so there may be a short delay while we interview other candidates, but we will try to keep you informed throughout the process.

If you have a deadline, please let us know in your application, and we will try to be accommodating.


We require that you:

  • Have a minimum of 2-3 years experience writing frontend code in JavaScript and CSS and HTML (we aren’t taking on new graduates at the moment)
  • Experience with the technologies we use (like React) helps, but you don't need to know them all; your ability to learn is much more important to us.
  • Will work for us full time (or nearly full time)
  • Are based in the UK, EU, US or Canada
  • Will usually be available in our core hours, 2pm–5pm UK time


Benefits:

  • Remote and flexible working.
  • Salary £40k–£75k per year depending on experience.
  • You would join a small, dedicated and growing team.
  • We're substantially (around 80%) open-source, so your work will often be on open source code.
  • We get everyone together in London for team meetings several times a year for valuable face-to-face time (pandemic permitting).
  • We’ll provide a new Mac, PC or Linux laptop, along with a stipend for other equipment.
  • We provide a training budget; many of our developers choose to attend relevant industry conferences or buy training materials.
  • We run regular remote hackathons to keep learning and experimenting (https://www.overleaf.com/blog/overleafs-remote-hackathon-revisited-one-year).
  • We run a weekly internal seminar series with short talks from staff about their work or personal projects, new technologies and techniques.
  • We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.
Original Job Post on Software Engineer (Frontend / React)
Take The Interview
Posted 30.12.2021