Linux Kernel Developer ( C Programing & Memory Management)
- Remote
- Sao Paulo, São Paulo, Brazil
- Technological Solutions
Job description
C Programming & Memory Management)
Location : Remote
Job Summary:
We are seeking a skilled Linux Kernel Developer to join our team, specializing in C programming, Linux kernel development, and memory management libraries. This role will focus on building, optimizing, and maintaining kernel-level components and memory management libraries to ensure robust system performance, efficiency, and reliability.
Key Responsibilities:
- Develop, modify, and maintain Linux kernel modules using C, with a focus on performance, scalability, and maintainability.
- Implement and optimize memory management functions and libraries, improving efficiency in memory allocation, deallocation, and data integrity.
- Design and develop new kernel components and features, particularly related to memory management and low-level system operations.
- Debug and troubleshoot kernel-level issues, using tools like gdb, strace, and other debugging utilities.
- Perform code reviews, optimize existing code, and adhere to best practices in kernel development.
- Collaborate closely with system architects, embedded software engineers, and hardware engineers to ensure seamless integration and optimal performance.
- Contribute to documentation, including technical specifications, code documentation, and user guides for kernel components and memory management libraries.
Job requirements
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, or related field, or equivalent practical experience.
- 3+ years of experience in C programming, with strong skills in low-level programming and understanding of memory management.
- Proficiency in Linux kernel development, including experience with kernel internals, modules, drivers, and debugging techniques.
- Solid understanding of memory management principles within the Linux operating system (paging, caching, memory mapping, etc.).
- Familiarity with tools and libraries used in Linux kernel development, such as GCC, Make, Git, and patch utilities.
- Knowledge of data structures, algorithms, and optimization techniques for performance-critical code.
- Ability to write clear, maintainable, and well-documented code.
- Strong problem-solving skills and experience troubleshooting issues at the kernel level.
- English required
Preferred Skills:
- Experience with virtualization technologies, system calls, and hardware interface knowledge.
- Contributions to open-source projects, especially within the Linux kernel community.
- Understanding of multi-threading, synchronization, and concurrency issues in low-level software.
or
Apply with Indeed unavailable
All done!
Your application has been successfully submitted!