Senior Staff Software Engineer – NFS Protocol
About Hammerspace:
Hammerspace delivers a Global Data Environment that spans data centers, AWS, Azure, and Google cloud infrastructure. With origins in Linux, NFS, Open standards, Flash and deep file system and data management technology leadership, Hammerspace delivers the world’s first and only solution to connect global users with their data and applications, on any existing data center infrastructure or AWS, Azure, and Google services. For more information, please see our website at: https://hammerspace.com
About the role:
Hammerspace is seeking a highly skilled and experienced Senior Staff Software Engineer to join our team, focusing on the development and enhancement of NFS (Network File System) protocols, up to and including NFS4.2. The successful candidate will play a pivotal role in our distributed Hyperscale NAS product, contributing to its robustness, performance, and scalability.
Responsibilities
- Protocol Development: Work with Software Architects and Product Management to design, implement, optimize, and enhance product features related to our implementation and use of various versions of the NFS protocol stack.
- Architecture and Design: Collaborate with all key stakeholders to define and refine the overall system architecture, leading design reviews and providing guidance on best practices for protocol implementation.
- Code Development and Review:
- Write, review, and maintain high-quality code in accordance with industry standards and best practices. Conduct and submit to thorough code reviews to ensure consistency and quality.
- Write and maintain unit test code alongside feature code to fully test code ensuring initial and future quality as features continue to evolve.
- Write clear and understandable code which lends itself to greater ease of maintenance.
- Test Automation: Work with members of the engineering organization to automate and improve internal development and test workflows using DevOps best practices.
- Focus on Quality: Work collaboratively and cooperatively with the test team to provide TOIs (Transfers of Information) and review test plans and test automation.
- Customer Support: Work with Customer Support and customers, if needed to resolve issues in the field, working with urgency to ensure customers’ needs are being met and the end users are overjoyed with the Hammerspace products that they use.
- Remote Collaboration: We are a fully remote workforce and have an employee presence around the world. The ideal candidate will communicate effectively via Slack, Zoom, Email, Confluence, Jira and Bitbucket.
- Mentorship: Provide technical leadership and mentorship to junior engineers, fostering a culture of continuous learning and improvement within the team.
- Community Participation: Hammerspace is involved in the IETF and Linux Open-Source communities. The ideal candidate will have experience in participation with these organizations, giving back in one or more ways.
Qualifications
- Expertise and a genuine interest in client and server development at the kernel level and in the NFS protocol space.
- Extensive experience in Distributed File System Design and Storage Data Management
- Preferred experience working for a Data storage / data management company
- Expertise in C/C++ or related system level languages
- Strong OS fundamentals, excellent algorithm and logic development skills using data structures
- Deep understanding of the fundamentals of RPC, NFS, Kerberos and Name Services Protocols like DNS, LDAP, AD and NIS.
- Experience debugging complex issues in an HA (Highly Available) distributed environment.
- Experience integrating and troubleshooting open-source packages.
- Working knowledge of source control management systems such as Git.
- Experience delivering and supporting features across multiple releases and multiple concurrent development branches.
- 10+ years of related experience with a BS in Computer Science/Engineering or 8+ years of related experience with a MS in Computer Science/Engineering.
Additional Desired Skills:
- Experience with other NAS protocols like SMB, CIFS and S3
- Experience and proficiency with other distributed file systems like Lustre, Gluster, Ceph, etc.
- Demonstrated contributions to open-source projects related to NFS or distributed file systems and/or active participation at IETF conferences.
- Experience with other related distributed systems building blocks like virtual machines, containers, Kubernetes, Kafka or other event streaming databases.
- Networking domain knowledge.
- Experience with debugging tools such as GDB, KDB, ASAN, Valgrind, Perf, and in particular, real-time debugging and analysis using eBPF.
- Familiarity with deploying virtual machines in AWS, Azure, and Google Cloud.
The anticipated base salary range for this role is $140,000 to $200,000. Actual compensation will be determined by several factors including, but not limited to, level of professional/education experience, skills/abilities, internal equity, and budgetary considerations. In addition, Hammerspace offers a broad range of health plans for medical, dental, vision, life and disability. We also offer 401k plans and flexible time off.
Please send your resume to careers@hammerspace.com
Hammerspace is an Equal Opportunity Employer. Qualified applicants will receive consideration for employment without regard to race, color, gender, religion, sex, sexual orientation, age, disability, military status, or national origin or any other characteristic protected under federal, state, or applicable local law.
Notice to Recruiters and Staffing Agencies:
Agencies are hereby specifically directed not to contact Hammerspace employees directly in an attempt to present candidates. To protect the interests of all parties, Hammerspace will not accept unsolicited resumes from any source other than directly from a candidate. Any unsolicited resumes sent to Hammerspace will be considered Hammerspace property. Hammerspace will not pay a fee for any placement resulting from the receipt of an unsolicited resume. Hammerspace will consider any candidate for whom an Agency has submitted an unsolicited resume to have been referred by the Agency free of any charges or fees.
Agency must obtain advance written approval from Hammerspace’s recruiting function to submit resumes, and then only in conjunction with a valid fully-executed contract for service and in response to a specific job opening. Hammerspace will not pay a fee to any Agency that does not have such agreement in place.