React Engineer at Unsplash

Location: Montreal or remote

Posted February 15, 2019

✈️Remote-friendly

Description

The web engineering team is responsible for all things unsplash.com.

We use modern and well-supported tools to build the best possible version of our product in collaboration with the API and design teams.

At a high level, the web architecture consists of a Node server (TypeScript), with React for rendering on both the server and client.

Responsibilities

Over the years, we’ve taken Unsplash from a humble Tumblr blog to a fully-fledged web app supporting tens of millions of users and tons of useful features. At the same time, we’ve improved its performance by leveraging modern techniques like SSR, dynamic chunk-splitting, CDN HTML caching, complex state management using memoization and Observables, etc. We’ve done all that with a lean team of just 2 web developers: frequent code releases and in-depth code reviews help us share knowledge and identify problems early. But there’s still so much more to learn and do, and that’s why we need you!

We designed our company in a way to get as much of the stuff that’s not the creative work out of your way, so you can do your best work. We don’t believe in a top-down, shoulder-tapping, 9–5 type culture. You have the autonomy to manage yourself. We don’t work set hours. We respect flow. We believe you should be able to structure your days for what makes you feel the most energized and creative.

Requirements

If you tick (most of) these boxes, you should get in touch with us:

  • You’re comfortable being part of a small, autonomous and distributed team.
  • Being a small team, we dive into everything. You are comfortable working across the full stack, from writing CSS to fine tuning a CDN—although we don’t expect you to know these skills upfront, but you should be willing to learn them when they become necessary.
  • You’re a quick learner who’s able to pick up new concepts whenever necessary.
  • You’re able to adequately prioritize between improving UX, optimizing performance, and building new features.
  • You’re comfortable with React.
  • You care about the end-product beyond just writing the code that makes it work.

It’s a bonus if you have experience with:

  • TypeScript, Redux, Reselect, Observables.
  • front-end performance (e.g. optimising page load, page layout, and React rendering).
  • building a large-scale app

Please let the company know you found the job at Frontend Jobs - it helps us continue to grow, and build a better job board for everyone