Build Systems Engineer

San Francisco, CA /
Engineering – Engineering Infrastructure /
Full-Time
/ Hybrid
Headquartered in San Francisco, California, with offices in Stuttgart, Germany, Shaper was founded in 2012 with a mission of making precision cutting easy and accessible to craftspeople everywhere. In pursuit of that goal, Shaper developed Origin, the world's first handheld CNC router. Today, Shaper supports thousands of woodworkers and craftspeople around the globe with an expanding range of hardware and software tools that are designed to intuitively meet users' creative needs.

We’re looking for a Build Systems Engineer to join our software engineering team.

About this role:
In this role you will contribute to the design, development, and maintenance of the systems and software that enable Shaper to build production software at scale. You will configure, extend, and contribute to the maintenance of our custom Linux distribution, as well as the Jenkins build system that handles automatic builds for multiple targets. You will also work on continuous integration and testing systems, using both on-site and cloud-based systems for embedded and web software development. You will build tools that enable software developers to be more efficient by implementing connectivity between various pieces of our build infrastructure. You will be down in the weeds of optimizing compilers one day, and focused on cloud infrastructure the next day. There are opportunities for Linux development work as well. This role will report to the SVP of Engineering, but you will work closely with manufacturing engineers, embedded systems engineers/architects, backend web engineers, and program managers.

Where You'll Work:
This role is being offered as in-person (flexible). You’ll work alongside your peers in our new workspace in San Francisco's SoMa district. You’ll have access to our 5000 square foot workshop which is fully kitted out with all the woodworking machinery you could ever wish for (including Origin). There is an expectation that you will spend time in the office (as some of the build infrastructure and hardware-in-the-loop integration testing systems will require physical maintenance and development by you). The exact in-office/at-home schedule is flexible. You’ll work with your manager on identifying when you are required on-site. 

The Job:

    • Build and maintain on-site build infrastructure using Jenkins and custom scripts
    • Maintain and deploy cloud-based CI/CD solutions for both embedded and web software
    • Implement hardware-in-the-loop CI/CD systems for use with our embedded build systems
    • Contribute to the implementation and maintenance of our Yocto-based Linux distribution
    • Work on Linux-based software in the kernel and userspace
    • Work closely with other engineers to ensure their needs are being met to enable efficient software development

You:

    • Have a Bachelor or Masters degree in an applicable engineering or technical field (Computer Science, Information Science, Computer Engineering, Electrical Engineering, etc.)
    • Have 1+ years of industry experience working on build systems OR multiple relevant internships with clear examples of work in this subject area and demonstrable expertise in Linux and build systems
    • Are a hands-on engineer with a passion for tackling complex problems
    • Are a solution-oriented go-getter with a strong bias toward action
    • Live and breathe Linux and are comfortable configuring and compiling a kernel from scratch
    • Have done work on embedded systems such as Raspberry Pi
    • Have experience setting up automated on-site and cloud CI/CD systems such as Jenkins, CircleCI, and GitHub Actions
    • Understand security best practices when connecting cloud-based systems (Auth tokens, OAuth, key exchanges, secret storage, etc)
    • Have at least intermediate-level Python experience
    • Are skilled at using Git version control, and are comfortable with branching, tagging, and tracking upstream repos.
    • Have experience writing C, C++, and Bash
    • Are experienced in multiple programming and scripting languages and do not shy away from learning new ones on the job
    • Have excellent written and verbal communication skills, and love writing good documentation as much as you love building software

Bonus Points if You:

    • Have built Linux distros using Yocto and are comfortable reading and writing Bitbake recipes
    • Are skilled in modern Python development
    • Have worked on embedded hardware products either professionally or as a hobbyist
    • Have experience with Amazon Web Services
    • Have experience with kubernetes
    • Have experience with Heroku
    • Know how to manage a Linux-based server (raw and/or dockerized)
    • Have experience with unit/integration testing, hardware-in-the-loop testing, and/or Squish for Qt 
    • Are a woodworker or a maker

What we Offer:

    • Take what you need vacation and sick leave policy
    • Generous medical, dental, and vision benefits
    • Generous parental leave
    • 401k plan with matching
    • Commuter benefits
    • Employee discounts Shaper’s products and from our partner brands
    • Access to a full woodshop at our San Francisco HQ, with support from experienced staff to help realize your projects
$118,000 - $157,000 a year
Range is base pay only and does not include potential annual performance bonus nor benefit value.
Total comp may be higher or lower depending on experience level and location.

Important Note:
Although we do our best to list everything we are looking for in a candidate, we are very likely missing skills and/or attributes that could make you a great fit for the role. Research has shown that women and other marginalized groups are less likely to apply if they don’t clearly meet every requirement. This means we both might miss out on a great opportunity—it never hurts to take a chance and apply.