Dell Principal Software Engineer in Hopkinton, Massachusetts

Principal Software Engineer

(Hopkinton, MA)

What will your next job look like? Will it provide hands-on and technical training designed just for you—the eager self-starter? Will you have the perfect balance of being part of an established company, with a start-up, entrepreneurism like no other in the industry?

If this is the job you dreamed of…then a Principal Software Engineering role at Dell might be perfect for you. In this role, you will be resident problem-solver, providing front-line support for Dell’s Unstructured Data Storage Engineering group.

Dell Unstructured Data Storage (UDS) Product Group

Digital transformation starts with the data. Customers are prioritizing AI, IoT, and analytics initiatives that depend on massive amounts of unstructured data. In fact, IDC predicts that unstructured data volume will hit 40 Zettabytes in 2020, up from 4.4 Zettabytes in 2013. In addition, we are also working on Project Nautilus which is a key technology for IOT and streaming analytics. Storing, managing, and extracting value from this sea of data is creating new challenges and customers are increasingly turning to Dell EMC for solutions.

Dell EMC is the undisputed industry leader for unstructured data storage. Tens of thousands of customers have bet their business on UDS products including Isilon Scale-Out File Storage and ECS Object Storage. Moreover, Gartner has consistently recognized Dell EMC as the clear Magic Quadrant leader for Distributed File and Object Storage.


As Principal Software Engineer in the UDS group, you will have the opportunity to use your expertise to work on innovative and cutting edge technologies. You will partner with our highly skilled technical advisors, who provide solutions to our customer’s most complex issues. You will constantly be challenged in developing and improving new and current technologies with the support of your team behind you.

You will be responsible for the software design and development for external customer products. You will utilize a range of applicable technologies (e.g., programming languages, compilers, assemblers, debuggers, other tools) for products used in local, networked, storage enhancements and/or new systems. Modifies existing software products to add new functions, adapt to new hardware, improve performance or enhance product usability. Participates in product development in all stages from planning and design to development, testing and documentation. Assists with the implementation of new or additional storage technology to improve infrastructure service, both locally and remotely.

Role Responsibilities

  • Participates in the preparation, review and analysis of software/storage requirements and specifications

  • Prepares written specifications from verbal requirements for tasks of mid-level complexity

  • Prepares design, functional, technical and/or user documentation, as needed

  • Uses defined software lifecycle methodologies

  • Reviews and implements test strategies for software products

  • Follows source code and file revision control for projects

  • Clearly communicates project issues and status

  • Accurately logs project schedule, defect, and other data

  • Analyzes and prepares trend reports on quality metrics

  • Participates in improving product quality through process and procedure improvements Provides full design, planning, configuration, documentation, deployment and top-level support ownership of storage infrastructure technologies.


  • Typically 7+ years of related experience with a Bachelor’s degree; or an advanced degree without experience; or equivalent experience

  • Comfortable independently designing and implementing a feature from start to finish

  • Experience leading a team or teams on complex projects and features

  • Experience with project management fundamentals

  • Full use and application of standard principles, theories, concepts, and techniques based on an established body of knowledge

  • Good knowledge of programming languages like C and Python; operating systems; firmware; device drivers and databases.

  • Able to code/debug moderately complex programs using either written or verbal design specifications

  • Good understanding of hardware and software interactions

  • Knowledge of storage networking architectures and applications

  • Knowledge of storage/ network protocols and connectivity

  • Knowledge of network file systems, disk-based file systems and/or file virtualization technology

  • Knowledge of replication technologies and server migration strategies.


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.

If you’re ready to develop cutting-edge software for a changing world, this is your opportunity to develop with Dell.

Dell is committed to the principle of equal employment opportunity for all employees and to providing employees with a work environment free of discrimination and harassment. All employment decisions at Dell are based on business needs, job requirements and individual qualifications, without regard to race, color, religion or belief, national, social or ethnic origin, sex (including pregnancy), age, physical, mental or sensory disability, HIV Status, sexual orientation, gender identity and/or expression, marital, civil union or domestic partnership status, past or present military service, family medical history or genetic information, family or parental status, or any other status protected by the laws or regulations in the locations where we operate. Dell will not tolerate discrimination or harassment based on any of these characteristics. Learn more about Diversity and Inclusion at Dell here .