Job Description
Salary: 82k-96k Base Cash Compensation + Benefits, Bonus, & 401K Matching
About Us
Boulder Engineering Studio is a premier product development consultancy in Boulder, CO. Our team consists of passionate and experienced mechanical, electrical, software engineers and technicians. We build hardware, firmware and software with an iterative test-driven process in a hands-on collaborative environment. With a wide-ranging portfolio of projects, from scientific instruments and industrial machinery to medical wearables, BES focuses on providing pragmatic solutions to our customers.
We are hiring for an embedded software engineer immediately to support our existing programs while continuing to increase our software development capabilities long term. This a high-growth, mid-level role that will be involved throughout the project lifecycle.
About You
We value creativity, passion, and attention to detail. Our work culture fosters these traits in a highly collaborative professional environment. You have at least 2 years of career experience and want to continue to advance and take on new responsibilities. You enjoy working in a fast paced environment, jumping between several projects on a daily basis while remaining organized and efficient. Youre able to self-prioritize milestones while keeping a focus on ensuring project requirements are met and specifications are well tested and documented. When it's not feasible to accomplish your tasks with the constraints youre given, youre comfortable speaking up and working with the team to regroup and adjust.
Qualified candidates for this role should have a background in Python and JS development. Understanding of how embedded devices and frontends communicate with backends is crucial for this role. A strong knowledge of electronics hardware design is highly relevant but not strictly necessary. Familiarity with Rust and C++ is helpful for understanding and potentially supporting firmware development that our team is regularly working on.
About the Responsibilities
Developing software (full stack) for automated test fixtures used in device production
Implementing protocols including but not limited to JSON-RPC, Websockets, REST, Modbus etc
Developing interfaces to remote backends and databases
Writing test procedures and implementing them to create robust, stable systems
Helping define tasks and assist in estimating effort and schedules
Testing and bring-up of automated test fixtures
Integrating with cloud-based services such as AWS IoT core, Azure IoT, DynamoDB
Expectation to be on-site at our Boulder office
About the Benefits
401K
Health, dental, vision
Generous PTO
Flexible hours
Casual office
EcoPass RTD Bus Pass
On-site shower; next door to climbing gyms and tennis courts
Unlimited snacks, teas, and some of the best coffee in town
Required Qualifications
Required Skills/Competencies:
Proficient with python, C and JS programming languages
Proficient with Linux development environments
Proficient with version control tools such as Git
Proficient with test driven development and CI/CD
Excellent written and verbal communication skills
Excellent organizational skills and attention to detail
Preferred Skills/Competencies:
Experience working with firmware
Experience working with Zephyr
Experience working with Docker
Experience working with Yocto
Experience working with embedded Linux
Experience with JS frontend development using frameworks such as Vue and React
Physical Requirements:
Prolonged periods sitting or standing at a desk and working on a computer.
Education and Experience:
Bachelors degree in Software Engineering or equivalent required; Masters degree preferred.
Two years of related experience preferred.
About our Values
BES strives to leave the world better than we found it. We dont design weapons, single use plastics, or intentionally harmful or demeaning products. Our goal is to create value in our relationships and through our work. We believe in finding the right tool for the job- including getting support from outside subject matter experts, vendors, and cutting edge research when called for. These values help ensure that the work we do take on is compelling and a good fit for our team.
Note to Candidates:
Due to the volume of applications we receive, we will only review complete applications which include a resume, a cover letter (even a short one!), and some sort of portfolio, link, explanation, or examples of past work. Our preference is a Gitlab or similar repository of code (does not need to be of a complete project- just a snipitt is acceptable) but other forms of work will be accepted and reviewed. This may include links to past products youve worked on (be ready to talk about them in an interview!), open source projects youve been involved in, or anything else you think shows off what youre capable of. First preference will be given to local candidates, but non-local candidates will also be considered and are encouraged to apply. Relocation should not be expected but may be negotiated for the right, exceptional candidate.
We take your application seriously and take the time to review it, we ask that you do too.
Full-time