Software Engineer 2

Rivian Rivian · Auto · Vancouver, BC +1 · Information Technology

Software Engineer 2 at Rivian's Commercial Technology Team, responsible for the end-to-end implementation of digital experiences outside the vehicle, including customer and internal applications across web, mobile, and in-store. The role involves building large-scale client-side applications using modern micro-frontends and micro-services, contributing to reusable frameworks and tooling, and partnering with other engineers, designers, and product managers.

What you'd actually do

  1. Create client-side applications along the vehicle customer journey, from the moment the customer takes the keys, to their experience when charging, to when their vehicle needs service.
  2. Collaborate with UX/UI designers and product designers to build user-friendly, immersive, reactive applications.
  3. Collaborate with data systems engineers to help define the endpoint integration needs of your team.
  4. Come together with your peers to share ideas, ask why with an open and curious mind, learn from each other’s diverse perspectives, and deliver great work as a team.
  5. Develop, unit test, and document performant code, ensuring efficient browser memory usage and fast load time.

Skills

Required

  • 2+ years of software engineering industry experience
  • building large scale enterprise-grade systems
  • building and maintaining distributed systems at scale
  • full-stack JavaScript/TypeScript development (NodeJS/ExpressJS)
  • JavaScript/ES6
  • Webpack
  • React
  • Jest
  • AWS Lambdas or other serverless compute services
  • HTML5
  • SASS/LESS
  • Rest APIs
  • JSON
  • HTTP
  • building REST and/or GraphQL APIs
  • defining and implementing integration and end-to-end testing strategies and frameworks
  • JEST
  • Mocha
  • Cypress.io
  • Web Accessibility
  • caching
  • security
  • privacy considerations
  • CI/CD pipelines
  • cross-browser and cross-platform debugging
  • Clear and compelling communication
  • Agile and SCRUM

Nice to have

  • micro-frontends
  • micro-services

What the JD emphasized

  • building large scale enterprise-grade systems
  • building and maintaining distributed systems at scale that can handle millions of transactions/second