HamburgerMenu
hirist

System Software Engineer - C/C++ Programming

Dash Hire
Anywhere in India/Multiple Locations
3 - 5 Years

Posted on: 10/11/2025

Job Description

Description :



Job Summary :


We are looking for a skilled System Software Engineer to design, develop, and maintain low-level system software that powers our hardware and infrastructure platforms.


The ideal candidate will have deep knowledge of operating systems, kernel-level programming, hardware-software integration, and performance optimization.



This role involves working closely with hardware, firmware, and platform teams to build reliable, efficient, and scalable system components that form the foundation of our technology stack.


Key Responsibilities :



- Design, develop, and optimize system-level software, including kernel modules, device drivers, network stacks, or embedded components.



- Work on operating system internals such as memory management, process scheduling, file systems, or I/O subsystems.


- Implement software interfaces for hardware components and integrate them with higher-level applications.


- Write efficient, reliable, and maintainable code using languages like C, C++, or Rust.


- Perform low-level debugging and system performance tuning.


- Collaborate with hardware and firmware engineers to define system requirements and

integration specifications.


- Participate in system architecture design, ensuring scalability, robustness, and efficient use of

system resources.


- Develop and maintain platform-level APIs and SDKs for internal and external developers.


- Support the integration of operating systems (Linux, RTOS, or custom OS) with hardware

platforms.


- Develop unit and integration tests for system components.


- Conduct performance benchmarking and identify opportunities for system optimization.


- Use advanced debugging tools (e.g., GDB, Valgrind, perf, strace) to identify and resolve low-

level issues.


- Collaborate with QA and DevOps teams to automate system testing and validation.


- Create detailed technical documentation, including design documents, API references, and

system diagrams.


- Participate in design reviews, code reviews, and peer programming sessions.


- Collaborate with cross-functional teams including hardware, firmware, cloud, and application developers to ensure smooth integration across layers.


- Stay current with emerging trends in system software, OS kernels, hardware acceleration, and virtualization.


- Evaluate new technologies and tools to improve system reliability, security, and performance.


- Contribute to architectural decisions and long-term system roadmap planning.


Required Qualifications :



- Bachelors or Masters degree in Computer Science, Computer Engineering, Electrical Engineering, or related field.


- 3 - 8 years of experience in system software development or related domains.


- Strong programming skills in C, C++, or Rust.



- Solid understanding of operating system concepts, including memory management, concurrency, and I/O systems.


- Experience with Linux/Unix system programming and kernel internals.


- Familiarity with device drivers, bootloaders, or embedded systems development.


- Knowledge of network protocols, multithreading, and inter-process communication (IPC).


- Proficiency with debugging and profiling tools (GDB, perf, strace, etc.)


- Understanding of version control systems (Git) and build tools (Make, CMake, Bazel)


info-icon

Did you find something suspicious?