Lead a cross functional team with hands on responsibility for all phases of the software development process from requirements definition through integration and testing of completed product.
Research, design, develop, modify and evaluate embedded software for electronic or other communications systems in conjunction with hardware product development.
Lead and contribute to the execution of the assigned portion of the entire product development cycle in an Agile Scrum framework.
Perform detailed analysis including: requirements analysis, use case scenarios, conceptual design, trade studies, test, operation, maintenance, and reliability analysis of radio communications products, internal subsystems, and external systems.
Work with test, manufacturing, product and program management and others to define and execute radio product development and deliver high-quality radio products.
Ensure the conversion of customer requirements, including informal requirements, into total systems solutions that balance the technical, schedule and cost constraints of the program.
Consult with electrical engineers and other engineering staff to evaluate interface between hardware and software and operational performance requirements of the overall system.
Develop software system testing procedures and design documentation.
Stay up to date with the latest advancements in DSP technology and apply new techniques and methodologies.
Contribute to the strategic direction of DSP solutions and identify opportunities for innovation and improvement.
Requirements
Bachelors degree in Engineering discipline with a minimum 9 years of relevant experience developing real-time embedded software in C or C++.
Graduate Degree and a minimum of 7 years of prior related experience.
In lieu of a degree, minimum of 13 years of prior related experience.
Experience developing designing, developing, and implementing DSP algorithms.
Experience simulating and analyzing DSP algorithms.
Ability to interpret hardware schematics, circuit designs, and datasheets.
Proficiency with multi-threaded, multi-core design and/or real-time operating systems.
Experience with all phases of the software project development life cycle, including software analysis, design, development, testing (including software unit testing), and automation tools.
Experience in Agile software development methodologies using an iterative, time-boxed development process (SCRUM).
Experience/knowledge of Capability Maturity Model Integration (CMMI) systems and software development processes or other defined SW development processes.
Strong verbal and written communication skills.
Demonstrated ability to analyze and debug software and related hardware issues.
Experience working in or with FPGA design, development and test teams.
Radio communications or IP networking experience.
Experience with small team leadership including planning, coaching, tracking performance and identifying and applying course corrections to keep the team on track.