
Job Summary
We are seeking a highly skilled and motivated Linux Device Driver Engineer with strong C/C++ programming skills and hands-on experience in Linux driver development. The ideal candidate will have a proven track record of working with kernel modules and hardware interfaces, and be comfortable debugging and optimizing low-level system software.
Key Responsibilities
- Porting existing Linux device drivers to new platforms, SoCs, and kernel versions.
- New driver development for custom hardware components and peripherals.
- Debugging kernel and driver-level issues using industry-standard tools.
- Integration & bring-up of hardware with Linux-based systems.
- Collaborate with hardware teams to interpret specifications and enable device functionality.
- Optimize drivers for performance, reliability, and resource efficiency.
- Write clear technical documentation for driver APIs, design, and integration steps.
Required Skills & Qualifications
- Bachelor’s/Master’s in Computer Science, Electronics, or related field.
- 4 to 8 years of professional experience in software development.
- Strong proficiency in C/C++ programming and memory management.
- Hands-on experience with any Linux device driver (character, block, network, USB, PCIe, I2C, SPI, etc.).
- Good understanding of Linux kernel architecture, module programming, and build systems.
- Knowledge of interrupt handling, DMA, and device tree configuration.
- Familiarity with cross-compilation and embedded Linux toolchains.
- Experience with debugging tools (GDB, ftrace, perf, printk, etc.).
- Version control experience (Git).
Preferred Skills
- Exposure to multiple driver types (networking, storage, multimedia, etc.).
- Experience with Yocto, Buildroot, or similar embedded Linux environments.
- Knowledge of real-time Linux and RT patches.
- Scripting knowledge (Python, Bash) for testing and automation.
Soft Skills
- Strong analytical and debugging skills.
- Good communication and collaboration abilities.
- Ability to work independently and take ownership of deliverables.

About TechSkillio
About
Company social profiles
Similar jobs

JOB DESCRIPTION:
Position : Linux BSP developer
Location : Bangalore
Experience : 3 to 10 Years
Requirements :
- 3 to 10 Years of proficiency working on C and Embedded Linux BSP (Board Support Package).
- Highly proficient and possess working in Linux kernel and Linux device drivers.
- Hands on experience on working on platform of MIPS, ARM etc.
- Working knowledge and strong understanding of Device Tree.
- Understanding of Make files, their customization and Cross Compilation and Shell scripting.
- Experience in working on U-boot.
- Video and Camera domain knowledge will be a BIG advantage.
- Knowledge of secure boot would be an added advantage.
Required Skills:
- 4+ years of experience in embedded software development.
- 2 - 4 years of hands-on experience in C/C++ programming.
- Knowledge of TCP/IP internals and common network protocols such as DHCP, DNS, IPV4/IPV6, NAT
- In-depth knowledge of Layer 2 and Layer 3 protocols (Ethernet, IP, TCP/UDP, MPLS, BGP, OSPF)
- In-depth knowledge of RDK-B architecture, TR-069/TR-181, and networking stacks
- Work on TR-069, TR-181 data models, and DOCSIS / DSL / GPON technologies
- Experience and knowledge on IEEE802.11/Wi-Fi protocols such as WPA, RADIUS, WPS, 802.11n/ac/ax/be, mesh networking
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.
- Experience 4 - 8 years
- Key Skills for Software Developer C++, Linux :
- - Looking only for candidates who can join immediately or max 10 day
- - should be able to work independently with no handholding
- - the ability to work with C/C++ code on Windows/Linux platforms
- - Database knowledge of MSSQL, Oracle, MySQL/MariaDB, ideally other ones too: Saphana, Teradata, Postgres.
- - Ability to work on their own fixing defects
- - should be able to understand secure coding practices
- - should have the Ability to work independently and with the team across different time zones
Job Description
We are a growing company looking for an efficient systems engineer to help us expand our computing infrastructure. The systems engineer's responsibilities include working with a team of IT specialists to design, set up and maintain a network of computers, including hardware, software, and system architecture.
To be successful in this position, the systems engineer should be a highly motivated, results-driven individual who can create the perfect solution for our organization's higher-level needs. The best candidate will also be an excellent listener and communicator, with the ability to explain why their solutions are the best fit for us.
Responsibilities:
Overseeing the development and installation of new networking and computing infrastructures.
Selecting the best possible solutions using knowledge of a wide range of available technologies.
Monitoring systems in the existing network to ensure there are no productivity set-backs.
Installing and configuring operating systems and application software.
Implementing best practices for system security and data backups.
Anticipating potential issues or bottlenecks and identifying possible solutions.
Troubleshooting and resolving all technical issues when they arise.
Provide detailed specifications for proposed solutions including materials, manpower and time necessary
Communicating effectively with IT support staff to ensure the setup process runs smoothly.
Liaising with vendors and keeping relevant stakeholders up to date with developments.
Systems Engineer Requirements:
Bachelor's degree in computer science, information systems, or related field (Master's preferred).
Proven track record of installing, configuring, and troubleshooting UNIX-based systems.
Exceptional knowledge of networking technologies (OSI network layers, TCP/IP).
Familiarity with administration, performance tuning, and system monitoring.
Good communication skills (written, verbal, and face-to-face).
Experience-3-4years
Salary- 10LPA
Industry
Information Technology & Services
Industry
Information Technology & Services
Employment Type
Full-time
C/C++ Developer
We’re doing things no one has ever done. From developing game-changing technology and solutions to
helping the world’s top brands connect like never before, every day brings new challenges and opportunities
to innovate. We offer the chance to make your mark on something awesome.
What are we looking for?
Strong C/C++ programming and debugging skills in a Linux environment.
Experience with Design Patterns, ACE Framework, and Socket Programming.
Experience in Multi-threaded software development for Multicore Architectures.
Experience in VOIP application development, preferably on client/server platforms.
Understanding of system performance and scaling
Experience in embedded software development
Excellent problem solving/debugging skills design, develop, troubleshoot and debug
Software programs for databases, applications, tools, networks etc.
Requirements:
Bachelor's degree in Computer Science or related field or equivalent experience.
3-6 years of software engineering or related experience.
Location: Bangalore/Hybrid Model
Developer Software (Embedded)
Location: Udaipur
Qualification: BE in (Electrical/Electronic Engineering)
Technical
· Experience in design and development with structured Software Development Life Cycle for embedded applications
· Proficiency in C language or assembly programming, Microcontroller, Micro Processor.
· Preferably experience in working and understanding the metering domain
· Proficiency in development processes, tools/IDE (KEIL, IAR, Eclipse) & test automation
· Unit testing skill
· Interface RS485, RS232, SPI, I2C, USB, LCD, Keypad, Flash, EEPROM
· Coding Standards and MISRA rules are preferable
· Knowledge of ARM / MIPS / Coldfire / MSP430 / dsPIC / 8051 and other popular processor
· Experience in working on communication products based on GPRS, ZIGBEE, ZWAVE, Ethernet, Power line communication, DLMS, MODBUS
Job Description
· Understand improvement requirements and develop improvement solutions & package, according to technical specifications / high-level solution design
· Responsible to carry out effective and timely unit testing, in order to, deliver first time right solutions
· Development of automation framework/compiler / emulators to speed up business delivery cycle in NPI programs
· Keep track of new trends, continuously learn and self-develop skills by ensuring effective knowledge sharing through group meetings and training. Impart training to new joiners as and when assigned
· Proficiency in developing embedded software design with high reusability using relevant tools and BSM or flow diagram
Experience in Object-Oriented design and Multithreaded programming
Strong analytical and problem solving skills
Strong understanding of computer systems e.g. operating systems, networks, performance optimization, etc
Degree in Computer Science or Computer Engineering or related field
Independent team player with an eye for details and report on status and planning of own work.








