We are seeking a highly skilled Senior Developer with expertise in C programming, Linux, and debugging. The ideal candidate will have a deep understanding of data structures and algorithms, coupled with strong problem-solving abilities and experience in system-level programming. You should be able to comprehend complex code quickly and demonstrate a robust grasp of operating system internals and debugging tools.
Key Responsibilities
- Deep Product Understanding. Gain an in-depth understanding of the product and its architecture, and expand knowledge across various components.
- Problem Solving. Utilize strong problem-solving skills to diagnose and resolve complex product defects efficiently.
- Code Comprehension. Quickly understand and work with complex codebases written by others.
- Rapid Learning. Demonstrate the ability to swiftly learn and adapt to new technologies.
- System-Level Programming. Engage in system-level programming, leveraging your expertise in C, multi-threaded programming, and operating system internals.
- Debugging. Employ strong debugging skills on the Linux platform using tools like Valgrind, GDB, and GCC.
- Storage Experience. Apply your knowledge of storage systems in your role.
- Customer Focus. Maintain a strong focus on customer satisfaction, addressing issues promptly and effectively.
- Multi-Tasking. Manage multiple tasks and adapt to shifting priorities as needed.
- Team Collaboration. Collaborate effectively with cross-functional teams, displaying excellent communication skills and teamwork.
Required Skills
- Programming Expertise. Proficient in C programming with a solid understanding of data structures, algorithms, multi-threaded programming, STL, templates, and design patterns.
- Linux Proficiency. Strong debugging skills on the Linux platform and experience with system-level programming.
- OS Internals Knowledge. Comprehensive knowledge of operating system internals including IPC, memory management, and process management.
- Debugging Tools. Hands-on experience with debugging tools such as Valgrind, GDB, and GCC.
- Storage Systems. Experience working with storage systems.
- Communication. Excellent communication skills with the ability to work effectively across teams.
Qualifications
- Bachelor's degree in Computer Science or a related field.
- 2 to 10 years of relevant experience in C programming, Linux, and system-level programming.
Why Join Us?
- Impactful Work. Contribute to cutting-edge projects that make a real difference.
- Growth Opportunities. Expand your skill set and advance your career in a dynamic and supportive environment.
- Collaborative Culture. Work with a talented team in a collaborative and innovative setting.
Apply today to become a part of our team and help drive technological advancements in our products!