Lead Embedded Software Developer
GE Vernova
9 days ago
Role details
Contract type
Permanent contract Employment type
Full-time (> 32 hours) Working hours
Regular working hours Languages
English Experience level
SeniorJob location
Tech stack
Testing (Software)
Agile Methodologies
Assembly Language
Unit Testing
C++
Static Program Analysis
Communications Protocols
Computer Security
Computer Programming
Continuous Integration
Software Debugging
Device Drivers
Microprocessors
Middleware
Embedded Software
Emulators
Ethernet
Firmware
Network Programming
Performance Tuning
Scrum
Software Architecture
Real-Time Operating Systems
Regression Testing
Simulink
Software Engineering
Software Requirements Analysis
Systems Modeling Language
Systems Architecture
TCP/IP
UML
VxWorks
Enterprise Software Applications
PIC Microcontroller
Peripherals
Job description
- 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.
Requirements
Do you have experience in Unit testing?, Do you have a Bachelor's degree?, * 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