Firmware Development Internship (Job Code: PYGOAM-6)

Posting Date: July 04, 2022

Term: Internship

Location: Houston, TX (On-site)

Start Date: Immediate (Summer/Fall 2022)

Our team is looking for a Firmware Development Intern with experience in bare metal programming of ARM 32-bit microcontrollers. Candidates with proven embedded C/C++ and software development experience are preferred.

About PYGO America, Inc.

PYGO America, Inc. is a fast-paced technology startup that provides sensors and software to bolster the safety, reliability, and efficiency of industrial operations in the mining, energy, renewable, and manufacturing industries. Our Industry 4.0 offerings include plug-and-play hardware and Software-as-a-Service (SaaS) platform that allow industrial customers to securely connect and monitor legacy production equipment and remote plant-floor operations. Our customers range from global players in the mining and energy industries to national utility suppliers. We are located in Houston, Texas, USA.

Key Qualifications (Preferred)
  1. Experience developing embedded solutions with the C/C++ programming language and integrating peripheral interfaces: SPI, I2C, USART, GPIO, and RS-232
  2. Skills utilizing the C programming language must be well developed
  3. Some experience using scripting languages like Python or JavaScript
  4. Proficient in working with one of the IDEs - STM32Cube, Keil®, Eclipse CDT, CLion (CMake)
  5. Familiarity with hardware debugging using JTAG, SWD, OpenOCD, J-Link, or a similar toolset
  6. Understanding of the embedded product development process – prototyping to market launch
  7. Experience in reviewing a PCB designed in CAD software such as Eagle, KiCad, or Altium
  8. Experience in working with any of the wireless protocols - LoRaWAN, GNSS, LTE-M/NBIoT
Job Description

As a Firmware Development Intern, you will spearhead the following activities:

  1. Develop SoC/SoM low-level peripheral drivers through to high-level application code
  2. Write efficient/ultra-low-power embedded C and C++ code for ARM microcontrollers
  3. Utilize frameworks like ARM CMSIS, STM32 HAL/LL, Mbed OS, FreeRTOS and ZepherOS
  4. Undertake writing, debugging, optimizing, testing, porting, and documenting embedded code
  5. Using scripting languages, like Python or JavaScript, to develop various high-level applications
  6. Develop and integrate firmware from the early concept phase through release to manufacturing
  7. Experience in using Git, Jira, and Bitbucket/Confluence for version control and documentation

Currently working towards a BS, MS, or advanced degree in Electronics, Electrical, Communication, Computer Engineering, Software Engineering, or a related field (such as Engineering Physics). Must be able to work at least 20 hours per week.

Work Authorization
U.S. citizens/permanent residents or international students through the CPT program (U.S.) are eligible for this position. Please forward your resume and transcripts to

This role description is not intended, and should not be construed, to be an all-inclusive list of responsibilities, skills, and efforts associated with the incumbent’s job. It is intended to accurately reflectthe principal job elements essential for making a fair decision regarding the pay structure of the job.