11+ DMA Jobs in Bangalore (Bengaluru) | DMA Job openings in Bangalore (Bengaluru)
Apply to 11+ DMA Jobs in Bangalore (Bengaluru) on CutShort.io. Explore the latest DMA Job opportunities across top companies like Google, Amazon & Adobe.
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.
Internship Opportunity – Embedded Systems & IoT
Join our hands-on internship program designed for engineering students passionate about core tech. You'll work on real-time projects involving microcontrollers, sensors, RTOS, circuit design, and IoT protocols.
Gain exposure to AI-integrated embedded applications and build a strong project portfolio with mentorship and placement support.
Location: Bangalore (Hybrid/On-site)
Duration: 2–3 months
Eligibility: Final-year students and pre final year (ECE/EEE/CSE/Mechatronics)
#EmbeddedSystems #IoTInternship #EngineeringInternship #CoreTechCareers #Microcontrollers #RTOS #PCBDesign #IoTProjects #KnowxInnovations #AIoT #TechInternship #SkillDevelopment #HandsOnLearning #BangaloreInternship #StudentInternship
Requirements:
- 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.
Talented C++ Developer who has experience in design, development, debugging of multi-threaded large scale application with good understanding in data structures on Linux packaging, functional testing and deployment automation very good with problem solving.
Key responsibilities :
- Understand fundamental design principles and best practices for developing backend servers and web applications
- Gather requirements, scope functionality, estimate and translate those requirements into solutions
- Implement and integrate software features as per requirements
- Deliver across the entire app life cycle
- Work in a product creation project and/or technology project with implementation or integration responsibilities
- Improve an existing code base, if required, and ability to read source code to understand data flow and origin
- Design effective data storage for the task at hand and know how to optimize query performance along the way
- Follow an agile methodology of development and delivery
- Strictly adhere to coding standards and internal practices; must be able to conduct review code
- Mentor and possibly lead junior developers
- Contribute towards innovation
- Performance optimization of apps
- Explain technologies and solutions to technical and non-technical stakeholders
- Diagnose bugs and other issues in products
- Continuously discover, evaluate, and implement new technologies to maximize development efficiency
Must have / Good to have:
- 5-7years' experience with C++ development and relevant 3+yrs in modern version 11/14/17 would be a plus.
- Design and implementation of high-availability, and performance applications on Linux environment
- Advanced knowledge of C/C++, Object Oriented Design, STL
- Good with multithreading and data structures
- Develop back-end components to improve responsiveness and overall performance
- Familiarity with database design, integration with applications and python packaging.
- Familiarity with front-end technologies (like JavaScript and HTML5), REST API, security considerations
- Familiarity with functional testing and deployment automation frameworks
- Experience in development for 3-4 production ready application using C++ as programming language
- Experience in writing unit test cases including positive and negative test cases
- Experience of CI/CD pipeline code deployment (Git, SVN, Jenkins or Teamcity)
- Experience with Agile and DevOps methodology
- Very good problem-solving skills
- Experience with Web technologies is a plus.
Read less
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.
Job Description:
WLAN Linux Device Driver development (802.11ax preferred)
- WLAN Debugging
- WLAN Firmware development (802.11ac, 802.11n)
- Networking/Wireless Domain knowledge
- Hostapd, Supplicant
- Cross compiling/porting experience
- Performance optimization & Firmware enhancements
Must have Skills:
- 1-10 years of experience in Embedded Software Design, Implementation and testing
- Good knowledge of C or C++
- Basic knowledge in Scripting (Shell, Perl or Python)
- Proficiency in Problem Solving and Debugging skills
- Excellent team working skills
- Experience with version control e.g. GIT
- Basic experience of working in Linux OS
- Network Drivers
- WLAN Protocol Knowledge – 11n, 11ac
- WLAN Linux Device Drivers
- Hostpad, Supplicant
- WLAN Debugging
- Fluent in English
Desired Candidate Details:
- Design, development, and maintenance
- WLAN Stack development and debugging
- Feature Enhancements, Applications, Tools for SDKs
- Basic module level unit testing, System testing
- Providing support to technical documentation team and field application engineers
- Close collaboration with the Chipset Vendor on the Software Development
- Participations in the Product design and Software Design Documentation – High level / Module level / Low level design
- Troubleshooting software and architectural issues
We are looking for a seasoned Wireless LAN Software Engineer to join our Wireless & Networking team in Chennai, Pollachi, Kochi (Cochin), Gurugram, Manesar, Bengaluru (Bangalore). The candidate must be an experienced Engineer and a good team player, who will work on Wireless software solutions which will enable us to develop the products for our customers quickly with industry leading quality. Working with Embedded Software in agile development projects, you will be responsible for creating and maintaining software of Wireless Access Point and Router Products including Module design, Development, JIRA Updates and Unit testing of the Software that is meeting industry standards, creating demos of the solution and customer support.
Job Description:
Looking for engineers with one of the below requirements:
- 2-5 years of embedded development experience in a Linux environment with C programming
- With Option1:
- EDK2 experience
- SCT experience
- knowledge of TPMs
- With Option2:
- worked on bootloaders or uboot
o Acceptance criteria: Shall have working experience in creating architectures for at least
4 projects.
Shall be strong in Object-Oriented Design and Thinking.
Shall be strong in documenting software architecture and communicating the same using UML.
Shall be strong in decomposing larger system into smaller units with clear implementation
dependencies marked for planning.
Shall be strong in effort estimation techniques.
Shall possess strong Problem Solving and Analytical Skills.
Shall be strong in C or C++ programing language experience.
Shall possess good understanding of either Linux or QNX or Android Operating Systems
Shall have a strong experience in developing software using in POSIX APIs.
Shall have a strong understanding on Networking, socket programming and working experience
in at least one of the IPC Frameworks like DBUS, SOME/IP, Binders etc.
Working experience with test framework and automation projects such as Robot Framework.
Knowledge on various software licenses and their compatibilities.
Shall posses strong knowledge in bootloaders, system startup, power management, persistency
management, health management and diagnostics framework for automotive systems.
Shall have a good knowledge on Functional Safety.
Shall have a good understanding hardware and processor internals.
Nice to haves:
Knowledge or working experience in AUTOSAR and / or Adaptive Autosar.
Understanding of GNU/Linux and its device driver framework.
Knowledge in “Secure Programming Techniques” is a plus.
Understanding in ARM Trusted Frameworks, Bootloaders & Virtualization Solutions is a plus.
Involvement in open-source projects in the past is a plus.
Knowledge in Package management and installers.
Hands on experience in developing low level software for microcontroller based environments with ARM/Cortex processors or similar.
must do a Project:Linux Device Drivers
Experience in all aspects of designing and developing SW in C/C++ language for embedded platforms.
Advance level knowledge of modern microprocessor architecture – MMU, Caches, Exceptions, interrupts, instruction sets etc.
Experience in working with multiple common h/w interfaces like USB, Ethernet, PCIe, DDR controller, DMAC etc.
Device driver or stack development in at least one major Operating system for at least one complex interface.
Experience in SW protocol stacks like USB, TCP/IP, File system etc.
Experience in Board Bring up, Device drivers, Firmware, Boot Loaders, Tool chains & Build systems.
Understand project requirements, customer use cases & specifications for features and convert them to standout software. Initiate and drive Test strategies and Test plan design for software.
Key Skills
Linux Device Driver , DSP knowledge preferred
Required Experience and Qualifications
B.Tech/B.E



