Tips: Provide a summary of the role, what success in the position looks like, and how this role fits into the organization overall.
Requirements Responsibilities:
• Elicit requirements, document analysis and requirement workshops; perform analysis and documentation of existing customer products, site visits, use cases, scenarios, event lists, competitive product analysis, task and workflow analysis, and/or viewpoints.
• Write requirements specifications and interface documents using standard templates, simply, clearly, unambiguously, and concisely.
• Decompose user requirements into functional requirements and Safety requirements, specified in an appropriate level of detail suitable for use by those implementing the requirements.
• Requirements estimation, prioritization, analysis and verification, ensuring that requirement statements are complete, consistent, concise, comprehensible, traceable, feasible, unambiguous, and verifiable, and that they conform to standards.
• Participate in peer reviews and inspections of requirements documents. Participate in peer reviews of work products derived from requirements specifications to ensure that the requirements were interpreted correctly.
• Enter, manipulate, and report on requirements stored in a configuration management and traceability tools. Identify requirements errors and defects, and write requirement notification reports.
• Manage changes to baseline requirements using change control processes and tools.
Software Development Responsibilities:
• Expertise in C, C++. Fluent in concepts of Design Patterns.
• A strong technical background in Software engineering including best practices and understanding of software development lifecycle and Agile Methodology is mandatory.
• Experience with ISO 26262 safety standard will be an added advantage.
• Excellent analytical and troubleshooting skills.
• Excellent verbal and written communications skills.
• Should be able to work independently and own a complete module/component from requirements gathering till production.
• Should have fair knowledge of the process tools that are used in the industry.
* Please note: It is management’s responsibility to ensure accuracy of this job description and communicate content changes to Compensation.
• Knowledge on version control tools such as, SVN, PTC integrity etc. is a plus point
• Knowledge on Automotive communication protocols such as CAN, UDS, LIN, Ethernet is a desirable
• Familiarity with one or more scripting languages like Python, CAPL, Shell Script, Bash, PowerShell etc.
• Should have exposure to UML, should be able to understand UML diagrams and contribute to UML based designs.
• Hands on experience in Tools like Enterprise Architect, Rhapsody etc.
• Experience with automotive embedded RTOS is desirable.
• Good knowledge of embedded system architecture, Peripherals like I2C, I2S, SPI, UART etc
• Additionally, experience with development of software for Microcontrollers such as AVR, ATMEL Family, Renesas, ARM cortex Family is highly desirable.
• Development background in IDE’s such as IAR workbench, GreenHills Multi environment is a plus.
• Should have exceptional debugging skills using both JTAG based, post-mortem debug using GDB or similar debuggers etc.
• Hands on experience with CANOE and other Vector Tools are mandatory.
• Hands on experience with HMI Development, experience with ALTIA or Electrobit or IAR Visual State Tool is an added advantage.
• Hands on experience with AUTOSAR is mandatory.
• Should be fluent in reading/understanding hardware block diagrams and schematics.
• Should, contribute to requirements reviews, analysis of customer change requests, analysis of existing designs and also development of new designs in the field of Systems Design/Development.
Software Release Responsibilities:
• Responsible for execution of the overall software plan which includes delivery to schedule, resource management and software process management
• Develop, maintain and communicate a software plan which includes software content and timing.
• Interface with Customer and understand Customer’s software delivery requirements and priorities.
• Be responsible for software error tracking lists.
• Implement requirements through design, coding, debugging, validation, release and maintenance phases.
• Interface with internal groups such as electrical design, validation, testing, manufacturing and quality under direction of software project leaders.
• Maintain Bi-Directional Traceability Matrix.
• Support product builds, launches and investigation of quality and warranty issues.
MINIMUM REQUIREMENTS
• Excellent English and communication skills.
• Able to work self-sufficiently and proactively.
• AUTOMOTIVE Domain (IPC / HUD / ECU / ADAS) Knowledge Mandatory.
• Able to create and update C language code, and use compliers and debug tools.
• Knowledge of CAN, LIN, CANOE is mandatory.
• Able to use GMLAN bus communication tools.
• An understanding of the V Model software development life cycle in a team environment.
• Experience with safety critical modules is a plus.
• Experience with ISO26262, SPICE and CMMI is a plus.
• Experience with AUTOSAR is mandatory.
Degree Requirements:
Bachelor’s degree in Computer Engineering, Computer Science or
Relevant.
Certification Requirements:
None
Previous Experience:
• 8+ years of automotive or related embedded software development.