Principal Backend Engineer, Loyalty Platform

Job description

We're looking for passionate engineers who're keen to learn and grow in a fast-paced environment. You take great pride and your work and feel a great sense of accomplishment in building beautiful products that scale and are used by customers globally.

We are looking for software engineers to join us and help build & maintain our homegrown identity and authorizations platform which forms a core component in our end-to-end loyalty platform. Some of the interesting challenges we face are:

  • Building a extensible authorizations platform that support diverse and different identity providers, ranging from the very standard OIDC to a very custom identity integration
  • Supporting hundreds of thousands of users accessing our rewards platform on a daily basis, across our many customers globally
  • Keeping the platform secure - this team is in charge of not only managing authorizations onto the loyalty platform, but also provides a flexible machine to machine authentication system used internally
  • Refactoring to continue to support more and larger customers, for example, moving to an events based architecture
  • Design APIs that are both consumed internally by other systems and externally by our customers
  • Improve the observability and monitoring of the platform

As a senior member of the team, you will also get the opportunity to set and improve engineering standards, lead the design and architecture of our platforms, share your knowledge with the team and have the chance to mentor junior engineers! You will also get the opportunity to collaborate closely with our solution architects, product managers, business, as well as our customers, to craft the roadmap for our platform and services.

Requirements

  • Have at least 5 years of backend experience
  • Have good experience in at least one back-end language (Ruby preferred, but not obligatory)
  • Experience working with authorizations/identity systems or similar systems will be very helpful
  • Experience working with high scale systems (e.g. > 100 RPS)
  • Have solid knowledge of how web applications and backend services (e.g. APIs) work
  • Have solid knowledge over deployments & scaling applications
  • Strong understanding of software architecture and patterns required to build a highly scalable SaaS platform
  • Be able to write good quality code supported by automated tests
  • Know how to debug, measure and optimise performance of application
  • Great analysis skills, able to thrive under pressure
  • Be a team player, willing to help and mentor other developers and caring about the product you builds
  • Have good communication skills, are not afraid of suggesting changes and improvements
  • Be a fast learner, able and willing to learn and experiment with new languages and technologies
  • Keen product sense - able to work closely with product managers to craft great products