Engineer (Storage Virtualization and Data-Path)
Seagate Technology
About Our Group
We are a highly motivated team chartered with providing Data Management, Data Protection, and Data Quality of Service for Seagate Systems Products, delivering solutions for use from core cloud to the edge. We develop embedded code that runs on our storage arrays and work across the company, including with our HDD development teams, to offer total storage solutions for our customers.
About The Role
You will:
- Effectively communicate and document software design.
- Listen and discuss technical problems with customers, test team, and development team.
- Participate in customer-reported problems, collaborate with the customer-facing team, and solve them.
- Be part of a high-performing team of firmware developers in Emerging Products & Solutions that focuses on providing state-of-the-art, end-to-end storage solutions. This includes developing data protection, data reduction, and storage virtualization technologies.
Key Responsibilities
- Write code to manage the data-path of high-performance storage arrays.
- Develop code for fault tolerant storage systems.
- Develop data caching algorithms.
- Write storage virtualization code.
- Write high availability applications.
- Write software functional and design specifications.
- Triage issues during continuous integration & deployment processes, as well as customer-found issues.
- Work closely with the test organization to resolve issues in a timely manner.
- Collaborate with team members across the globe.
About You
- Good technical and process exposure with depth and breadth.
- Ability to present technical data clearly to team members and address feedback from peers and product management.
- Problem solver with strong initiative.
- Team player working in synergy with the team.
Requirements & Tech Stack
Your Experience Includes:
- Bachelor's or Master's degree in electrical engineering, computer science, computer engineering or related field.
- Test driven development.
- Strong C++/C Skills, Object-oriented design.
- Knowledge of embedded multi-threaded RTOS application development, Linux user process and device driver development, including multi-threading and inter-process communications.
- Experience with RAID controller systems or other storage controller systems.
- Scripting skills, including one or more of bash, Python.
- GDB Debugger.
- Knowledge or experience of Storage and/or Server products.
Tools And Processes You Know About:
- Compilers.
- Source code control (e.g., GIT).
- Source code debugging.
- Jenkins.
- Unit test automation frameworks.
- Code coverage tools (e.g., Coverity).
Location
- Longmont, United States
Travel
- None