Senior Software Engineer Storage & Networking - Systems Engineering - Pure Storage
Santa Clara, CA 95053
About the Job
What do NASA and emerging space companies have in common with COVID vaccine R&D teams or with Roblox and the Metaverse?
The answer is data, -- all fast moving, fast growing industries rely on data for a competitive edge in their industries. And the most advanced companies are realizing the full data advantage by partnering with Pure Storage. Pure’s vision is to redefine the storage experience and empower innovators by simplifying how people consume and interact with data. With 11,000+ customers including 58% of the Fortune 500, we’ve only scratched the surface of our ambitions.
Pure is blazing trails and setting records:
• For ten straight years, Gartner has named Pure a leader in the Magic Quadrant
• Our customer-first culture and unwavering commitment to innovation have earned us a certified Net Promoter Score in the top 1% of B2B companies globally
• Industry analysts and press applaud Pure’s leadership across these dimensions
• And, our 5,000+ employees are emboldened to make Pure a faster, stronger, smarter company as we go
If you, like us, say “bring it on” to exciting challenges that change the world, we have endless opportunities where you can make your mark.
SHOULD YOU ACCEPT THIS CHALLENGE...
Pure Storage is seeking a talented senior systems software engineer to join its Linux Fabrics Team. The selected candidate will work independently and collaboratively solving problems involving Linux and systems design, architecture, implementation, and fault analysis/debugging of Pures market leading flash storage systems.
• Helping specify and set requirements for upcoming enterprise grade storage servers across multiple product lines.
• Software development through architecture, development, test, release, and maintenance.
• Developing primarily in C/C++ and Python. Helping all of us get better through design and code reviews.
• Helping us achieve world-class performance through experimentation, analysis, and tuning.
WHAT YOU’LL NEED TO BRING TO THIS ROLE...
• An exceptional talent as an individual contributor, with 5+ years as a developer
• Strong communicator, with an ability to present to a diversity of audiences (from executives to developer conferences)
• Track record of shipping products with high performance, high resiliency.
• Natural curiosity and the ability to design, implement, and test your work.
• General skills:
o Strong problem solving and debugging skills.
o Strong understanding of CPU architecture, computer architecture, operating systems, algorithms, and data structures.
o Experience creating highly optimized algorithms using C and/or C++. Ability to read and analyze x86 assembly language is expected.
o Demonstrated ability to optimize algorithms at many levels - from CPU instruction optimizations, to hardware/software trade offs, to threading and locking issues.
o X86 performance and scalability (esp NUMA using lock free algorithms)
• Valuable specialized skills:
o Understanding of I/O technologies and standards such as NVMe, Ethernet, Fibre Channel or SCSI
o Knowledge of multithreading and lockless algorithms
o Understanding of enterprise data storage system architectures and behavior
• B.S. or higher degree in CS or equivalent experience