Senior Embedded SW Manager Markham Job Description Summary Reporting to the R&D Leader, the Embedded SW Manager is responsible for designing , developing and testing Firmware, FPGA, platforms and systems that control and runs on devices that need to be tailored to the needs of the hardware that it has to control and run on. Requires a deep understanding of the characteristics of the physical device being controlled (merging units, switchgear control units, fault recorder, fault locator, network switches and time clocks), the realtime functions it is expected to perform and the ability to design, develop, implement, and test the logic and software required to realize the realtime functionality. Usually tailored for products and services across various P&Ls. Impacts approaches, projects and programs in the functional area or affected business organization and ways of working. Impacts quality, efficiency and effectiveness of own team. Has significant input into priorities. Guided by professional practices and policies... that are shaped by the role. The role has moderate autonomy, requiring high levels of operational judgment.
Responsibilities & Duties include:
Product Delivery Lead a global software engineering team. Delegate and structure the software development for an outsourced development team including guiding technical leads to create manageable work breakdown structure, resource assignment, risk mitigation. Own full design authority for the technology program embedded software and FPGA. Proactively identify, assess, and mitigate risks associated with project goals including meeting schedule, budget, resource allocation and specifications with regular reporting to key stakeholders. Delivery of the embedded software in accordance with the requirements and maintain compliance to established NPI QMS process and design review guidelines. Define project plans, provide effort and schedule estimates at various stages of product planning. Define and maintain resource allocation plans for direct staff, contractors, expense and capital spend. Elimination of obstacles through coordination and collaboration with various stakeholders on product release planning, development, test, and delivery.
Product Technology Be a technical evangelist of the product to ensure that its development and architectural approach adheres to the best-in-class technology and overall direction of our product technology roadmap. Collaboration with stake holders to contribute towards effective future product release planning to introduce technology, in a timely manner and release the best in class products. Collaboration with design office and CTT teams to define and maintain the overall technical architectural integrity of the product through design re-use and sound engineering. Drive development and writing of technology design and architecture for projects by collaborating with key stakeholders. Guide the development continuous build and unit test infrastructure, tools and processes to ensure and continuously improve the development teams efficiency and build process. Own the quality strategy for high reliability software design, zero design defects and ensuring products fully comply with requirements and published specifications. Research new technologies and enhance the companys IP portfolio Deploy Continuous Improvement and Continuous Development environment (CI/CD) by applying DevOps techniques and tools.
Customer Focus Customer-oriented focus in the decision-making process on product planning and development, and the resolution of issues. Conduct the appropriate level of product knowledge transfer to better serve our customers and drive resolution of customer issues and training of new products. Responsible for the timely handling of internal stakeholder requests such as quality, service and production for released products.
Team Management Management of the software/firmware/FPGA engineers including performance reviews and compensation input, professional development, recruitment, and team building. Mentoring for technology, design, communication and conflict resolution & provide direct technical leadership and coaching role to engineering team.
Desired Skills and Experience: Bachelors or masters degree in Engineering/Science. Experience with Agile Methodologies Experience leading and mentoring software developers, as well as collaborating with other managers, architects, emerging technologies, and product management teams. Strong analytical and problem solving skills and the ability to encourage innovation, risk taking and creative thinking in others through performance coaching/mentoring/recognition. Dedicated RTOS operating system development experience is essential with Firmware development experience using C and C++, embedded web server, operating system design, TCP/IP stack, networking tools and industrial protocols. Experience with software design process and tools, such as code collator tools, code review processes, is essential. Superior verbal, written and interpersonal skills including the ability to build solid relationships conduct negotiations and make presentations to technical and non-technical audiences.
Desired Industry Knowledge & Experience: Exposure to Hardware, Firmware and Software architectures of complex embedded systems Experience with FPGA programming, particularly Xilinx and Altera vendors. Experience with research and development taxation submission preparation. Experience in the development of software for system-on-chip processors is desirable. Experience with protection and control and substations automation products. Strong knowledge of IEC 61850, IEC 61508, DNP, Modbus, IEC 104 and Cyber security standards and functionalities. Experience with mathematical modelling software is a very strong asset and is preferred. Familiarity with common communications protocols (UART, SPI, I2C, USB) a plus Knowledge of distributed version control system such as GIT
Relocation Assistance Provided: Yes Markham ON (+3 others)