Firmware Developer

almost 3 years ago
Full time role
Denver, CO, US... more
Denver, CO, US... more

Company

Project Canary is a mission-driven B-Corp that helps reduce emissions in the energy, waste, and agriculture industries through independent assessment ...

View Company Profile

Job Description

Project Canary is a mission-driven B-Corp that helps reduce emissions in the energy, waste, and agriculture industries through independent assessment of carbon and environmental footprints. With offices in Denver and Austin, Project Canary achieves this goal by ingesting data from various sources, including its own proprietary environmental sensors, to calculate carbon emissions from different facilities in real-time. The resulting independent, trusted data can inform the procurement of offsets in real-time using microtransactions, formulate the data-driven ESG strategy that investors now demand, improve operations by identifying problem areas in minutes, and bolster customer engagement through radical supply chain transparency.

Initially, Project Canary is focused on the energy industry. With thousands of energy assets analyzed and hundreds of environmental and air quality sensors currently deployed, Project Canary is positioned better than anyone to provide empirical ESG data.

Project Canary’s success is attributed to the motivation, skill, and teamwork of its employees. The team understands the importance of maintaining a culture where relationships are valued, feedback is crucial, and trust in each other and our products/services is paramount. If you enjoy a fast-paced environment, mission-driven work, and being a valued member of a motivated diverse team, we want to hear from you.

Responsibilities:

Project Canary is looking for a creative and reliable firmware developer to interface with our hardware architecture and cloud architecture teams. The successful candidate will be able to demonstrate a breadth of knowledge that encompasses firmware development, and extends into embedded hardware development and computer networking. They will focus on the development of rock-solid firmware for a variety of embedded environmental monitoring applications in field and lab conditions.

  • Develop, support, maintain, and document firmware solutions.
  • Work closely with hardware engineers on designs and high-level component selection. Read and interpret electrical schematics and component datasheets.
  • Develop scripts and test programs for PCB bring-up and laboratory evaluation of new components.
  • Occasionally assist in the development of bare-metal solutions.
  • Effectively communicate and collaborate with a multidisciplinary team and stay up to date with latest software development practices.
  • Work as part of a team on R&D projects. Actively participate in team meetings and offer recommendations/ideas on design projects.
  • May be required to work at elevated heights and will be occasionally exposed to work in outdoor weather conditions.
  • Ensure the company policies, standards, and procedures are adhered to.
  • Must be able to exert moderate physical effort, including lifting materials weighing up to 25 lbs.

Qualifications:

  • Bachelor’s degree or higher in Electrical Engineering, Computer Engineering, or Computer Science (or equivalent professional experience) with 3 to 5 years of experience in embedded firmware development.
  • Practical development experience utilizing common hardware features and peripheral protocols such as ISR, I2C, SPI, SD/MMC/SDIO, UART, USB, CAN, DMA, and Modbus.
  • Experience working with common networking protocols in embedded applications, including TCP/IP, HTTP, MQTT.
  • Ability to write unit and functional tests to cover application code, including scripting basic test environments as needed (e.g. in Bash or Python).
  • Experience with firmware debugging including JTAG.
  • Familiarity with Git and source control/review tools, and knowledge of code documentation best practices.
  • Fundamental understanding of electronic circuits, and familiarity with basic hardware tasks (e.g. soldering components, adding jumpers).
  • Practical experience working with common debugging equipment such as logic analyzers, oscilloscopes, multimeters.
  • Practical experience with PCB bring-up.
  • Experience implementing peripheral device drivers.
  • Experience developing embedded applications with cellular modem integration for data transfer using common transfer protocols.
  • Experience with performance optimization (memory, speed, power) in resource-constrained microcontrollers.

Project Canary provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws.

This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layoff, recall, transfer, leaves of absence, compensation and training.

Similar jobs





Project Canary is a mission-driven B-Corp that helps reduce emissions in the energy, waste, and agriculture industries through independent assessment ...

View Company Profile

Similar jobs