Role Proficiency:
Provide leadership to a project with appropriate technical options and well suited design standards for embedded system product development system level validation and performance optimization strategies.
Outcomes:
Design develop and implement system level specifications. Develop highly optimized secured code debugging integrating firmware/ applications and development level testing of complex SW/HW systems. Work directly with IP owners product (HW & SW) architects for design and debugging as per the project needs. Prepare Release Notes and participate in release strategies. Mentor lead and manage Developers I II III – Embedded Software Engineers based on project needs Identify and recommend appropriate tools (SW & HW) for the project. Developing utilizing various debug validation tools and/or methodologies to implement Development and validation plans Create share best practices and lessons learned with the team. Optimises efficiency cost and quality. Influence and improve customer satisfaction Set FAST goals for self/team and also provide feedback to FAST goals of team membersMeasures of Outcomes:
Adherence to embedded design process and standards Quick turnaround on multiple alternative solutions determining the most suitable Number of technical issues uncovered during the execution of the project Number of review feedback post Software Lead II review based on project SLA Number of design and test defects post-delivery based on project SLA Quick turnaround on defect fixing for design and tests based on project SLA Adherence to testing methodologies and compliance process Adherence to project schedule / timelines Deploy Innovation techniques and publish white paper Team management and productivity improvement as per Project SLA.Outputs Expected:
Requirement:
Lead requirement engineering; collaboration with internal and external customers to understand their needs
Design:
Develop:
coding standards
templates and checklists. Develop automated tools or scripts for the validation environment.
Test:
validate the designed software
document the analysis and test results
Document:
LLD/architecture for component/system
software/ application diagnostics and test results
Status Reporting:
Quality:
add value
take responsibility for the design and overall quality of the embedded software
Release:
design schematics
board files
Compliance:
regulatory and test compliance
Estimate:
effort
resource dependence for one's own work and for projects' work. Accurately define and document the technical side of the project schedule with estimates and identified risks
Interface with Customer:
and conduct product demos
Manage Project:
Manage Team:
opportunities etc. Ensure team is engaged in project
Manage Defects:
Manage knowledge:
Skill Examples:
Ability to create Embedded C Program Development for system level. Capability in creating and executing one or more of the following domains: Storage/connectivity/Media/graphics/boot/clusters/infotainment/ADAS Ability to do C++ programming (OOP) Assembly programming skills Ability to handle OS Scheduler Pre-emptive Round robin & Cooperative scheduling related work Ability to handle SW development in area of CAN Diagnostics Vehicle Functions etc. Aptitude in Networking protocols such as CAN LIN etc Ability to select right IoT & IO protocols as per problem statement. Ability to do Unit Testing (Tessy & RTRT) using appropriate Integration Testing Tools Ability to define and execute test cases with techniques (White Box and Black box) Ability in Closed loop LabCar INCA or similar tools Capacity to configure GDT framework. Ability to adhere to software quality standards (MISRA PCLINT QAC). Ability to debug using embedded tools Ability to do automation and configure Simulation Tools. Proactively ask for and offer help Ability to work under pressure determine dependencies risks facilitate planning and handle multiple tasks. Build confidence with customers by meeting deliverables in time with quality. Estimate effort time resources required for developing / debugging features / components Make decisions on appropriate of the Software / Hardware’s. Strong analytical and problem-solving abilitiesKnowledge Examples:
Knowledge on product development lifecycle Testing methodology and standards (Water Fall/ Agile) Knowledge in Test Automation scripting languages (e.g. Python Perl TCL) Knowledge with Wired (USB Ethernet PLC SCADA etherCAT Modbus RSxxx & Wireless technologies like NFC Bluetooth Wi-fi Zigbee etc. is a plus Understanding of automation frameworks (e.g. Hudson/Jenkin) Knowledge and knowhow on Diesel and Gasoline Engine Management Systems Knowledge of embedded algorithm integration on platform (Windows Linux and Android) Comprehension of ASPICE & ISO26262 process Knowledge in Pre-Silicon Verification environments for simulation and Emulation/FPGA platform Experience with System Verilog IP/Subsystem and SOC development environment Knowledge of MISRA 2004 and 2012 Coding guidelines (PC-lint LDRA & PRQA) Knowledge of CAN Tools: CANoe CANalyser & CAPL programming Knowledge of GDT framework internalsAdditional Comments:
Role Proficiency: Provide leadership to multiple projects with appropriate technical options and well suited design standards for embedded system product development system level validation and performance optimization strategies. Account for others' developmental activities; assist project manager in day to day project execution Outcomes: Design develop and implement product level specifications for multiple projects. Develop highly optimized secured code debugging integrating firmware/ applications and development level testing of complex SW/HW systems. Work directly with IP owners product (HW & SW) architects for design and debugging. Mentor lead and manage the Lead I – Embedded Software based on project needs Identify and recommend right tools (SW & HW) for the project. Developing and utilizing various debug and validation tools and/or methodologies to implement development and validation plans Create share best practices and lessons learned to the team. Optimises efficiency cost and quality. Influence and improve customer satisfaction Set FAST goals for self/team and also provide feedback to FAST goals of team members Select and create appropriate technical options for development such as reusing improving or reconfiguration of existing components or create own solutions for new contexts Influence and improve employee engagement within the project teams Prepare Software Quality Assurance Plan. Create Progress Reports and Process Review (Audit) Reports and Release Readiness ZBB (Zero Bug Build) Review report. Measures of Outcomes: Adherence to Embedded design and Quality process and standards Quick turnaround on multiple alternative solution and determine the most suitable one Number of technical issues uncovered during the execution of the project Number of design and test defects post-delivery based on project SLA Adherence to testing methodologies and compliance process Adherence to project schedule and timelines Number of new ideas implemented and patented as per business requirement. Percent of voluntary attrition On time completion of mandatory compliance trainings. Team management and productivity improvement as per Project SLA. Outputs Expected: Design: Embedded design architecture/LLD sequence/use case diagrams and linking to customer requirements Develop: Design the embedded SW and code as per design patterns coding standards templates and checklists. Test: Review and create unit test cases scenarios and execution Review test plan created by testing team Provide clarifications to the testing team Document: Create and review templates checklists guidelines standards for design/process/development Create and review deliverable documents. Design documentation requirements test cases/results Configure: Define and govern configuration management plan Ensure compliance from the team Domain relevance: Advise embedded software developers on design and development of feature / component with deeper understanding of the business problem being addressed for the client Learn more about the customer domain and identify opportunities to provide value addition to customers Complete relevant domain certifications Status Reporting: Report status of tasks assigned comply to project related reporting standards/process Quality: Lead design reviews add value take responsibility for the design and overall quality of the embedded software Release: Execute and monitor release process Compliance: Adhere to embedded software design regulatory and test compliance Estimate: Estimate time effort resource dependence for one's own work and for projects' work. Accurately define and document the technical side of the project schedule with estimates and identified risks Interface with Customer: Clarify requirements and provide guidance to development team present design options to customers conduct product demos Work closely with customer architects for finalizing design Manage Project: Manage delivery of embedded software and manage requirement understanding and effort estimation. Support project manager with inputs for the projects Manage Team: Set FAST goals and provide feedback understand aspirations of team members and provide guidance opportunities etc. Ensure team members are upskilled Ensure team is engaged in project Proactively identify attrition risks and work with BSE for retention measures Certifications: Take relevant domain/technology certification Skill Examples: Ability to do Embedded C C++ programming (OOP) STL Assembly programming for product level. Ability to create and execute one or more of the following domains: Storage/connectivity/Media/graphics/boot/clusters/infotainment/ADAS Ability to do Linux / Android kernel patching Back porting kernel patches and OOT merging; upstreaming to community Ability to develop solutions based