8+ years of experience Excellent skills in C/C++/Java programming in embedded domain
Strong experience in the area of Automotive, Android Embedded development and Connectivity Technologies
Strong experience on Android architecture, HAL, BSP, customize driver in Android HAL, Android boot up sequence
Familiar with Android Build System and procedure and able to provide ideas to improve continuous build and integration
Experience in Hardware peripherals like Ethernet, CAN, DMA, I2C, SPI, UART, Hardware Accelerator, AFE , LCD, backlight, touchcontroller
Experience with design/ modification to Hardware Abstraction Libraries (HAL) for Android support of low-level device features.
Experience in debugging on a wide range of Linux Kernel drivers and Android framework HALs e.g. Audio/Video, USB, Bluetooth, WiFi
Fluent in industry standard software development tools: HSW/HE debuggers, code revision control systems (GIT, Perforce), IDEs and build tools
Exposure/experience in Automotive Embedded Software Development is a plus

About Olacabs.com
About
Connect with the team
Similar jobs
𝐒𝐞𝐧𝐢𝐨𝐫 𝐒𝐭𝐚𝐟𝐟 𝐄𝐧𝐠𝐢𝐧𝐞𝐞𝐫 – Android Automotive (AAOS)
𝐄𝐱𝐩𝐞𝐫𝐢𝐞𝐧𝐜𝐞: 4–10 𝐘𝐞𝐚𝐫𝐬
Mandatory skills: Android Automotive OS (AAOS/AOSP), Android Application Framework, System Services, Binder IPC (AIDL/HIDL), Java, C++, Automotive Infotainment, CAN/Ethernet, ASPICE (preferred)
𝐎𝐓𝐀 𝐅𝐫𝐚𝐦𝐞𝐰𝐨𝐫𝐤 𝐃𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫
𝐄𝐱𝐩𝐞𝐫𝐢𝐞𝐧𝐜𝐞: 5–10 𝐘𝐞𝐚𝐫𝐬
Mandatory skills: Automotive OTA Framework, C/C++, Embedded Linux, Uptane, FOTA/SOTA, A/B partitioning, Bootloader interaction, Secure OTA (PKI, SSL/TLS), CAN, UDS, DoIP
𝐓𝐞𝐥𝐞𝐦𝐚𝐭𝐢𝐜𝐬 𝐅𝐫𝐚𝐦𝐞𝐰𝐨𝐫𝐤 𝐃𝐞𝐯𝐞𝐥𝐨𝐩𝐞𝐫
𝐄𝐱𝐩𝐞𝐫𝐢𝐞𝐧𝐜𝐞: 5–10 𝐘𝐞𝐚𝐫𝐬
Mandatory skills: Telematics/Connected Vehicle platforms, Embedded Linux, C++, 4G/5G, Wi-Fi, Bluetooth, GNSS, Vehicle Data, MQTT, HTTP/HTTPS, LwM2M, CAN, Ethernet, UDS.
Position: Senior Embedded Software Engineer – PCIe / Embedded Linux
Location: Bangalore (Preferred)
Experience: 7+ years
Night Shift
About the Role:
We are seeking a highly skilled Senior Embedded Engineer with strong expertise in Embedded Linux and PCIe protocol development. The ideal candidate will have deep technical knowledge of PCIe (Gen4 and above) and experience in developing and debugging embedded systems at both hardware and software levels. Exposure to AI/ML or accelerator-based systems will be considered a strong plus.
Key Responsibilities:
- Design, develop, and optimize embedded software on Linux and RTOS platforms.
- Implement and validate PCIe-based communication and device drivers (Gen4 minimum, Gen5/6 preferred).
- Work closely with hardware and system teams to debug low-level issues related to PCIe interfaces.
- Develop firmware and system-level software components for high-performance embedded platforms.
- Participate in board bring-up, performance optimization, and hardware/software integration.
- Contribute to system architecture discussions and design reviews.
- Document design, testing procedures, and performance analysis.
Core Skills Required:
- Embedded Linux development (mandatory).
- Deep understanding of PCIe protocols (Gen4 minimum; Gen5/6 preferred).
- Strong knowledge of low-level driver development, DMA, interrupts, and memory management.
- Experience with Embedded RTOS environments.
- Familiarity with hardware debugging tools (e.g., JTAG, logic analyzers, oscilloscopes).
- Proficiency in C/C++ and scripting (Python, Shell).
- Excellent problem-solving and debugging skills.
Preferred Skills (Good to Have):
- Exposure to AI/ML hardware accelerators or data processing units (DPUs).
- Understanding of SoC architecture and high-speed interconnects.
- Experience working with multi-core systems and performance tuning.
Education:
- Bachelor’s or Master’s degree in Computer Engineering, Electronics, or related field.
Requirements:
- Very good programming knowledge in C/C++
- Experience in Multi-threaded software development
- Understanding of operating systems concepts, system performance, and optimization
- Familiar with working in an Embedded Linux development environment.
- Excellent problem-solving/debugging skills, design, development, troubleshooting, and debugging
- Knowledge of embedded tools like emulators, linkers, makefiles, etc
- Experience in voice applications development, preferably on client/server platforms
- Knowledge of RTOS programming will be added advantage.
- Understanding of different processors. microcontrollers architectures.
- Familiarity with development tools such as GCC, GDB, Eclipse, GNU Make, etc
Job Overview:
We are seeking a talented Android Framework Engineer to join our development team at Primebook. As an android framework developer, you would be responsible for development, coding, testing and debugging of system features and system apps of PrimeOS, driving technical excellence, and shaping the direction of our products. You will work closely with our CTO to create cutting-edge features that meet user needs and business goals.
Key Responsibilities:
- Understand product requirements and translate them into technical requirements.
- Create secure and high-quality production level code that runs well with different android versions and devices with different screen sizes.
- Development and debugging of android framework components like SystemUI, PhoneWindowManager, Settings database etc.
- Should be capable of developing applications from scratch, debug and fix issues quickly when they are found.
- Collaborate with various teams (Product, Design & Testing) to develop and ship new features.
- Should be able to write scalable and efficient code for handling the load of 100k+ users.
- Ensure the best possible performance, quality, and responsiveness of the application, good knowledge of threads in android is necessary.
- Excellent debugging skills, including identifying memory leaks, performance bottlenecks, and using tools like ADB, proguard, etc
Qualifications:
- A “Bring It On” attitude; bias for action; self-driven, end-to-end ownership; entrepreneurial approach; focus on operational excellence; ability to work with ambiguity.
- B.tech degree in Computer Science or equivalent
- 3-5 years of experience with portfolio of work to show the skill set
- Should have developed at-least 2-3 android apps from scratch
- Experience in compiling AOSP and solving common build errors is a must have
- Should have experience working with SystemUI and android framework_base
- Excellent knowledge of Java, Kotlin, MVVM architecture
- Experience with popular libraries (Jetpack, Retrofit, Glide, OkHttp, Gson etc.)
- Experience with RESTful APIs to connect Android applications to backend services
- Must be good at building logics and working with data structures
Perks and Benefits:
Job type: On-site, 5 days a week
Industry Type: Computer Hardware Manufacturing
Functional Area: Testing And Development
Employment Type: Full Time, Permanent
Salary: Upto 20 Lacs (depends on skill)
Bachelors/Masters Degree in Engineering
Position : BSP Engineer
Total experience : 4+ yrs to 10 yrs
Desired Skills And Experience
4+ years of experience in application development, drivers development.
At least 4 years of working experience in the design and development of u-boot and Linux kernel subsystems and drivers.
Excellent programming skills in C/C++ and Hands-on experience in ARM-based SoC.
Experience in BSP and Boot loaders
Linux Device drivers Development and knowledge of RTOS.
Device drivers experience preferably for following devices: UART, I2C, I2S, SPI, GPIO, PCIe, MMC, USB etc.,
Hands-on experience on WIFI and SDIO has added advantage.
Strong debugging skills.
Greetings from Utthunga Technologies!!!
Job Description:
- Ability to contribute as an independent developer
- Boot-Loader: Proficient in customization in u-boot for custom hardware
- Hands on experience with Cortex M series based architecture
- Linux Kernel: proficient in Linux device driver development and BSP development in YOCTO environment
- Programming language: Strong in C, particularly system software development
- Sound knowledge and experience of Linux OS and OS configurations
- Sound knowledge/ understanding on ARM architecture
- Strong Embedded Software background and Linux internals
- Experience of Designing and Architecture for Application and Middleware Development.
About the role
Experience in Firmware/Software programming in embedded Linux & RTOS based application development. Candidate must have a very good understanding of ARM processor, hardware and custom board or product development experience.
Roles and Responsibilities:
- Design, code and integrate software for an embedded Linux/RTOS targeted application (applications, drivers, framework)
- Customization, deployment and maintenance of Linux distribution
- Interact with Linux kernel, integrate new device drivers Improvement and maintain existing software components
- Perform unit test, Integration test, verification and validation of the product developed.
- Assist with the hardware design surrounding the processor
- Document the projects according to standards (protocols, architecture, technical specifications, etc.)
Qualifications:
- Bachelor degree in Electronics or computer science engineering.
- Minimum 6 - 12 years of experience in embedded Linux programming.
Specific skills:
- Expert in C programming with RTOS.
- Hands-On experience with Protocol development.
- Nice to have Protocol development experience such as USB or DP, HDMI or equivalent.
- System level design and understanding of overall system
- Strong knowledge of Linux, ARM processor architecture with SOC, FPGA interface is a plus.
- Hand-on experience on Linux kernel and device-driver development and debugging.
- Knowledge/Experience of TCP/IP, Network programming.
- Ability to write effective and reusable code according to best practices.
- Must be a dynamic, autonomous, and team-oriented individual.
- Knowledge of hardware and low-level development is an asset.
Position Overview:
This position is part of highly skilled fimrware team that do software board bring up of bare silicon for next generation products. In order to write system software for embedded electronic products, this position requires academic background in electronics engineering to understand hardware concepts such as digital logic, schematics, and microprocessor communications to develop effective embedded software.
Candidate should have complete knowledge of Software development cycle from architecture definition to the implementation.
Responsibilities:
- Must wear multiple hats from analyzing field and factory reported issues to software integration.
- Be a liason for troubleshooting and debugging complex systems and identifying the root cause.
- Develop detailed design documents and customer facing application notes for the system and IOT features for Mobile routers.
- Act as a product lead and be part of bigger team in software bring up.
- Ability to work on Low level software such as bootloaders and understanding of low level functional blocks is a must.
- Work on Linux kernel and configuration.
- Write or port device drivers for Ethernet, USB, GPIO, LED, Bluetooth, Accelormeter, LCD and touch screen.
- Debug stability issues in data routing between WAN and LAN interfaces.
- Work with Software QA with test plan and execution.
- Work with Hardware team to identify and root cause stability problems.
Experience/Requirements:
- Demonstrable knowledge of C, C++, Assembly programming skills
- Overall 10+ years of experience in embedded environment preferabily Linux.
- Board bring up proficiency with bootloaders and other low level software, must be very good with debugging techniques.
- Experience in TCP/IP networking is must for trouble shooting throughput and other traffic issues.
- Driver experience with I2C, SPI, UART, LCD, Ethernet, PCIe is a plus.
- Experience with low level debugging using JTAG.
- Experience with Makefiles, and build environments such as PTXDIST, Yocto and Buildroot.
- Experience with version control such as git and svn.
- Good communication skills and team player.
- Ability to work independently and autonomously to meet deadlines, in a fast-changing environment.
Education:
Bachelor in Electronic and Communication or related degree- Bachelor’s degree in Electrical or Electronics Engineering with 1-3 years of relevant experience.
- Highly experienced in Embedded C, C++ coding as per MISRA standards
- Experience in firmware programming for 8 bit, 16 bit and 32 bit controllers.
- Knowledgeable in Linker Scripts, Make files & firmware debugging using JTAG or on the UART console.
- Experienced in Communication peripherals like SPI, UART, I2C, CAN, etc.
- Ideation, designing, prototyping, and developing as per product requirements.
- Expertise in system architecture and design for Embedded software systems.
- Develop modular Embedded Code to port into different projects.
- Experience on Real Time Systems and Scheduling mechanisms
- Development experience in "middleware" / “application” / Low layer.
- Experience with developing embedded code for networking technologies like TCP/IP and UDP would be a plus.
- Document state machine diagrams, flow charts to understand the system architecture
- Working closely with Design teams to understand Hardware Implementation.
- Develop Test methods, in some cases automated test cases to test the firmware code and support hardware engineers.
- Use Debuggers, oscilloscopes, power supplies, and other necessary electrical tools to debug the code for problem-solving.
- Excellent reading skills for complete understanding of technical documents such as Processor Architecture Specifications and MCU hardware manuals, schematics etc.
- Ability to generate ideas in response to complex issues and execute on solutions.
- Python programming is a big plus.
Primary Skill: System Software Development
Skill sets req:
- Linux porting/development; Linux kernel concepts
- Expertise in Linux BSP device driver development
- Customizing kernel + Porting + Developing Applications Linux Device Driver Development (Character devices) Good Concepts of Network Drivers File Systems Concepts
- Expertise in porting, network stack; optimization, network programming
- Bootloader/Uboot porting
- Camera driver development (Good to have)









