The HPE Software Development Engineer – Data Storage and AI led Manageability is a senior engineer responsible for building world class products for automating the support and self-healing of the HPE Primera storage arrays with AI. The position/person is responsible for design and implementing a high quality software that fuel the autonomous supportability of HPE Storage leveraging advanced AI technologies.The position entails collaboration with peer engineers, cross functional teams like product management, release management, documentation and senior technical and management leadership, to help realize the product and it's releases from conception to delivery. The engineering specialist will have strong domain expertise in Storage Infrastructure, hands-on with modern DevOps tools and processes, have significant experience with AI/Deep Learning/Machine Learning implementation and highly proficient with modern software programming languages like Python, GoLang and Java. Extensive working experience with any of the Big Data tech stacks like Kafka, Elasticsearch, Cassandra, MapR etc. is a preferred. The position demands full-stack development experience.What You'll Do:
Design – You will design key components of the Primera ML-led storage management modules. The components you design will significantly improve the autonomous functioning of Primera arrays, and render the overall deployment of applications on Primera in an intelligent and optimized manner, as well as ensuring high up times.
Implement – You will code and test (unit and functional) the autonomous array supportability software modules in the most secure, performant and extensible fashion. You will use advanced programming principles in an efficient and unconstrained fashion. You will code to realize the functionality to be right, the first time, and unit tests will cover for 100% of the new code that you write. You will be responsible for the full code stack.
Process – you will embrace 'agile' methodologies and deliver within the constructs of an agile SCRUM team. You will demonstrate a strong understanding of Cost of Quality and adhere to the ‘shift-left’ process to assure code quality.
Designs, develops, troubleshoots and debugs software programs for software enhancements and new products. Develops software including operating systems, compilers, routers, networks, utilities, databases and Internet-related tools. Determines hardware compatibility and/or influences hardware design.Responsibilities:
Education and Experience Required:
- Leads multiple project teams of other software systems engineers and internal and outsourced development partners responsible for all stages of design and development for complex products and platforms, including solution design, analysis, coding, testing, and integration.
- Manages and expands relationships with internal and outsourced 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.
- Provides domain-specific expertise and overall software systems leadership and perspective to cross-organization projects, programs, and activities.
- Drives innovation and integration of new technologies into projects and activities in the software systems design organization.
- Provides guidance and mentoring to less- experienced staff members.
Knowledge and Skills:
- Bachelor's or Master's degree in Computer Science, Information Systems, or equivalent.
- Typically 6-10 years experience in Data Storage and AI led manageability products
- Strong C, Python, GoLang, and Java language skills with solid storage and IaaS background with aptitude to pick up ML/AI and BigData
- Experience in building world class products with autonomous supportability by leveraging advanced AI technologies.
- Strong domain expertise in Data Storage and IaaS, along with proficiency in AL/ML implementation with modern software programming languages like Python, GoLang and Java.
- Extensive working experience with the Big Data technology stacks like Kafka, Elasticsearch, Cassandra, and MapR.
- Extensive working experience in DevOps tools and processes, and agile methodologies.
- Extensive experience in collaborating with peer engineers and cross functional teams.
- Extensive experience with multiple software systems design tools and languages.
- Excellent analytical and problem solving skills.
- Experience in overall architecture of software systems for products and solutions.
- Designing and integrating software systems running on multiple platform types into overall architecture.
- Evaluating forms and processes for software systems testing and methodology, including writing and execution of test plans, debugging, and testing scripts and tools.
- Excellent written and verbal communication skills; mastery in English and local language. Ability to effectively communicate product architectures, design proposals and negotiate options at senior management levels.