CareersHelp Build the Open Cloud

Software Engineer — Node.js

San Francisco, CA, US or Vancouver, BC, Canada
Remote or On-site

Software Engineers within Joyent's Commercial team are responsible for creating and maintaining Triton, the software that drives the Joyent's large-scale distributed systems using Node.js. Triton powers the Joyent Public Cloud, Triton Private Regions, and Triton Software On-Premises. It runs on SmartOS, a derivative of illumos developed by Joyent. Nearly all of Joyent's code is open source and hosted on github.

Node.js Engineers are responsible for creating, improving, and fixing Triton and the Node.js modules upon which it depends. Joyent is dedicated to ensuring that Node.js is developer-friendly through a special dedication to instrumentation and post-mortem debugging with dtrace and mdb_v8. Joyent is well-known as a backer and user of Node.js and is the go-to provider of enterprise support for Node.js. This position may be filled by candidates that wish to work remotely or from one of the Joyent offices in San Francisco, California or Vancouver, British Columbia. If remote, preference will be given to candidates residing in and authorized to work in the United States or Canada.

Unwaveringly dedicated to software quality

Above all, an software engineer is a steward of the code they maintain. Ensuring stability, correctness, and maintainability are the top priorities. This also means the Node.js Engineer will gain a deep understanding of the Triton and the Node.js ecosystem that contributes to quality software. Leveraging both unit and integration testing to ensure reliability means writing testable code from the start and designing tests for code that lacks coverage.

Experience with test-driven development is extremely beneficial, but it is not a requirement. In fact, an overly dogmatic approach to testing could be detrimental. Furthermore, managing tradeoffs between the cost of an "ideal" implementation and quickly addressing customer needs will be a critical responsibility that is carried out in cooperation with the engineering lead and product managers. This does not mean cutting corners but instead ensuring that decisions about proposed short-term workarounds (when they’re necessary) do not preclude future improvements.

Conscientious communicator

Engineers need to be able to come up with creative solutions for complex problems and articulate those ideas in a way that other members of the team may easily understand. Engineers must be able to consider others' ideas, offer suggestions for improvement, and give fair consideration to critiques received from others.

From fielding customer questions about Triton or Node.js to diagnosing performance issues a customer is experiencing, gathering the information needed to make complex decisions requires communication between teams. Engineers are comfortable admitting they lack the data necessary to resolve an issue and can provide suggestions for gathering that data. Building a cloud platform requires empathy for developers, users, and operators. The ideal candidate should have broad experience with multiple perspectives.

The Commercial Engineering team is a highly distributed team. Remote-first communication is essential for the success of the individual and the team.

Passion for open source

We strive to make all of our solutions openly available. This means an engineer must be prepared to engage with the open source community and act as ambassadors for the tools they maintain and the company as a whole. Transparency in discussions both about the impact of decisions and the motivations driving those decisions will foster a shared sense of ownership and bolster collaboration.

Responsibilities

  • Collaborate with other Triton and SmartOS engineers while developing other components throughout the stack. This includes design, code review, and general openness to help and be helped.
  • Triage and analysis of reported issues and feature requests.
  • Provide backline support for Triton and/or Node.js.
  • The right candidate may act as the lead Node.js engineer for the Triton User Portal and the Triton Operator Portal, the web-based interfaces to Triton clouds. The focus would be on the Node.js backends, in collaboration with front-end developers.

Qualifications

  • Proficient in Node.js development.
  • Comfortable writing both unit and integration tests and understanding their tradeoffs.
  • Obsessed with writing clean, understandable code, avoiding unnecessarily clever solutions whenever possible (even if they're fun to implement).
  • Capable of working both within a team and independently.
  • Strong attention to detail and a passion for delivering valuable solutions to customers.
  • A desire to work in the open on open source software.
  • Willing to travel up to 10%.

Nice to Have

  • Experience maintaining web applications using Express, Hapi, or Restify.
  • Experience with C, Rust, Go, and other languages.

About Joyent

Joyent, a wholly-owned subsidiary of Samsung, is the open cloud company. With its Triton Kubernetes services and support, Joyent helps its customers build and operate modern cloud native applications across multiple clouds. Joyent’s Triton Private Regions provide low cost, dedicated cloud infrastructure that gives its customers the ability to own their data and control their cloud costs.

To apply, please submit a brief introduction, a copy of your resume, and a link to your Github or LinkedIn profile to jobs@joyent.com with Software Engineer — Node.js in the subject. Qualified applicants with criminal histories will be considered for the position in a manner consistent with the Fair Chance Ordinance.

View All Open Positions at Joyent

Get the Open Cloud Newsletter

Sign up for our monthly newsletter with information about Joyent Triton, upcoming events, recent publications and insight into the latest technologies surrounding the Open Cloud.