Unreal logo

Node JS Engineer

Open

About Unreal

Come work on a vibrant and exciting new social platform that’s often been called “Minecraft for Messaging”.  You’ll be part of an ambitious team, merging the best new technologies with modern design, building an immersive new experience, that fundamentally changes the way we socialize online.

We are an agile team, backed by investors in San Francisco, CA.

About the Role

This is a remote role.  As a core member of our engineering team, you will be involved with all things back-end, solving complex engineering problems that come with the challenge of building a real-time mobile, social network melded with a client/server gaming architecture.

We are looking for someone who has a true passion for consumer products and is looking to play an integral part in the development of this fun and exciting company.

This role will give you the opportunity to tackle challenging problems, including...

  • Building performant systems in a high-latency environment.  This involves a combination of aggressive caching strategies, targeted denormalization, and outside-the-box thinking to create a smooth, continuous user experience.

  • Maintaining code flexibility as the project evolves.  We move fast, and the code needs to keep up. This involves a solid understanding of abstract programming patterns and data structures, clear and structured thinking around code design, identifying and simplifying code complexity, and the ability to adapt to ever-changing requirements.

To be successful in this role, we'd expect you to have...

  • 7+ years of Node.js development
  • Experience with GraphQL, Apollo, TypeORM, Postgres
  • Experience with Graph Databases
  • Experience with Apollo Subscriptions / web sockets
  • Experience building REST API Endpoints and web sockets
  • Experience working with large, complex applications
  • Experience supporting mobile application architectures, push notifications, etc.
  • Previous experience building messaging and/or social application backends
  • Proficiency with Typescript
  • Experience with State Machines, Behavior Trees
  • Experience with Serverside image processing and manipulation
  • Experience with Pub Sub
  • Experience with Redis, aggressive caching for high performance systems
  • Experience with Functional Programming patterns (e.g. functors, monads, lenses, composition)
  • A desire to to tackle tough problems
  • Experience working in a small and agile team of developers
  • A passion for writing beautiful code

As a bonus, we'd love you to have…

  • Experience with React, React Native, Web development
  • Knowledge of Graph Theory, Graph Analytics, Markov Models
  • Knowledge of Data Science / Machine Learning algorithms
  • Experience with MMO games
  • Experience with GitLab CI/CD, AWS
  • Experience with Unit testing and TDD