Roles and Responsibilities of a Senior Software Engineer
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 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 (which you may either develop on your own, or arrange with our kernel maintainers), and our messaging layer for storing data within Cephs RADOS distributed object store.
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 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 (which you may either develop on your own, or arrange with our kernel maintainers), and our messaging layer for storing data within Cephs RADOS distributed object store.
Requirements:
* 5-7 years of Experience working with C++ codebases, or other systems languages which includes:
* Live systems (via logging and interrogation) and examining core files, Good debugging skills
* Open sources, Git
* Basic knowledge of Python, to use and enhance testing
* Demonstrated ability to understand large codebases and develop new features
* Excellent English written and verbal communication skills, for our worldwide team
* 5-7 years of Experience working with C++ codebases, or other systems languages which includes:
* Live systems (via logging and interrogation) and examining core files, Good debugging skills
* Open sources, Git
* Basic knowledge of Python, to use and enhance testing
* Demonstrated ability to understand large codebases and develop new features
* Excellent English written and verbal communication skills, for our worldwide team
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
This position is open to all candidates.