Description

Role Proficiency

Independently design develop and optimize complex embedded software modules in areas such as OS enabling Driver FW development

Outcomes

 

  • Develop UML and sequence diagrams for the module level / sub system level
  • Understand and provide inputs in the application / feature / component design and develop the same in accordance with system requirements.
  • Debug root-cause and fix variety of hardware and software technical problems and work with the cross functional teams to ensure timely resolution.
  • Create Integration & Regression test strategies related test contents Execute and generate test results along with debug logs.
  • Fix the static and dynamic analysis violations to deliver embedded software package per quality standards.
  • Select appropriate techniques for software development such as reusing improving / reconfiguring of existing embedded models
  • Respond to customer/client requests
  • Mentor Developer II /Software Engineers to become more effective in their roles

     

Measures Of Outcomes

 

  • Adherence to engineering process and coding standards.
  • Adherence to schedule / timelines
  • Adhere to SLA wherever applicable
  • Number of defects post delivery
  • Percent of integration and functional coverage.
  • Number of non-compliance issues
  • Defined productivity standard for product
  • Completion of technical /domain certifications
  • Completion of all mandatory training requirements

     

Requirement

Outputs Expected:

 

  • Understand the functional requirement prepare low level design for the module.
  • Develop code using simulation environments like Matlab; optimization using DSP assembly programming

     

Code

 

  • Develop FW controller applications

     

HW & SW Setup

 

  • Able to troubleshoot and help bring up HW boards Clusters infotainment embedded systems.

     

Test

 

  • Develop test strategies and plan for integration & regression test execute regression tests.

     

Debug & Fix

 

  • Perform defect RCA and mitigation

     

Document

 

  • Create implementation documentation HAS Technical specification & BKM’s.

     

Status Reporting

 

  • Report status of task assigned
  • Comply with project related reporting standards and process

     

Mentoring

 

  • Mentor developers in team
  • Set FAST goals and provide feedbacks to mentees

     

Estimate

 

  • Estimate time effort resource dependence for one's own work and for projects' work.

     

Skill Examples

 

  • Ability to develop bare metal state machines and hardware drivers as appropriate
  • Ability to develop using C C++ middleware frameworks (OpenCV Computer vision)
  • Ability to configure and debug using Vehicle bus stacks (CAN LIN Ethernet SOME/IP)
  • Ability to develop and test the various MCU software featuresa. Power Managementb. HVACc. User settingsd. Cameras configuratione. Audio amplifierf. Diagnostic
  • Ability to do hands-on with the following toolsa. GIT SVN /Gerrit bit bucketb. Vector Da Vinci development and configuration toolsc. JIRAd. Confluencee. Jenkinsf. Vector CANoe
  • Ability to do hands-on for various Protocol analysers (SATA PCIe etc.) network & traffic analysers Audio analyser (APx) Video analyser Spectrum analyser and JTAG Emulators
  • Capable to prepare technical specifications for the respective IP’s understand Hardware/ Software Architecture specification.
  • Work in a team environment
  • Good written and verbal communication abilities
  • Proactively ask for and offer help

     

Knowledge Examples

 

  • Knowledge of:a. Automotive domain: AUTOSAR / Non Autosar platform ADAS Computer Vision b. Semiconductor: SOC architecture IP level deep understandingc. Multimedia: Exposure to DSP fundamentals Media standards.d. Communication: Exposure to communication protocols streaming protocols.
  • Understanding of embedded real-time systems internals
  • Knowledge in HMI design tools like QT & Kanzi.
  • Knowledge of ARM TrustZone and Secure OS like OPTEE for Trusted Execution Environment (TEE).
  • Comprehension of ARM /X86 Boot flow ARM memory initialization bootROM architecture and UBoot development.
  • Knowledge of Key Peripherals: USB Ethernet Bluetooth DDR PCIe CAN SPI I2C UART TIMERS etc.

     

Additional Comments

 

  • Firmware Development –
  • C based processor validation, ARM or any processor.
  • Should have experience working in power and performance domain of processors under Linux platform.
  • Should be proficient in C/C++ programming.
  • Should have experience in power and performance measurement tools and benchmarking.
  • Should understand SoC design and interfacing protocols.
  • Understanding of different IP’s from ARM is plus


 

Desired Skills and Experience

Embedded C,Device Driver Development,Arm,Linux

Education

Any Graduate