Embedded Systems Engineer

Petra Systems, Inc. - Boulder, CO (30+ days ago)


We are looking for an Embedded Systems Engineer to design and develop embedded software and firmware for our Smart City solution. This position will be a key contributor in helping to bring to market high-quality and innovative embedded systems that will be an integral part of the Petra Systems Smart City Solution.

Any candidate for this position must be knowledgeable in all aspects of embedded systems and have a proven track record of bringing products all the way from conception to manufacturing. This role will entail working with a wide-range of technologies including firmware for micro-controller based designs, Linux kernel and device driver development, wireless networking, and host applications in multiple programming languages.


The candidate must have the following technical skills

  • C/C++ programming in an embedded environment
  • Experience designing and developing firmware for real-time and microcontroller based systems
  • Familiarity with data communications protocols
  • Working knowledge of the Linux OS and kernel
  • Experience implementing Linux device drivers, configuration, and build
  • In-depth knowledge of Python and strong programming skills in Python
  • Solid foundation in computer science with strong competencies in data structures, algorithms, multi-threading and synchronization
  • Ability to perform lab bring-up and testing of new hardware designs
  • In-depth knowledge of embedded programming tools (compilers, linkers, in-circuit debuggers)
  • Knowledge of I/O communication protocols (Ethernet, SPI, USB, etc.)
  • Strong understanding of network protocols (TCP/IP, HTTP, RIP, BGP, etc.)
The ideal candidate would have some experience with any of the following

  • Understanding of digital system design (circuit design, layout, firmware)
  • Proficient with simulation tools, schematic capture and PCB layout (Altium Designer or equivalent)
  • Strong troubleshooting skills using test equipment (oscilloscope, spectrum analyzers, etc.)
  • Experience with Wireless RF networks
  • Digital design experience with microcontroller based systems (ARM, Cortex M, Atheros, PIC, etc.)
  • Additional programming languages such as Java
This position requires the following experience

  • Bachelors or Master’s degree in Computer Science or related field
  • A minimum of five years of embedded software development experience

Petra Systems is a leader in the IoT industry providing innovative Smart City solutions to communities around the world. We combine green and renewable energy technology with wireless mesh networks and a cloud software platform to reinvent the way cities provide services to their communities.

Petra Systems is a well-funded high tech start-up focused on creating the cities of tomorrow. We are the world leader in distributed Solar Power Generation and provide complete end-to-end solutions including hardware, software and services to municipalities around the globe.

We are looking for highly motivated people who have a passion for creating advanced technologies that address the challenges of municipalities and businesses to become more efficient, secure and resilient.