Job Description Summary Roles and Responsibilities - Design, develop and implement Platform Software for Real Time control system including system architecture and device drivers targeted at embedded systems. - Platform Software requirements elicitation. - Design and develop Platform Embedded SW modules. - Board Bring-up involving the SBC processors cards. - Integrate software packages with existing systems and sub-systems. - Prepare unit test and regression test specification, release packages and templates. - Interact with a multi-discipline engineering team to meet the project requirements. - Prepare formal and informal engineering documentation. - Implement software QA activities, incl. Code, Milestone and Release reviews. Required Qualifications - Bachelor's degree or above in, Technology or Engineering. - Proficient in Real-Time Embedded Software Engineering in C/C++ on any embedded processor/DSP/ Microcontroller and RTOS. - Proven Experience in writing Device Drivers for various peripherals on embedded processor boards in C/C++ or ASM. - Proficient in Debugging the low-level source code/ assembly code on the Microprocessors/ DSP/ Microcontrollers using In Circuit Emulators (ICE) and other suitable methods. - Proven history in delivering successful high quality embedded software products in C/C++, under embedded real time operating systems such as VxWorks. - Understanding of system scheduler with respect to performance tuning. - Clear understanding of sockets and network programming. - Software design and integration experience specific for control systems development. - Experience in all phases of the product engineering and development cycle. - Test driven design techniques (e.g., Continuous Integration, Unit Testing, automated regression testing). - Software lifecycle, Requirement and change management. - Conceptual understanding of full stack of software and in-depth experience in more than one area (e.g., firmware, middleware, control algorithm) Desired Characteristics - Knowledge and experience in safety critical and/or control system software development practices (e.g., IEC 61508, IEC 62304). - Knowledge and experience in cyber security in programming aspects. - Knowledge of Communication protocols (Ethernet, TCP/IP, IEC 61850, IEC 80750-104, DNP3, ) - Static analysis tools and procedures (e.g., Workbench). - Software architecture and modelling (e.g., UML, SysML). - Model-Based Design techniques (e.g., Matlab-Simulink). - Agile development practices (e.g., Scrum). - Power Electronics control system design. - Knowledge of HVDC Job Description Roles and Responsibilities - Design, develop and implement Platform Software for Real Time control system including system architecture and device drivers targeted at embedded systems. - Platform Software requirements elicitation. - Design and develop Platform Embedded SW modules. - Board Bring-up involving the SBC processors cards. - Integrate software packages with existing systems and sub-systems. - Prepare unit test and regression test specification, release packages and templates. - Interact with a multi-discipline engineering team to meet the project requirements. - Prepare formal and informal engineering documentation. - Implement software QA activities, incl. Code, Milestone and Release reviews. Required Qualifications - Bachelor's degree or above in, Technology or Engineering. - Proficient in Real-Time Embedded Software Engineering in C/C++ on any embedded processor/DSP/ Microcontroller and RTOS. - Proven Experience in writing Device Drivers for various peripherals on embedded processor boards in C/C++ or ASM. - Proficient in Debugging the low-level source code/ assembly code on the Microprocessors/ DSP/ Microcontrollers using In Circuit Emulators (ICE) and other suitable methods. - Proven history in delivering successful high quality embedded software products in C/C++, under embedded real time operating systems such as VxWorks. - Understanding of system scheduler with respect to performance tuning. - Clear understanding of sockets and network programming. - Software design and integration experience specific for control systems development. - Experience in all phases of the product engineering and development cycle. - Test driven design techniques (e.g., Continuous Integration, Unit Testing, automated regression testing). - Software lifecycle, Requirement and change management. - Conceptual understanding of full stack of software and in-depth experience in more than one area (e.g., firmware, middleware, control algorithm) Desired Characteristics - Knowledge and experience in safety critical and/or control system software development practices (e.g., IEC 61508, IEC 62304). - Knowledge and experience in cyber security in programming aspects. - Knowledge of Communication protocols (Ethernet, TCP/IP, IEC 61850, IEC 80750-104, DNP3, ) - Static analysis tools and procedures (e.g., Workbench). - Software architecture and modelling (e.g., UML, SysML). - Model-Based Design techniques (e.g., Matlab-Simulink). - Agile development practices (e.g., Scrum). - Power Electronics control system design. - Knowledge of HVDC Additional Information Relocation Assistance Provided: No LI-Remote - This is a remote position