Senior Software Engineer- Back-end/API
Summary
Backend engineer at a Series-C industrial 3D printing startup in Watertown, MA, building and scaling the APIs, services, and IoT-connected infrastructure that power its cloud 3D printing platform. Core stack is Node/JavaScript with a strong emphasis on SQL optimization, distributed systems, and on-call ownership.
Our software technologies and tools empower our customers to configure print-ready parts, visualize part geometry in 3D, and push to IoT-connected printers for printing. As part of the Software Engineering team, you would be helping to lead the scaling and growth of our 3D printing platform involving end-customer applications and IoT services.
As a Backend Software Engineer you will be responsible for building out and scaling the systems that power our 3D printing platform. Our team is still small (6 engineers) so you will have tons of upfront project ownership and responsibility. We move at a breakneck pace but refuse to compromise on quality. We believe in “doing it right the first time” and investing in code quality, testing, tooling and infrastructure. Your ideas will directly influence the company's future. You will do interdisciplinary work on physical systems and learn from best-of-the-best engineers across MatSci, Mech-E, EE, and Software.
In this role, you will:
-
- Design, build, and maintain APIs, services, and systems across our engineering teams
- Debug production issues across services and multiple levels of the stack
- Work with engineers across the company to build new features at large-scale
- Improve engineering standards, tooling, and processes
- Plan for the growth of our infrastructure
- Build a great customer experience for people using your infrastructure
- Build infrastructure that’s specific to our APIs, e.g. serving webhooks with low latency
- Serve as on-call for our API, e.g. responding to API abuse impacting our databases
What We Look For
-
- 3-5 years experience building and shipping high quality code
- Strong CS fundamentals
- Bachelors degree in Computer Science, or equivalent
- Experience building APIs, Services and Scaling Systems
- Proficiency in writing Node applications and scaling them to support thousands of users and millions of events
- Knowledge of database internal implementation, particularly SQL planning and optimization
- Knowledge of performance optimization, parallelization, and distributed systems
- Experience with authentication and authorization schemes, building your own solutions and/or leveraging SSO.
- Significant Experience with Schema Design and Query Optimization
- Excellent command of Javascript or Coffeescript
- Experience with Go, Rust or Scala ok (we're not currently using these but bonus points for experience)
