<< back

Senior Software Engineer (Interop Team)

Instructure, Inc|Salt Lake City, UT
3 months ago
We’re hiring engineers, who are passionate about technology and education, to help build and enhance the Canvas interoperability layer like REST APIs, LTI Advantage (http://www.imsglobal.org/lti-advantage-overview), GraphQL, event publication, etc. 
Like our customers, we value a learning culture and expect our engineers to work closely with product and support to build the best possible solutions, not just write code to a spec. We put our money where our mouth is. Engineers at Instructure enjoy an annual company-wide tech conference, biweekly tech talks, and quarterly Hackweeks, all designed to encourage as much exploration and learning as possible.
Much of our work is open source, including our primary product (Canvas).Check us out on Github: www.github.com/instructure.
Who we are:

  • We are full stack engineers with experience building web scale services in a loosely coupled but highly integrated system.
  • We are a mixed stack and polyglot team with a deep commitment to quality and to using the right tech for each problem we solve.
  • We use Node.js, Go, PostgreSQL, Linux, and our platform runs on AWS.

What you will do:

  • Build, deploy, and maintain services that promote interoperability with Canvas LMS.
  • Work in Canvas to implement the latest IMS Global interoperability standards and other APIs to allow third-party integration.
  • Write testable, performant code that can scale to tens of millions of requests per day.
  • Mentor and teach other engineers, encouraging best practices, and fostering code reuse.
  • Work with a mature technology stack that includes Node, Go, Docker, Terraform, and React.

What we look for:

  • Experience (and interest) in different languages and frameworks. Skilled full stack developer, or an expert back-end developer open to growing towards full stack.
  • Ability to solve complex problems requiring in-depth analysis.
  • 10+ years of professional software engineering experience.
  • Knowledge of Agile best practices.
  • Capable Communicator.
  • Passionate about learning new stuff.
  • Knowledge of, and adherence to coding best practices.
  • Commitment to code quality with experience testing up and down the pyramid.
  • Ability and desire to work in an open and team-oriented environment.
  • BS in Computer Science or related degree preferred.