Firmware Engineer Location: New York City, NYC. 100% Onsite Job Summary: 1. We are seeking a highly skilled Firmware Engineer to join our Technical Support Team, responsible for providing technical support to our clients and sustaining engineering efforts. 2. As a Firmware Engineer, you will play a critical role in conducting failure analysis, implementing firmware updates, and collaborating with various teams to ensure the success of our client's projects. 3. Your expertise will also be crucial in inspecting prototype hardware, resolving hardware-related issues, developing software tools, and automating manufacturing tests. Roles and responsibilities:
- Design, develop, and debug firmware for a wide range of devices, ensuring high performance and reliability.
- Collaborate closely with the Hardware, Software, and Data Foundations teams to integrate firmware updates and improvements.
- Implement power management, boot loaders, scheduling, and inter-processor communication on Real-Time Operating Systems (RTOS) or bare-metal environments.
- Inspect prototype hardware and determine the cause of failures during early phases of development using hands-on failure analysis and debugging techniques.
- Review data sheets of the components of new hardware systems to develop scripts and analyze failures for prototypes to resolve open-ended problems that sit at the boundary between hardware, silicon, and software.
- Review customer reports of failing hardware on newly released products and inspect those units to determine the root cause of reported failures using debugging tools.
- Write low-level software and scripting language code to develop tools to improve failure analysis, system validation, and support hardware development cycle.
- Collaborate closely with cross-functional teams, including silicon architects, hardware designers, OS team, and algorithm development teams.
- Develop automated manufacturing tests to ensure the quality and reliability of our products.
- Effectively communicate findings, progress, and challenges to stakeholders and manufacturers.
- Investigate and analyze parts and devices received from the field and manufacturing partners to establish root causes of issues.
- Prepare and present detailed reports with findings for each lot of parts or assemblies requested.
- Track failure trends and provide insights into continuous improvement.
Qualifications: Bachelor's or master's degree in computer science or electrical Engineering, or equivalent experience.
- Minimum of 4 years of experience in embedded software development.
- Proficiency in C/C++ for firmware design, programming, debugging, and testing.
- Strong knowledge of hardware, clock-level issues, interrupts, and polling.
- Experience in scripting languages, with expertise in Python being preferred.
- Hands-on experience with peripherals such as UART, SPI, CSI-2, I2C, GPIO, USB is desirable.
- Familiarity with wireless and wired communication protocols (e.g., TCP/IP, Ethernet, Bluetooth, 802.11) is a plus.
- Ability to work collaboratively across multiple teams and foster seamless cooperation.
- Strong troubleshooting skills and a proactive problem-solving attitude.L47
SKILLS REQUIRED: OS (Windows, Linux), RTOS, UBOOT, (C, C++ Preferred), FPGA, UART, SPI, CSI-2, i2c, GPIO, USB, PCIE, CI/CD, Jenkins, Python, PyCharm Diverse Lynx LLC is an Equal Employment Opportunity employer. All qualified applicants will receive due consideration for employment without any discrimination. All applicants will be evaluated solely on the basis of their ability, competence and their proven capability to perform the functions outlined in the corresponding role. We promote and support a diverse workforce across all levels in the company.