Skip to content

General information

IN_Bangalore_Sattva Knowledge Court Bdg_HII
Additional Location:
Bangalore, India
Job Family:
Worker Type Reference:
Regular - Permanent
Pay Rate Type:

Description & Requirements

About the Role: 

As a Principle Embedded SW engineer, you will own subsystems, including IO controller, on embedded platforms and will be responsible for designing production ready software by following a defined software development process. 

You will analyze specifications, develop high level design, maintain traceability, review unit level code, and document the work on Harman product(s).  

You will provide technical coordination in software development by understanding requirements for specific project/programs and will be guiding a team of engineers them on skill building aspects that are related to the project. 

What You Will Do: 

Development of software and drivers for peripherals, controllers, and services for complex SOC Systems (ARM/Intel/QC based). 

Android or BSP porting, writing resource managers, board bring-up activities. 

Participate in design, development, verification, troubleshooting, and delivery of high-quality products. 

Analyze existing embedded software to add features, make modifications, fix bugs, and/or port to different platforms. 

Study and understand customer and internal specifications, architecture, and design documents for the system. 

Develop component design document based on specifications and given SW architecture. 

Understand the impact of design change on system functionality and performance. 

Lead and participate in technical discussions across engineering and product teams. 

Resolve inconsistencies in case of unclear technical requirements in the specification by direct communication with the responsible internal/external stakeholder. 

Responsible for dependency identification for assigned features. 

Assesses feature reusability between existing and new projects during project execution. 

Develop unit tests for all new code. 

Ensure pre-integration testing and verification for the functional area and its features.  

Provide root cause analysis for issues, fix these issues, and verify effectiveness of given fixes for the software components delivered. 

Assist PL/ Engg. Manger in PI & Sprint planning and back log estimations and deliver on commitments for Sprints. 

Support in preparing schedule and effort to meet customer milestones 

Ensure the process adherence of the work products. 

Support in ensuring quality through effective design and code review. 

Manage risk identification and risk mitigation strategies associated with the designed architecture. 

Mentor team members to build domain knowledge. 

Support the project and quality team to achieve automotive certifications like ASPICE. 

Interface with customers to handle customer queries, concerns and change management requests 

Coordinates software development activities with software team leader. 

Develop and offer visibility on risk assessment for critical fixes. 

Report status, issues, and progress of the SW development. 

Basic Qualifications: 

Bachelor’s degree in Computer Engineering, Electrical Engineering or equivalent. 

Minimum 10 years’ industry experience for Bachelor or 7 years for Master in embedded system designs, preferably in automotive industry. 

Broad knowledge of embedded HW and SW. 

Good Understanding on ARM/Intel/QC 32/64 Architectures. 

Strong knowledge in C and C++ programming and debugging for embedded systems. 

Experience working with device drivers for communication protocols such as SPI / I2C/A2B/RS-232 / USB etc. 

Good understanding of memory management/Interrupt handling/DMA subsystems . 

Good knowledge of ARM GIC, Timers, debug subsystem (ARM architecture) is an advantage. 

Working knowledge in Android/Linux/RTOS s and Object-Oriented Design/Architecture. 

Good understanding of multi-core hardware, operating systems design, multi-thread-based designs, virtual memory, caching, interrupts, device drivers, real-time considerations, Virtualization in embedded systems. 

Exposure to Audio processing and algorithms. 

Working knowledge of software development processes and process models such as CMMI or ASPICE. 

Understanding in kernel, device tree, Android / Linux device driver, HAL layers, Android Framework layers is a plus. 

Have experience working in agile development environment. 

Knowledge of UML state diagrams, sequence diagrams drawing ability, analysis. 

Good experience working with tools like Gerrit/GIT, Bamboo, Bitbucket, JIRA, etc. 

Desired Competencies: 

Resourcefulness in triaging technical problems and coordinating with multiple teams for issue resolution 

Ability to work in a structured manner 

Work proactive and independent with a positive attitude 

Creative problem-solver capable of creating, reproducing complex system/functional defects and leading from the front. 

Good verbal and written communication skills in English. 

Self-driven and Innovative to drive continuous improvements in Design and Development process 

Ability to work independently and contribute to project and team. 

Excellent problem-solving skills. 

Ability to connect the dots between own tasks and project/team deliverables and engage in technical discussions with other functions 

Strong team player, ability to handle multiple projects and ability to mentor engineers. 

HARMAN is proud to be an Equal Opportunity / Affirmative Action employer. All qualified applicants will receive consideration for employment without regard to race, religion, color, national origin, gender (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender identity, gender expression, age, status as a protected veteran, status as an individual with a disability, or other applicable legally protected characteristics.