Insights from your assembly line
Senior Backend Engineer: Web Application$130k – $160k • 0.09% – 0.2%
Please apply on our website at: https://hire.withgoogle.com/public/jobs/instrumentalai/view/P_AAAAAACAAE5DYQt1qVHh38?trackingTag=angelList
We are considering candidates for this role who are able to work out of our offices in either Palo Alto, CA or Chicago, IL. Candidates based in Chicago must have experience working with a distributed team.
Can you imagine writing software with no debugger or logging, and you only get to run it every few weeks? That's what building hardware is like for many product companies, and it results in incredible wastes of time, money, and materials. Instrumental's manufacturing optimization system solves this problem. We start by collecting data that no one else can; then we use machine learning and visualizations to automatically identify defects and help product companies understand their assembly processes. As a result, product and process problems are caught and solved earlier, before they create delays and cost millions.
Our product is delighting customers, and the Instrumental customer list is growing across a diverse set of manufacturing applications.
With ~30 people we are a small but mighty team. We value an inclusive environment and actively work to promote diversity in our team. If you are looking for a place where you can collaborate with friendly people and have outsized impact on entire industries, then keep reading!
About the role:
Instrumental provides a web application to our customers where they can interact with data from their assembly lines. As a backend engineer, you will extend this web app with new ways for customers to learn from and add to that data. You’ll also work on internal tools that help our machine learning and operations teams deliver great customer experiences. You’ll have significant autonomy to help define and implement these high-impact solutions.
Our web app's frontend and backend are separate codebases that communicate via APIs. This role is only expected to focus on the backend, which includes a number of web services written in Scala with Play Framework. Experience with Scala is not required, though we do expect applicants to be familiar with developing web services and to be comfortable working with a JVM language (e.g. Java).
We value best practices. For example, we practice infrastructure-as-code; we have robust tests; we have a straightforward and frequent deploy process; and we have good monitoring with useful alarms.
This isn't a solo job - you will be working together not only with the web app team, but with other engineers, operations, and product staff in a quest to improve the way that things are made.
We’re looking for you if you:
- Have five or more years of professional experience writing and maintaining stable production-quality web services
- Are comfortable working in a JVM language like Java, Scala, Clojure, or Kotlin
- Are comfortable working with SQL databases (we use PostgreSQL), including things like designing schemas for scale and optimizing complex JOINs
- Are familiar enough with web security to spot risks of common vulnerabilities like SQL injection, XSS, CSRF, etc. in code reviews
- Have experience tackling scaling pitfalls for web services, preferably with a JVM language, for example having to do with the JVM itself or with distributed systems
- Can break down broad user requirements into smaller actionable engineering tasks
- Care about getting the details right, but recognize the benefits of feedback-driven iteration
- Enjoy the energy of a small team pushing the needle in a dynamic industry
Prior experience with manufacturing is not expected. Prior experience with functional programming (for example in Scala, Haskell, OCaml, etc.) is a bonus.
How you'll do it / what success looks like in this role:
- Solving problems through clean, concise, and well-tested code. A recent example includes building a system that allows customers to get alerts when we detect elevated defect rates
- Leading an endeavor to improve customer experience, expand our data pipeline, expose new APIs, or scale our infrastructure, taking product specifications through the prototyping phase to production-ready solutions
- Communicating progress in the development cycle from sprint planning to daily stand-ups to retrospectives
- Growing as an engineer by learning from others and by becoming somebody that people go to for technical help
- Gaining real-world knowledge of the manufacturing domain and how our software helps
- Making a tangible impact on the modernization of manufacturing!