Role 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
-
Automotive Software Development Engineer 2-4 Yrs , Bangalore 2-4 years of relevant experience with graduation in a relevant engineering program such as Computer Science, Computer Engineering, Electrical Engineering, etc.
-
Experience with automotive standards including ASPICE, ISO-26262 (FUSA) and ISO-21434 (Cybersecurity)
-
Experience with automotive middleware stacks including classic and/or adaptive AUTOSAR
-
Highly skilled in C / C++ development and experience with the Linux / QNX environment
-
Skilled in scripting languages such as Python and Bash
Skills
Automotive Engineer,ASPICE,C/C++ development