Netappincd
Software Engineer - Remote
Job description
Job Summary
The Core Software team is a high-performance engineering team responsible for building the fundamental software to manage the ONTAP software product. You will work as part of a team responsible for the development, testing and debugging of distributed software that drives NetApp cloud, hybrid-cloud and on premise solutions. This position requires an individual to be creative, team-oriented, a quick learner and driven to produce results.
Responsibilities
- Lead medium to large feature deliveries, including participating in the full software development lifecycle
- Deliver reliable, innovative storage and data management products.
- Design, implement and test software in C++ with a focus on simplicity, reliability, and manageability
- Participate in product design, development, verification, troubleshooting, and delivery of a system or major subsystems, including authoring project specifications
- Write unit and automated integration tests
- Conduct and participate in technical discussions within the team as well as with other groups across Business Units in the company
- Facilitate technical discussions and lead presentations with engineering leadership
Job Requirements
Requirements
- Software development experience (analysis, design, implementation, testing)
- Familiarity with Unix based operating system kernels and development environments, e.g. Linux or FreeBSD.
- A strong understanding of basic to complex concepts related to computer architecture, data structures, and programming practices.
- Object-oriented systems programming
- Experience working with file systems, distributed systems, client-server programming, multi-threaded applications, and operating systems such as FreeBSD, Linux
- Strong grasp of computer architecture, data structures, algorithms, and standard programming practices
- Demonstrated creative and systematic approach to problem solving
- Possess excellent written and verbal communication skills
- Ability to work under limited supervision and direction
- Ability to work collaboratively within a team environment of other engineers to meet aggressive goals and high quality standards
Education
- A Bachelor of Science degree in Computer Science or equivalent experience, master's degree is preferred
- Minimum of 6 years of software development experience, 8 or more years is preferred


