Principal Software Engineer (Storage)

Hewlett Packard Enterprise•Durham, NC
•$157,000 - $361,000•Hybrid

About The Position

Designs, develops, troubleshoots, and debugs Kubernetes-based control-plane software for HPE Alletra Storage MP X10000, an enterprise storage product. The role develops Go microservices, Kubernetes controllers, and host networking daemons to provide highly available client networking, manage data-center network infrastructure, and distribute and upgrade software across a cluster. The work spans Linux networking, Kubernetes, and network hardware. This position has visible technical impact on a product or major subcomponent. It applies in-depth professional knowledge and innovative ideas to complex problems, with contributions intended to improve time-to-market, reduce costs, or meet customer needs. The role provides technical leadership on significant project or program work, participates in cross-functional initiatives, and contributes to mentorship and knowledge sharing. The role is hybrid, requiring an average of two days per week in an HPE office. The expected annual base salary is USD 165,500–313,500 in Colorado or USD 157,000–361,000 in North Carolina. Variable incentives may also be offered. The estimated application-period closure is January 11, 2027.

Requirements

  • Bachelor's or Master's degree in Computer Science, Computer Engineering, or equivalent.
  • Typically 10+ years of experience developing production software, including significant experience with distributed or infrastructure systems.
  • Strong programming experience in a systems language such as Go, C/C++, or Java, including concurrency and testable design, and willingness to develop primarily in Go.
  • Hands-on experience developing on Kubernetes, such as building controllers/operators and custom resources.
  • Solid knowledge of Linux IP networking, including TCP/IP, routing, VLANs, and IPv6, and hands-on network troubleshooting.
  • Experience designing distributed, highly available systems that tolerate partial failures.
  • Proficiency in Bash shell scripting for tooling, automation, and system setup.
  • Excellent analytical, debugging, and problem-solving skills.
  • Excellent written and verbal communication skills.

Nice To Haves

  • Background in enterprise storage systems or storage appliances.
  • Professional experience developing in Go (Golang).
  • Experience with software packaging, distribution, and upgrades, such as container images, registries, and rolling updates, including delivery to on-premises or air-gapped environments.
  • Experience automating data-center network switches through APIs or network automation tools.
  • Experience orchestrating firmware or OS upgrades for network devices or appliances.
  • Knowledge of Kubernetes networking internals, such as CNI.
  • Experience with RPC frameworks such as gRPC, secure communications such as TLS, and Linux system services.
  • Experience with Python for test automation.
  • Experience with observability, including Prometheus metrics and structured logging, and supporting production systems in the field.
  • Effective use of AI-assisted development tools, with strong engineering judgment in reviewing and validating their output.

Responsibilities

  • Design, develop, and own Go microservices and Kubernetes controllers/operators for cluster networking, network infrastructure management, and software distribution.
  • Develop host-level Linux networking software that configures interfaces, addressing, and routing to provide clients highly available access over IPv4 and IPv6.
  • Automate configuration and lifecycle management of data-center network switches, including safe, recoverable firmware upgrades.
  • Develop and maintain services that package, store, and distribute software and container images for cluster installations and upgrades.
  • Design distributed, highly available services that remain correct through node failures, restarts, and partial upgrades.
  • Review and evaluate designs and code for correctness, failure handling, and testability; provide feedback to improve product quality and reduce failure risk.
  • Develop automated unit, integration, and system tests, including fault-injection testing.
  • Troubleshoot customer escalations and field issues across Kubernetes, Linux networking, and network infrastructure, and turn findings into lasting product fixes.
  • Collaborate with cross-functional storage, platform, and cloud teams on designs spanning multiple components.
  • Guide and mentor junior team members, setting an example of software design and development excellence.

Benefits

  • Comprehensive benefits intended to support physical, financial, and emotional wellbeing.
  • Programs supporting career development and professional growth.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service