We’re looking for a Software Engineer to join the Data Services group at HPE/ Nimble Storage. This is a perfect position for someone who is passionate about using the latest techniques and best practices to build and improve systems software that is scalable and best-in-class.
The purpose of your job: Design and develop software in the NimbleOS data path.
- Work with technical leaders and architects to understand new product requirements.
- Create functional specs and other design documentation.
- Design, code, test and debug components in Nimble Storage’s Data Services group.
- Implement new features in the CASL File System, Protocols and Performance.
- Work with other Data Services teams, QA, Customer Support and Platform teams to solve complex customer and release issues.
- Provide guidance to management and participate in technical communication with customers
- Design, develop and maintain features pertaining to the CASL file system for the Nimble Storage platforms. This includes the adaptive flash based hybrid as well as the All flash platform.
- Investigate options for optimizing performance of the data path by developing prototypes and iterating through measurements.
- Manages and expands relationships with development partners on software systems design and development.
- Reviews and evaluates designs and project activities for compliance with systems design and development guidelines and standards; provides tangible feedback to improve product quality and mitigate failure risk.
- Drives innovation and integration of new technologies into projects and activities in the software systems design organization.
- Debug and fix issues that are reported as a part of new feature testing or as a part of the sustaining process for released/deployed software;
Education and Experience Required:
- Master's degree in Computer Science, Information Systems, or equivalent.
- Bachelor's degree with at least 5 years of industry experience.
Knowledge and Skills:
- Excellent analytical and problem solving skills.
- Must have in depth knowledge of OS internals and very strong system programming background with C/C++.
- Strong command over data structures and ability to develop optimized algorithms.
- Must be able to trouble shoot issues on complex multi-threaded systems.
- Knowledge of file systems and/or storage protocols (iSCSI/SCSI, FC, NFS, CIFS) would be desirable.
- Experience with persistent storage such as NVRAM would be a huge plus.
- Ability to write clear and articulate functional and design specifications.
- Ability to work independently and manage multiple priorities in a fast-paced environment and take on a variety of roles as needed
Job ID 1025080