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 (10)
Key Responsibilities
- Maintain and enhance the Yocto BSP for the TechNexion PICO-IMX6 DualLite (NXP i.MX6) platform.
- Assess and execute migration from Yocto Zeus to a newer LTS release (e.g., Dunfell/Kirkstone).
- Integrate stable Linux kernel patches from NXP and mainline.
- Optimize system boot time, startup sequence, and overall performance.
- Remove unnecessary services and packages to reduce image footprint.
- Update and stabilize the Bluetooth stack (BlueZ and firmware).
- Optimize Linux kernel configuration, power management, and CPU tuning.
- Debug CPU, memory, storage, and I/O performance issues.
- Maintain Yocto layers, build process, and technical documentation.
- Define and maintain eMMC/SD storage layouts for boot, rootfs, data, and update partitions.
Required Skills
Mandatory
5+ years of Embedded Linux development experience.
2+ years of hands-on Yocto Project experience.
Strong expertise in:
- Yocto (recipes, meta-layers, BitBake, bbappend)
- Linux kernel configuration and patching
- NXP i.MX6 or similar embedded platforms
- Systemd optimization and boot profiling
- Embedded Linux debugging (dmesg, perf, ftrace, systemd-analyze)
- BlueZ and Bluetooth bring-up
- Cross-compilation, toolchains, and Git workflows
Preferred
- Yocto LTS migration experience.
- U-Boot optimization.
- Embedded power optimization.
- Secure Boot and OTA update concepts.
- Exposure to Qt-based embedded systems.
Key Deliverables
- Optimized and maintainable Yocto BSP.
- Reduced system boot time.
- Lean system image with redundant services removed.
- Stable Bluetooth stack with updated patches.
- Updated Linux kernel with critical fixes.
- Documented Yocto layers and build process.
- Migration plan for the latest Yocto LTS.
- Defined storage partition layout for deployment.
Experience: 5+ Years in Embedded Linux (Minimum 2+ Years with Yocto)
- Strong C/C++ programming hands on experience
- Should have work experience on firmware development with strong Linux internals.
- Very good development, design and debugging experience on embedded firmware.
- Added advantage to have experience on Systems management/Out of Band/BMC domain experience
- Good to have automation experience using Python or shell scripting
- Excellent communication and problem solving skills
- Experience on tools like JIRA, Yocto, Visual studio, etc.
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.
Domain Skills
Leads a team of Engineers for designing and architecting next generation platform solutions for clusters/Interior monitoring systems
Architecting the design for new features and technologies for Platform.
Expertise in programming using C, C++ and good understanding of OOAD & UML
Capable of analyzing HW schematics to realize the SW requirements.
Support and resolve issue resolutions and clarification for cross-functional teams.
Support team lead and project manager at program level in resolving open issues
Technical Skills
Expertise in memory management (eMMC, NAND)
Design, Develop and test device drivers in Linux/Android/QNX platform.
Multithreaded programming, usage of IPCs, Interrupts & synchronization methods.
Expertise in using the communication protocols (I2C, SPI & UART) in the device driver.
Expertise in handling Device Tree based configurations.
Strong C & C++ programming skills, OOPS concepts
Linux Architecture knowhow
Strong in software development for real-time embedded systems
Experienced in Design/Architecture Tools like EA
Expertise in SCM Tools like GIT/GERRIT
Ability to create and review changes for Gerrit and participate in a continuous integration loop
Ability to create/understand the build infranstructure using CMake for the middleware components
Experience in Unit test tools like cppunit, gtest.
Know-how and experience of SAFe/Agile Development
Knowledge in Automotive Safety Standards and Processes (ASPICE).
Logical, Analytical and Debugging/Problem-Solving skills
Qualifications
B.E/B.Tech in Computer Science with hands on with Embedded software development on RTOS
- Become a member of the team responsible for IoT hub software development. IoT hub provides IoT functionality (smart home, smart appliance,…) to mobile and web clients and runs on Linux-based host like smart home hub, broadband router, STB, etc.
- Implementation and/or extension of leading wireless/wired protocols (ZigBee, Bluetooth, IP-based,..) for communication with smart devices
- Development of new features for control and monitoring of smart devices and automation of IoT system
- IoT hub software porting on various hosts
- Software optimizations
Position: C++ Developer
Location: Hyderabad
Requirements:
- Strong C++ skills obtained in multiple years of C++ programming experience (at least 3 years)
- Good understanding of embedded system development based on Linux OS
- Knowledge of advanced programming concepts (e.g. Multi-Threading, OS internals, Networking, IPC mechanisms)
- Solid understanding of computer networking (TCP/UDP/MQTT/SSL)
- Solid understanding of Git source code management system
- Troubleshooting skills
- B.Tech/M.Tech/MCA in computer science/ECE/EEE
- Fluent English
- 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.
Develop, design, and implement embedded applications.
· Prepares appropriate documentation as required by internal product development processes
· Conducts and participates in design, code and test reviews and inspections, as well as the feasibility, efficacy and compliance to functional and regulatory standards.
· Works closely with the software team, the software verification team, the functional manager and the project manager.
· Collaborates with distributed, cross-functional teams to ensure products meet quality, performance, scalability, reliability and schedule goals.
· Investigates software, hardware, and system problems using a variety of techniques and provides innovative solutions.
· Conduct and participate in reviews and inspections for all elements in the firmware lifecycle to ensure that our code quality and customer satisfaction goals are achieved
· Integrate and validate new product designs
· Provide post-production support
Skill Sets:
- B.Tech. / M.Tech. (any stream)
· Good knowledge in firmware development field with more than 3 years of experience
· Basic knowledge of software life cycle, algorithm and data structure.
· Excellent knowledge of OS, coding techniques, IP protocols, interfaces and hardware subsystems
· Adequate knowledge of reading schematics and data sheets for components.
· Ability to understand the electrical schematics and work closely with electrical team.
· Experience with Real Time Operating Systems and Embedded Linux.
· Mode of network connectivity - good idea about GSM/GPRS, Wifi, Ethernet mode of connections. TCP, MQTT, HTTP mode of connection will be a big plus
· Protocols Like UART, SPI, I2C, CAN, MODBUS, TCP/IP, USB, Bluetooth.
· Experience in modules like Wi-Fi, BLE, Lora WAN, ZIGBEE, RF etc.
· Should have experience in working with TFT and LED displays.
· Extensive experience in micro-controller/microprocessor (like ARM Cortex M, ESP32, STM Chips, NXP, BeagleBone , ESP chips, BeagleBone black, STM Chips, Atmega chips etc.)
· Familiarity with software configuration management tools, defect tracking tools, and peer review (GIT, SVN)
· History of driving project execution and timely delivery while ensuring a quality focus.
· Experience writing / interfacing with device drivers.
· Experience in Agile development processes and philosophies.
· Strong documentation and writing skills
Mandatory Skills:
· Basics of embedded system development
· Embedded C/C++
· Scripting Lang - Python
· Basics of wireless communication
· RTOS
· Strong Problem-Solving Skills
· Analytical Skills (Good Aptitude)
· Communication Skills
- Extensive knowledge of linux kernel internals.
- Good knowledge of C programming language.
- Familiarity with any processor architecture, virtualization, storage and network management.
- Strong experience in debugging linux kernel mode
- Debugging experience across hardware and platform firmware.

- Perform technical feasibility studies of new technologies and architectures, including evaluation of OTS cloud offering.
- Generate entire software image for the target device, including the kernel, device drivers, libraries, and application software, and the bootloader for proprietary IOT connectivity device(s).
- Software packaging with RPM building and management
- Define the process to upgrade the new Linux package to existing hardware at customer premises
- Configuration and Troubleshoot of the proprietary IOT connectivity devices for internal R&D teams during their development and verification
- Automate the creation and distribution of keys and certificates
- Understand, implement, and automate security controls for IoT connectivity devices.
- Tune server and application-level performance monitoring and alerting.
- Help define our roadmap and architecture based on technology and business needs, considering architectural issues and tradeoffs
- Understand and manage integration points with other systems that interface with your applications
- Supports development of project plans, including scope, budget, schedules, and risk management.
- Works closely with the business analysts, software development and verification team, the functional manager, and the program manager.
- Collaborate and work with global teams in multiple locations.
- Interface with Global Privacy and Security team for the IoT Gateway understand security risks and recommendations and provide solutions to mitigate the security risks
- Bachelor’s degree in Computer Networking / Computer Science / Software Engineering or a related field
- 12+ years of hands-on experience in Networking, shell scripting, and Linux internals, with a development background.
- Strong understanding of Networking concepts like VPC, Route tables, Host base router firewall, SSH, NAT, DNS, DHCP, SNMP, Virtual IPs, VPN
- Linux System Administration and Networking work experience
- Configuring Firewalls(IP tables/firewall) and security software
- Able to generate Linux packages, and configure based on business needs.
- Passion for cybersecurity. Ability to build secured Linux packages with antivirus and security patches.
- Shell, Python scripting experience
- Basic SQL skills
- Ability to work with cross-functional and remote teams. Must be able to communicate in English, both written and verbal.
- Interpersonal skills to effectively collaborate with vendors and customers.
- Experience with Agile Scrum
- Development background in Java/C++
- DevOps knowledge
- Knowledge on javascript
- Develop or integrate with a Charging management system (CMS).
- Develop the backend for the apps (subscription, locating, reservation, payments, operation).
- Develop the backend for the host apps (setting availability, pricing).
- Develop the central dashboard for internal purposes.
- Develop the dashboard for monthly revenue remittance to hosts.
- Develop a dashboard for network partners.
- Develop the system for custom ad delivery in invoices.
- Setup, Deploy and Manage the servers and APIs.






