Dell Software Principal Engineer- C/C++ in Shanghai, China

Job Description

Dell EMC is a part of the Dell Technologies family of brands. Dell Technologies is a unique family of businesses that provides the essential infrastructure for organizations to build their digital future, transform IT and protect their most important asset: information.

The successful candidate of this position will serve as a Principle Software Engineer in Platform team of Storage Product Engineering Organization (SPE), playing critical role in delivering cutting edge Storage Array Platform software. Candidate is expected to demonstrate strong motivation, problem solving and communication skills, and a proven record of meeting aggressive deadlines.

Key Responsibilities

  • Responsible for the development of Storage Array Platform software

  • Responsibilities include design, implementation and debug of OS, device driver, applications

  • Write specifications (Functional, Design, Unit/Integration test), and participation in software design and code reviews

  • Collaborate with other engineering and cross functional groups

  • Support new platform development as well as upgrades, enhancements or fixes to existing products

  • Follow latest technical trends, adopting new technologies quickly and could come out with innovative ideas

Essential Requirements

  • Bachelor or Master’s degree in Computer Science, Computer Engineering, Electrical Engineering or similar

  • 8+ years of industry experience in Intel X86 system software or any embedded software design/development

  • Practical experience using C language, with strong coding and design skills. Knowledge of C++ would be a plus

  • Practical experience in multi-threaded software development and associated tools

  • Practical experience with contemporary Software Engineering principles, Software Development Life Cycle

  • Practical experience with Perl/Python, bash shell scripting

  • Excellent interpersonal and communication skills

  • Demonstrated ability to analyze and solve technical problems

  • Device Driver development experience a plus

  • Ability to ramp up quickly on SW/HW architectures, and work as a self-starter

Desirable Requirements

  • Hardware/Software trouble shooting skills are highly desired

  • Knowledge and expertise in the following areas: Storage protocols (NFS, CIFS, iSCSI/FC, SAS, NVMe, PCIe), storage technologies (SAN, NAS, RAID), networking, clustering

  • Experience with Git (or other source control system), Jenkins, Remedy (or other bug management system) is a plus

  • Experience with Docker/Container technology is a plus

Benefits

We are a people company. We offer highly competitive salaries, bonus programs, world-class benefits, and unparalleled growth and development opportunities — all to create a compelling and rewarding work environment.