
About Keri Studio
About
Connect with the team
Similar jobs
Desired Candidate Profile For Embedded Developer Role
1. Proficient in C language
2. Proficient in Linux application development, TCP/IP protocol, multi-threaded programming, basic encryption algorithm,
3. familiar with Linux system commonly used API and commands, proficient in basic debugging means and methods.
4. Proficient in STM32 and other SCM development, skilled in using Keil and other integrated development environment,
5. proficient in serial port communication programming, Bluetooth, GPIO, SPI, EEPROM and other development, proficient in basic debugging means and methods.
6. Have basic hardware skills and knowledge, can draw PCB and read circuit diagrams, can use an oscilloscope and other tools for debugging.
7. Familiar with embedded system, free-RTOS, RT-Thread, etc.
8. Fluency in both spoken and written English.
Basic Qualification: BE / Btech Computer Science
Desirable Skills:
1.Software development using Embedded C, C++ with programming standards (MISRA)
2.Knowledge of bus systems, which are used in the automotive industry, like CAN, LIN, I2C, SPI, etc)
3.Software development processes –A-SPICE V-cycle
4.Experience with development of control units for the automotive industry, especially experience with the development based on AUTOSTAR basic software.
5. Experience in the automotive industry according to common development and parameterization tools (i.e. Vector CANoe).
6.Knowledge of standards for safety-critical software (ISO 26262) is a plus.
Technical Lead (Embedded Software - Linux)
Job Responsibilities:
Lead a team of software/Linux development engineers working on microcontroller firmware development, Linux platform drivers and IOT solutions. Should be able to guide team members, resolve technical roadblocks and deliver project commitments. Will be the go-to person and first-level escalation point for all technical issues faced by the team. Looking for someone with 6+ years in the embedded industry and a passion to build a core team in a growing company. Team size will vary from 6 to 12 people, mainly firmware and Linux engineers.
The selected candidate for this role will be reporting to the software director/manager in the organization.
- Work with firmware and application architects to create a project execution plan
- Review project proposals for execution scope & timelines
- Lead embedded software development activities by the team
- Work with QA teams to resolve bugs and ensure release readiness
- Work with h/w design and PM teams to ensure smooth execution and timely delivery of projects
The main responsibilities of this role are:
Technical:
- Strong programming skills (C, C++, assembly)
- Linux development experience (porting & platform drivers)
- Expert-level knowledge of embedded microcontroller & microprocessor-based systems
- Prior experience in delivering critical modules for microcontroller projects
- Good understanding of commonly used embedded communication protocols
- Good understanding of common embedded peripherals, interfaces & sensors
- Experience working on Real-Time systems (RTOS)
- Should be able to quickly learn new technologies and enable the team on the same
- Should be able to work with minimal technical guidance
Leadership:
- This role requires excellent communication skills
- Strong analytical & problem-solving skills
- Should be able to lead junior engineers by providing technical mentoring
- Owns task division, task allocation and tracking within the team
- Require multi-tasking and time management skills
- Prior experience working with overseas clients
- Periodically report progress to management
Other desirable skills:
Knowledge of Python
Experience: 6 to 10 years
Primary skills:
At least 3+ years of working experience on embedded firmware development
- Experience in multithreaded programming, network programming (wired and wireless protocols), real-time programming, cross-platform and cross-language development
- Hands-on experience on driver development for various sensors
- Working knowledge of communication protocols like UART, I2C, SPI, USB, Ethernet, etc
- Product development experience with range of microcontroller/microprocessor architectures, adoption of bare-metal, RTOS and Linux operating systems on new platforms
-Hands-on experience on software development in Bluetooth domain is added advantage
- Experience with hardware lab equipment such as digital scope, logic analyser and JTAG
- Understanding of embedded development constraints and system performance
- Experience with programming in C/C++ and Embedded C
Responsibilities:
· Collaborate with cross-functional teams, including hardware engineers, system architects, and product managers, to define software requirements and specifications for embedded systems.
· Design and develop efficient, reliable, and scalable embedded software solutions that meet the defined requirements.
· Write, test, and debug code in programming languages commonly used for embedded systems, such as C, C++, and assembly language.
· Interface with hardware components, such as sensors, actuators, microcontrollers, and communication interfaces (UART, SPI, I2C,CAN etc.).
· Develop and implement device drivers, firmware, and low-level software to control hardware peripherals.
· Participate in code reviews to ensure code quality, maintainability, and adherence to coding standards.
· Perform unit testing, integration testing, and system testing of the embedded software.
· Analyse and optimize system performance, memory usage, and power consumption.
· Collaborate with the quality assurance team to identify and resolve software defects.
· Stay up-to-date with industry trends, tools, and technologies related to embedded systems and software development.
· Document software design, code, and test procedures for internal and external use.
· Provide technical support to other teams during product integration, testing, and deployment.
Qualifications:
· Bachelor's or Master's degree in Computer Engineering, Electrical Engineering, or a related field.
· Proven experience in embedded software development, including designing, coding, testing, and debugging.
· Proficiency in programming languages such as C and C++.
· Familiarity with Embedded C, 32-bit microcontroller,16-bit microcontroller hardware interfaces.
· Knowledge of real-time operating systems (RTOS) and multi-threaded programming.
· Strong problem-solving skills and ability to troubleshoot complex hardware-software interactions.
· Excellent communication skills and the ability to work effectively in a team.
· Familiarity with communication protocols (UART, SPI, I2C, CAN, Ethernet) is desirable.
· Knowledge of security considerations in embedded systems is an advantage.
Location: Chennai
Hands-on experience in Autosar methodologies and workflows.
• Sound understanding of embedded SW development using C on 32/64 bit microcontrollers.
• Experience in at least one of microcontroller architectures: Renesas RH family, Tricore or PowerPC architecture.
• Automotive Product Development Process knowledge (ASpice, ISO26262)
• Experience in one or more of Autosar BSW Modules stacks.
• Autosar based SWcs development in any domain of cluster, ADAS and IVI system.
• Com stack (FlexRay, CAN, LIN, Ethernet) / Memory Stack/ Diagnostic stack/ OS, Wdg, other services.
• Working knowledge on AUTOSAR ECU software architecture
• Understand the various features provided by AUTOSAR BSW modules and configure BSW modules in Davinci Configurator or similar tools
• Understand the AUTOSAR application (SW-C) configuration and the interaction of AUTOSAR applications (SW-C) with the underlying BSW modules
• Understand the functionality of RTE, mapping of application entities with BSW module parameters, OS scheduling concepts, ECU and BSW module state changes
• Understand the AUTOSAR methodology (ECU extract contents, import of ECU extract into configuration tool)
Understand the flow of the AUTOSAR software from application till the underlying driver.
- 32-bit Microcontroller knowledge is essential (ARM Cortex based micro-controllers (STM32).
- Esp32 architecture knowledge is essential.
- Strong experience in C, C++, Free-RTOS
- Strong experience in CUBEMX IDE, MDK Version 5 – Keil, Arduino IDE environment
- Good knowledge in HW and communication protocols like CAN, SPI, UART, I2C, USB
- Good knowledge in TFT Displays and Sensors is added advantage
- Good knowledge of implementation of motor controls as required, pulse width modulation schemes (PWM).
- Good knowledge of power electronics (TRIACs, MOSFETs, IGBTs, gate drivers) and require protections (Over/under voltage/current).
- Document firmware designs, specifications, test plans, revisions and produce test reports
- Programming experience in embedded C and python
- Experience in embedded systems development and troubleshooting and with real-time operating systems.
- Experience with embedded C programming for microcontrollers like PIC, Microchip in MPLAB
- Basic execution of process commands in Linux
- Experience in handling the raspberry pi







