Firmware Developer - EC & UEFI Developer on Qualcomm ARM Platforms
1 year ago
Houston
Job Description Job Title: Firmware Developer – EC & UEFI Developer on Qualcomm ARM Platforms (Snapdragon) Location: Houston, Texas Duration: 6-12 Months Role Overview: We are seeking an experienced software developer to work on Windows on ARM (WOA) / Qualcomm’s Windows on Snapdragon (WOS) systems. The candidate will develop, test, and optimize software for ARM systems, working closely with hardware engineers to ensure the smooth operation of devices and systems. This position requires a deep understanding of UEFI, BIOS, EDK-2, WMI infrastructure, Embedded Controller architectures, programming languages like C/C++/Python, and hands-on experience with real-time operating systems (RTOS). A deep knowledge of ARM architecture and working in an Agile & Scrum environment is essential. Key Responsibilities: · Design and develop software for Qualcomm ARM Snapdragon SOC hardware platforms. · Write efficient, reliable, and optimized code in C/C++ and other programming languages for ARM systems to ensure system functionality and reliability. · Collaborate with hardware architects to ensure seamless integration of software and hardware components. · Develop software that meets performance, reliability, and scalability standards. · Optimize software performance, including memory usage, processing speed, and energy efficiency. · Participate in system architecture design and contribute to technical decision-making. · Develop and maintain technical documentation for software development and testing. · Document software design, coding practices, and maintenance procedures. · Ensure the software meets industry standards, safety regulations, and project specifications. · Analyze project requirements and translate them into ARM software design specifications. · Write efficient, reusable modules that interfaces with hardware components such as sensors, actuators, and communication modules. · Test and debug software using simulation tools, hardware emulators, and on-target testing methods in simulated environments before deployment to real-world devices. · Collaborate with cross-functional teams to define software requirements and validate product functionality. · Provide technical support and troubleshooting for software-related issues. · Work in hybrid development environments (predictive and adaptive). Required Skills and Qualifications: · Experience with developing firmware applications on ARM processors. · Expertise in ARM embedded architecture. · Expertise in C programming. · Experience working with UEFI Architecture and the EDK-2 platform. · Design and implement UEFI/BIOS modules in PEIM and DXE stages. · Engage in bare-metal development involving communication protocols such as UART, SPI, I2C, ADC, and DAC. · Experienced in debugging embedded firmware applications using JTAG, SWD debuggers. · Familiarity with Python, batch files, command shells, and other relevant scripting languages. · Familiarity with version control systems GitHub and CICD development pipelines. · Familiarity with bare metal systems, board bring-up, and bootloader architecture. · Familiarity with using logic analyzers, I2C analyzers, oscilloscopes, and other relevant tools. · Understanding basic analog and digital electronic concepts and ability to understand HW schematics. · Ability to understand technical specifications, data sheets, and develop firmware solutions based on requirements. · Solid experience with RTOS (Real-Time Operating Systems), embedded Linux, and other embedded platforms like ThreadX and Zephyr OS. · Understanding low-level hardware architecture, software optimization, memory management, and real-time processing. Preferred Skills: · Experience with ARM architecture, PIC, EDK-2 and other microcontroller architectures. · Experience with embedded security and encryption protocols. · Knowledge of communication protocols such as UART, SPI, I2C, CAN, or Ethernet. · Knowledge of Python or other scripting languages for testing automation. · Familiarity with Agile development methodologies and tools like ADO. · Understanding of power management techniques for low-power embedded systems. Education and Experience: · Master’s or bachelor’s degree in computer science, Computer Engineering, Electrical Engineering, Mathematics or equivalent. · Minimum 5 years of professional experience. · Experience in Agile/Scrum environment. Company DescriptionQuest Global delivers world-class end-to-end engineering solutions by leveraging our deep industry knowledge and digital expertise. By bringing together technologies and industries, alongside the contributions of diverse individuals and their areas of expertise, we are able to solve problems better, faster. This multi-dimensional approach enables us to solve the most critical and large-scale challenges across the aerospace & defense, automotive, energy, hi-tech, healthcare, medical devices, rail and semiconductor industries. We are looking for humble geniuses, who believe that engineering has the potential to make the impossible possible; innovators, who are not only inspired by technology and innovation, but also perpetually driven to design, develop, and test as a trusted partner for Fortune 500 customers. As a team of remarkably diverse engineers, we recognize that what we are really engineering is a brighter future for us all. If you want to contribute to meaningful work and be part of an organization that truly believes when you win, we all win, and when you fail, we all learn, then we’re eager to hear from you.Quest Global delivers world-class end-to-end engineering solutions by leveraging our deep industry knowledge and digital expertise. By bringing together technologies and industries, alongside the contributions of diverse individuals and their areas of expertise, we are able to solve problems better, faster. This multi-dimensional approach enables us to solve the most critical and large-scale challenges across the aerospace & defense, automotive, energy, hi-tech, healthcare, medical devices, rail and semiconductor industries.\r\n\r\n\r\nWe are looking for humble geniuses, who believe that engineering has the potential to make the impossible possible; innovators, who are not only inspired by technology and innovation, but also perpetually driven to design, develop, and test as a trusted partner for Fortune 500 customers. As a team of remarkably diverse engineers, we recognize that what we are really engineering is a brighter future for us all. If you want to contribute to meaningful work and be part of an organization that truly believes when you win, we all win, and when you fail, we all learn, then we’re eager to hear from you.