Descripción del trabajo

Buscamos un ingeniero front-end senior para unirse al equipo web, el equipo detrás del sitio web de Unsplash. A lo largo de los años, hemos llevado Unsplash de un humilde blog de Tumblr a una aplicación web completa que admite decenas de millones de usuarios y toneladas de funciones útiles. 

Hemos hecho todo eso con un equipo reducido de solo 2/3 desarrolladores web, pero todavía hay mucho más por aprender y hacer, ¡y es por eso que te necesitamos!

Para tener una idea de cómo es trabajar en el equipo web, aquí hay algunas ideas sobre cómo se ha construido el sitio web hasta ahora.

El sitio web Unsplash se ejecuta en Node y usa React para renderizar tanto en el servidor como en el cliente. El HTML que generamos a través de la representación del lado del servidor de React es almacenado en caché por nuestro CDN (Fastly). 

Una vez que el navegador recibe el HTML, hemos optimizado la ruta de representación crítica para garantizar que no haya recursos de bloqueo . Todo esto significa que podemos renderizar la página tan pronto como el navegador comience a recibir HTML , sin esperar a que otros recursos (como CSS o JavaScript) se descarguen y ejecuten.

Para proporcionar la mejor experiencia de usuario, utilizamos React en el lado del cliente y en el lado del servidor, pero en caso de que JavaScript no esté disponible por alguna razón, la mayor parte del sitio seguirá funcionando. 

Los front-end interactivos implican la coordinación de muchos eventos asincrónicos diferentes. Para lidiar con esta complejidad, hemos adoptado la programación reactiva funcional (a través de RxJS) , y para unir esto junto con los componentes de React usamos ganchos observables.

Al adoptar TypeScript (estricto) y programación funcional , hemos eliminado clases enteras de errores. 

En el límite de la aplicación, usamos io-ts para decodificar datos externos, como respuestas de API o parámetros de consulta de URL, por lo que cuando una respuesta de API inevitablemente falla, los datos no fluyen hacia nuestros componentes y causan un error oscuro más adelante. inmediatamente queda claro dónde está el problema y se notifica al equipo de API (no al equipo web).

Para los diseños, aprovechamos al máximo la cuadrícula CSS y el flexbox . Organizamos los estilos de nuestros componentes utilizando módulos CSS .

La forma en que trabajamos:

El equipo web actualmente es de solo 2 personas y trabajamos en colaboración con el equipo de API (4 personas) y el equipo de diseño (2 personas).

Diseñamos la empresa de manera que elimine la mayor parte de las cosas que no son el trabajo creativo de su camino, para que pueda hacer su mejor trabajo. No creemos en una cultura del tipo 9–5 de arriba hacia abajo, de tocar los hombros. Tienes la autonomía para administrarte a ti mismo. No trabajamos horarios fijos. Respetamos el flujo. Debería poder estructurar sus días de acuerdo con lo que lo haga sentir con más energía y creatividad.

Cuando trabajamos en una nueva función, alguien de cada equipo encabezará el proyecto de ese equipo. Todos tienen la oportunidad de ser líderes y tienen la oportunidad de influir y promover sus propias ideas.

Las revisiones de código en profundidad nos ayudan a compartir conocimientos. No revisamos el código solo para elegir algunos nits de estilo; automatizamos todo lo que podemos para que podamos dedicar tiempo a revisar las cosas importantes como la arquitectura del código y la identificación de patrones para posibles abstracciones.

Las versiones de código más pequeñas y frecuentes nos ayudan a identificar problemas con anticipación y a validar el impacto. En un día promedio, el equipo web solo se implementa de 3 a 6 veces.

Supervisamos constantemente el rendimiento del front-end, utilizando SpeedCurve para establecer presupuestos y alertarnos cuando los superamos. Cuando hay una regresión en el rendimiento, nos tomamos el tiempo para investigarlo y solucionarlo.

Cuando una excepción de tiempo de ejecución se desliza a través de la red, nos tomamos el tiempo para comprender qué salió mal y encontrar los pasos necesarios para evitar que vuelva a suceder.

Trabajo que realizarás:

  • Nuevas características.
  • Rendimiento de back-end / nodo.
  • Reaccionar rendimiento.
  • Rendimiento general del sitio web (por ejemplo, optimización de la ruta de representación crítica y Core Web Vitals).
  • A medida que hagamos crecer el sitio web, nos ayudará a evaluar la arquitectura del sitio web y las compensaciones entre varias soluciones.

Lo que estamos buscando:

  • se siente cómodo siendo parte de un equipo pequeño, autónomo y distribuido.
  • Puede comunicarse con sensibilidad y claridad.
  • está realmente interesado en el producto que estamos creando. Alguien que se preocupa por el producto final más allá de simplemente escribir el código que lo hace funcionar.
  • tiene un alto nivel de experiencia con la mayoría (pero no todas) de las diversas tecnologías mencionadas en la sección de arquitectura anterior. Lo más importante: Node, TypeScript, programación funcional, React avanzado.
  • puede aportar nuevas ideas creativas para mejorar la calidad del producto y código base.

El equipo:

En Unsplash, permitimos que todos creen al hacer que las imágenes sean abiertas y accesibles.

En la actualidad, Unsplash impulsa a más personas y productos que cualquier otro motor de búsqueda visual del mundo, con más de 100 millones de imágenes descargadas cada mes, más que el resto de la industria combinada. Nuestro equipo crea unsplash.com, Unsplash para iOS y la API Unsplash , que alimentan directamente más de 10,000 aplicaciones, incluidas Medium, BuzzFeed, Facebook, Squarespace, Google, Trello y Square.

Se depende de nosotros todos los días como un bloque de construcción fundamental en el proceso creativo, lo que permite que cualquier persona, desde estudiantes hasta creadores galardonados, tenga acceso a imágenes utilizables de alta calidad.

El equipo está formado por personas que disfrutan haciendo cosas que a la gente le encanta. Nos preocupamos por los detalles y nos preocupamos por la calidad. Hacemos más con menos. Somos abiertos y transparentes en todo lo que hacemos, tanto interna como externamente.

Beneficios:

Disponible para todos los empleados a tiempo completo.

  • Trabajar desde casa
    Somos una primera empresa remota.
  • Talleres / conferencias Conferencias
    dedicadas y presupuesto de aprendizaje.
  • Retiros de empresa Retiros de
    equipo 1 o 2 veces al año.
  • Horarios flexibles
    administra su tiempo. Tú estableces tu horario de trabajo.
  • Vacaciones ilimitadas
    Recomendamos tomarse no menos de 3 semanas para una buena salud.
  • Fondo de atención médica
    Disponible para compañeros de equipo en países sin atención médica universal.
  • Licencia por maternidad / paternidad
    Si tiene un bebé, se le paga por el tiempo que necesite para despegar. El momento en que despegue será su criterio. Este es un momento importante y no queremos estar decidiendo qué días debe tomarse o no. Estaremos ahí para ti. Si creemos que el equilibrio no es el correcto o si tiene alguna pregunta, charlaremos.

Salario a percibir

Salario a Convenir
Ver más trabajos remotos de   

¿No tienes una cuenta? ¡Regístrate ahora!

  • Por qué ser remoter

    ✔️ Podrás solicitar las ofertas de empleo remoto.

    ✔️ Verás los enlaces y páginas de publicación de cada oferta.

    ✔️ Te avisaremos cada vez que salga una nueva oferta de empleo.

    ✔️ Podrás añadir a remoters a tu equipo de trabajo remoto para que las empresas se fijen más en ti.

  • Únete a la Comunidad Nómada Digital

    Crea tu perfil ahora y encuentra oportunidades en decenas de empresas que contratan de forma remota 👉 Únete aquí

  • Últimos remoters

  • ¿Eres Remoter? Accede aquí

  • Ir arriba