> Markdown version of [/jobs/ext/1721141-firmware-engineer](https://www.wearedevelopers.com/jobs/ext/1721141-firmware-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Firmware Engineer - **Company:** Mesa Labs, Inc. - **Location:** Tucson, AZ, United States - **Experience:** Experienced - **Salary:** $80,000.0 - $100,000.0 - **Contract:** Permanent contract - **Skills:** C (Programming Language), Altium Designer, Systems Engineering, Bluetooth, C++ (Programming Language), Communications Protocols, Computer Programming, Computer Engineering, Software Debugging, Digital Electronics, Digital Technology, Embedded Software, Ethernet, Firmware, Hardware Design, RS-232, Systems Integration, TCP/IP, Universal Asynchronous Receiver/Transmitter, Serial Peripheral Interface, PIC Microcontroller, Gitlab, Information Technology, Software Version Control, Programming Languages - **Published:** July 7, 2026 - **Apply:** https://recruiting2.ultipro.com/MES1007MELA/JobBoard/3c5aaf31-804f-4321-b6ae-700d06097849/OpportunityDetail?opportunityId=36804fba-5b5e-4183-a6e5-8c27954c71d6 ## About the Role * Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field. * 2 years of firmware, software, or embedded systems engineering experience. Knowledge and Skillsets Required * Proficiency in programming languages such as C, C++, assembly, and machine language. * Understanding of embedded systems, operating systems, and microcontroller architectures. * Exposure to hardware design concepts, both analog and digital. * Strong problem-solving and analytical abilities. * Effective communication and teamwork skills. Additional Desired Skills/Competencies: The ideal Firmware Engineer candidate will have demonstrated proficiency in the following areas: * Communication protocols such as I2C, SPI, and UART and wireless protocols such as Bluetooth and TCP/IP * Interfaces such as serial RS-232 and RS-485, USB, Ethernet * ESP32 and PIC microcontrollers * Version control systems, especially GitLab * Basic PCB design skills and familiarity with associated design tools, especially Altium or KinCAD ## Description The Firmware Engineer develops professional expertise in designing, programming, debugging, and modifying firmware for embedded systems. This role supports hardware and software integration, working with analog and digital systems to ensure reliable and efficient operation. With a foundation in programming languages such as C, C++, assembly, and machine language, the Firmware Engineer contributes to troubleshooting, testing, and refining embedded code under guidance, while growing technical independence., * Firmware Development & Programming: + Design, code, debug, and maintain firmware for embedded systems. + Implement solutions in machine language, assembly, and high-level languages (C, C++). * Testing & Troubleshooting: + Troubleshoot, debug, and optimize embedded code for functionality, performance, and reliability. + Assist in resolving software and hardware integration issues. * Hardware & Software Integration: + Work with analog and digital hardware designs, ensuring firmware compatibility. + Support operating system-level software interaction with embedded hardware. * Collaboration: + Partner with hardware, electrical, and systems engineers on design reviews and integration efforts. + Document and communicate issues, fixes, and improvements to cross-functional teams. * Continuous Learning & Improvement: + Apply company policies, procedures, and engineering standards while gaining exposure to advanced concepts. + Contribute to process improvements and the creation of best practices for firmware development., * Sitting: Often for extended periods at desks or meetings. * Standing or walking: Occasionally for meetings or office tasks. * Using computers: Typing and using office equipment. * Lifting: Light, less than 10 pounds. * Repetitive motions: Frequent use of keyboard and mouse. Environmental Conditions: * Workspace: Climate control (air conditioning or heating) to ensure comfort. * Lighting: Adjustable lighting to reduce eye strain. * Noise Levels: The noise level is moderate, with occasional interruptions from phone calls and conversations. Use non-canceling headphones if necessary. * Ergonomics: Workstations with desk and adjustable chairs to support good postures. * Ventilation: Good ventilation to ensure a comfortable working environment, though this can vary depending on the building. ## Related Videos - [An Applied Introduction to eBPF with Go](https://www.wearedevelopers.com/videos/1075-an-applied-introduction-to-ebpf-with-go) - [WeAreDevelopers LIVE - Modern DevOps for IoT Devices and More](https://www.wearedevelopers.com/videos/1805-wearedevelopers-live-modern-devops-for-iot-devices-and-more) - [More efficient software for more efficient microchips](https://www.wearedevelopers.com/videos/1164-more-efficient-software-for-more-efficient-microchips) - [Turning Container security up to 11 with Capabilities](https://www.wearedevelopers.com/videos/718-turning-container-security-up-to-11-with-capabilities) - [Prototyping with Hardware and the Web](https://www.wearedevelopers.com/videos/651-prototyping-with-hardware-and-the-web) - [Enabling automated 1-click customer deployments with built-in quality and security](https://www.wearedevelopers.com/videos/83-enabling-automated-1-click-customer-deployments-with-built-in-quality-and-security) ## Related Articles - [Software Engineer Career: Things You Should Know](https://www.wearedevelopers.com/magazine/143-software-engineer-career-things-you-should-know) - [What is Software Engineering?](https://www.wearedevelopers.com/magazine/289-what-is-software-engineering) - [Is Software Engineering Hard?](https://www.wearedevelopers.com/magazine/448-is-software-engineering-hard) - [Top Characteristics of a Software Engineer](https://www.wearedevelopers.com/magazine/166-top-characteristics-of-a-software-engineer) - [The Best Software Developer Blogs to Read](https://www.wearedevelopers.com/magazine/156-the-best-software-developer-blogs-to-read) - [7 Important Tips That Every Software Developer Should Know](https://www.wearedevelopers.com/magazine/101-7-important-tips-that-every-software-developer-should-know)