R&D Senior Embedded Software Engineer
NOCO · Chandler, AZ
قدّم وتابع مع أبلاي إيدجWho We AreEstablished in 1914, NOCO designs and creates premium automotive and consumer electronic products. Through these world-class offerings, NOCO has effectively set the new standard in design, performance, and safety of its products in the consumer, commercial, and industrial markets.What You Will Be Doing with UsYou will apply senior software engineering expertise as part of the NOCO R&D group supporting the NOCO Creative group in Chandler, Arizona, providing software development and verification support for NOCO’s market-leading AC- and battery-powered consumer electronics such as air pumps, vehicle jump starters (boosts), smart lithium batteries, smart chargers, and other products. In this role you will:Architect and design code for a variety of ARM and other microcontroller-based NOCO productsDesign and implement control algorithms for electronic charging systemsSupport existing products with ongoing software feature enhancementsTroubleshoot and determine root cause and resolution of production software issuesDevise best-practice software coding & verification methodology, including use of AI LLM workflows and agents, and work with test engineers to implement automated testingDevise algorithms to maximize performance on both virtual and real hardwareWork with prototype hardware and identify ways to leverage and enhance new hardware capabilitiesWork closely with hardware and test engineers, applying hands-on knowledge of electrical hardware design and lab test equipment to inform software designCode software for user interfaces such as LEDs and small format displays, as well as serial communications buses such as SPI, I2C, CAN Bus, and othersCode software for fast charging/discharging of lithium batteries using industry standard interfaces such as USB-A, USB-C, and others. Knowledge of lithium battery charging methodology and battery management system (BMS) operation is required.What You Will Need10+ years of relevant hands-on embedded software development and a Bachelor of Science degree (or higher) in Computer Science, Computer Engineering, Electrical Engineering, or similar fieldsMust be a self-directed problem solver who can work in both individual and team settings to achieve robust software solutions for complex design challengesMust be able to organize and prioritize tasks across multiple projects to meet product timelines in the fast-paced consumer electronics marketExperience developing both super-loop and RTOS threaded software architectures for real-time embedded software applicationsGood working knowledge of electronic hardware and system design to be able to write software meeting hardware functional requirementsAbility to design and tune/verify PID control systems for general control applications, as well as for specific motor control schemes such as PMSM control, FOC, and BLDC trapezoidal controlFamiliarity with BSP/FSP/other peripheral code configuration & auto-generation tools, plus the ability to go beyond provided drivers to directly program features like ADC windowing and DMA, event controllers, timer usage, and experience with low power design.Hands-on experience with electrical hardware design and interfacing with lab test equipment such as oscilloscopes, spectrum analyzers, electronic loads (e-loads), digital test equipment, etc.Working knowledge of methods for charging/discharging lithium batteries using industry standard interfaces such as USB-A, USB-C, and others, including BMS control, cell balancing techniques, charging profiles, etc.Familiarity with serial communications interfaces and protocols such as I2C/SMBus, SPI, & CAN BusProven ability to determine root-cause of software performance issuesProficient in C/C++, with an understanding of best-practice software development, source management, and verification methodologies targeting real-time systemsAbility to work well in a cooperative and positive team environment, including mentoring junior developersExcellent communication, collaboration, and coordination skills as well as a talent and desire for mentoring junior engineers What We Would Also LikeFamiliarity with real-time OS, ARM microcontrollers, Eclipse-based IDEsKnowledge in use and application of AI models, agents, and workflows for coding embedded and software apps and for automating processesSome knowledge of scripting methodology/languages such as Python or shell scriptingAbility to learn new technologies and product areas quicklyExperience using Windows-based and/or Linux-based code development environmentsEmployment Type & LocationThis is a full-time, exempt position based on-site at NOCO’s Chandler, Arizona facility. Relocation assistance may be available for the right candidate.BenefitsIn addition to compensation, NOCO offers a comprehensive benefits package that includes medical, dental, and vision coverage, a 401(k) with company match, and paid time off.Physical Requirements & SafetyThis role involves regular on-site hands-on work with electromechanical and electrochemical systems and lab test equipment. Candidates must be able to work safely in a laboratory and light-manufacturing environment, follow all electrical-safety protocols, and occasionally lift and handle equipment and battery products weighing up to 30 pounds.Equal Opportunity EmployerNOCO is an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, protected veteran status, or any other characteristic protected by law.