Logo
IBM

CephFS Senior Software Engineer

IBM, San Jose, California, United States, 95199


Introduction At IBM, work is more than a job - it's a calling: To build. To. To code. To consult. To think along with clients and sell. To make markets. To invent. To collaborate. Not just to do something better, but to attempt things you've never thought possible. Are you ready to lead in this new era of technology and solve some of the world's most challenging problems? If so, lets talk.

Your Role and Responsibilities IBM’s Ceph[1] engineering organization is looking for a senior software engineer to join the CephFS team. In this role you will collaborate with our worldwide Ceph engineering team to develop and enhance CephFS[2], the file system component of the Ceph software-defined distributed storage system. You will design and implement new capabilities and features to enable new use cases while improving scalability, performance and efficiency. You will participate in a vibrant and active open source community[3] to deliver enterprise-quality software.

CephFS comprises a wide-ranging software suite including (upstream) Linux kernel and userspace clients, a clustered userspace metadata server, and a messaging layer for storing data with Ceph’s native object store (“RADOS”), in addition to higher-level APIs for integrating with other systems (OpenStack, OpenShift, an NFS-Ganesha cluster, Samba, etc). As a member of the CephFS engineering team, you will have the opportunity to learn and work in many of these areas according to your experience and technical background. Candidates will be excited to develop new distributed algorithms to build out end-user features of the filesystem, such as instant cloning, file overlays, and coherent snapshots across multiple clients with a coherent distributed cache. Developers who are able to work across both the userspace servers and Linux kernel client to develop new distributed features will make ideal candidates.

You will work remotely with a worldwide team so communication is key. You will collaborate with others using modern open source tools including git (and GitHub), Jenkins, Redmine, and community-developed testing and validation tools.

Role & Responsibilities: You will work closely with the global Ceph open-source, multi-company engineering team to develop and enhance CephFS, the file system component of the Ceph software-defined distributed storage system. You will collaborate with other developers and users by attending online meetings, participating in email lists and online chat rooms, preparing written documentation, and giving presentations about your work. You will be expected to work proactively with other team members and the community to develop your own knowledge, and to be ready to mentor new contributors as you develop expertise.

Contribute to the development of CephFS by designing and implementing new functionalities that enable innovative use cases. This includes designing new distributed algorithms, implementing them across clients and servers, and writing automated test cases to demonstrate they work. You will also identify and fix bugs and propose performance enhancements. This will involve work across our C++-language Metadata Server cluster and userspace clients, our Linux in-kernel client, and our messaging layer for storing data within Ceph's "RADOS" distributed object store. [1]: https://ceph.io/en/news/publications/ , https://www.youtube.com/c/Cephstorage [2: ] https://docs.ceph.com/en/quincy/cephfs/ , https://youtu.be/cNAxNSzZqzo?t=1311 [3]: https://github.com/ceph/ceph , https://tracker.ceph.com/projects/cephfs

Required Technical and Professional Expertise Experience working with C++ codebases, or other systems languages and demonstrated ability Good debugging skills. Experience with live systems (via logging and interrogation) and examining core files Basic knowledge of Python, to use and enhance testing Experience in git Demonstrated ability to understand large codebases and develop new features Preferred Technical and Professional Expertise

Experience with data storage and/or file systems Experience building distributed systems Experience working on distributed teams is a plus Past contribution to open source projects is favorable Linux kernel experience is a plus

About Business Unit IBM Systems helps IT leaders think differently about their infrastructure. IBM servers and storage are no longer inanimate - they can understand, reason, and learn so our clients can innovate while avoiding IT issues. Our systems power the world’s most important industries and our clients are the architects of the future. Join us to help build our leading-edge technology portfolio

designed for cognitive and optimized for cloud computing.

Your Life @ IBM In a world where technology never stands still, we understand that, dedication to our clients success, innovation that matters, and trust and personal responsibility in all our relationships, lives in what we do as IBMers as we strive to be the catalyst that makes the world work better.

Being an IBMer means you’ll be able to learn and develop yourself and your career, you’ll be encouraged to be courageous and experiment everyday, all whilst having continuous trust and support in an environment where everyone can thrive whatever their personal or professional background. Our IBMers are growth minded, always staying curious, open to feedback and learning new information and skills to constantly transform themselves and our company. They are trusted to provide on-going feedback to help other IBMers grow, as well as collaborate with colleagues keeping in mind a team focused approach to include different perspectives to drive exceptional outcomes for our customers. The courage our IBMers have to make critical decisions everyday is essential to IBM becoming the catalyst for progress, always embracing challenges with resources they have to hand, a can-do attitude and always striving for an outcome focused approach within everything that they do. Are you ready to be an IBMer? About IBM IBM's greatest invention is the IBMer. We believe that through the application of intelligence, reason and science, we can improve business, society and the human condition, bringing the power of an open hybrid cloud and AI strategy to life for our clients and partners around the world.

Restlessly reinventing since 1911, we are not only one of the largest corporate organizations in the world, we’re also one of the biggest technology and consulting employers, with many of the Fortune 50 companies relying on the IBM Cloud to run their business.

At IBM, we pride ourselves on being an early adopter of artificial intelligence, quantum computing and blockchain. Now it’s time for you to join us on our journey to being a responsible technology innovator and a force for good in the world.

Location Statement IBM offers a competitive and comprehensive benefits program. Eligible employees may have access to:

- Healthcare benefits including medical & prescription drug coverage, dental, vision, and mental health & well being - Financial programs such as 401(k), cash balance pension plan, the IBM Employee Stock Purchase Plan, financial counseling, life insurance, short & long- term disability coverage, and opportunities for performance based salary incentive programs. - Generous paid time off including 12 holidays, minimum 56 hours sick time, 120 hours vacation, 12 weeks parental bonding leave in accordance with IBM Policy, and other Paid Care Leave programs. IBM also offers paid family leave benefits to eligible employees where required by applicable law. - Training and educational resources on our personalized, AI-driven learning platform where IBMers can grow skills and obtain industry-recognized certifications to achieve their career goals. - Diverse and inclusive employee resource groups, giving & volunteer opportunities, and discounts on retail products, services & experiences. The compensation range and benefits for this position are based on a full-time schedule for a full calendar year. The salary will vary depending on your job-related skills, experience and location. Pay increment and frequency of pay will be in accordance with employment classification and applicable laws. For part time roles, your compensation and benefits will be adjusted to reflect your hours. Benefits may be pro-rated for those who start working during the calendar year. This position was posted on the date cited in the key job details section and is anticipated to remain posted for 21 days from this date or less if not needed to fill the role. We consider qualified applicants with criminal histories, consistent with applicable law.

Being You @ IBM IBM is committed to creating a diverse environment and is proud to be an equal-opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, gender, gender identity or expression, sexual orientation, national origin, caste, genetics, pregnancy, disability, neurodivergence, age, veteran status, or other characteristics. IBM is also committed to compliance with all fair employment practices regarding citizenship and immigration status.