Job Title: Embedded Software Engineer, Machine Learning
">
This is a challenging opportunity to work on developing and implementing cutting-edge algorithms for monitoring and ensuring the resilience of the electrical grid.
">
The ideal candidate will be an experienced embedded software engineer with excellent communication skills and a strong background in deploying and tuning machine learning algorithms in embedded platforms.
">
Key responsibilities include designing and developing software for grid monitoring systems which include neural net accelerators, working closely with AI engineers to adapt and tune ML models for the target edge computing platform, and combining ML inferences and other signals within the embedded systems to identify and report faults and/or perform appropriate response actions.
">
The successful candidate will have a solid understanding of computer architecture, experience in designing and developing embedded applications using RTOS such as Zephyr, ThreadX, FreeRTOS, and proficiency in C/C++ programming.
">
Strong problem-solving and troubleshooting skills, as well as excellent written and verbal communication skills, are also essential for this role.
">
Additionally, the candidate will need to participate in code reviews, software standard and guidelines improvement, develop and execute software unit and integration test plans, analyze test results to ensure correct functionality and implement corrective action, and interact daily with geographically distributed team members.
">
Travel may be required, but this will be limited to 10% of the time.
">
At our company, we foster a culture where everyone has an opportunity to succeed regardless of their race, color, religion, age, ancestry, national origin, social or ethnic origin, sex, sexual orientation, gender, gender identity, gender expression, marital status, pregnancy, parental status, disability, medical condition, genetic information, military or veteran status, union membership, and political affiliation.
">
Job requirements include a degree in electronics, electrical, or computer science, and at least 5 years' experience in designing and developing embedded software in C/C++ language, as well as background in machine learning algorithms (CNN, DNN) and experience deploying them on embedded systems.
">
Familiarity with model optimization techniques (quantization, pruning, compilation) and deployment pipelines for embedded AI, familiarity with neural network accelerators and strategies for efficient neural network execution on such hardware, and strong background in embedded software and computer architecture are also necessary.
">
Experience with Git, Jira, and Confluence, strong written and verbal communication skills, and travel required: yes, 10% of the time.