Senior Software Engineer

Job Locations US
Job ID
Name Linked
Remote: Mid-Atlantic Region
United States


DataDirect Networks ( is a world leader in massively-scalable storage platforms and solutions engineered for the Big Data and Cloud era. Our storage, processing solutions and professional services enable content-rich and high-data growth environments to achieve the highest levels of systems performance, scalability and efficiency. In solving today’s Big Data lifecycle management challenges at scale, DDN enables organizations to maximize the value of their information, everywhere. As the technology behind the world’s leading data-driven organizations, our customers include online content and social networking providers, high performance cloud and grid computing, life sciences, financial services, media production houses and security and intelligence agencies.

Job Description

Job Summary:

We are looking for a Senior Software Engineer for our DDN RED Storage engineering team who will work on implementing Dedupe, Compression or Data Encryption technologies.  This person will participate in the architecture, design, build and delivery of these components for our DDN RED next generation software storage products.  Tasks will include the following:

  • Implement critical distributed storage IO Path components specifically in the areas of Dedupe, Compression or Encryption.
  • Drive design discussions, build prototypes and produce high quality, testable, production level code that contributes to the delivery of high quality enterprise level products and solutions.
  • Conduct code reviews and improve scalability, stability, reliability and performance of DDN RED product support solutions.

 Responsibilities for this role include but are not limited to:

  • Design and implement critical distributed storage components including global file system namespace and high availability services and storage optimization features (i.e. erasure coding, backup-recovery, snapshots and deduplication)
  • Implement heath checking tools definition and implementation providing solutions for data consistency, data replication and media continuous sniff testing.
  • Collaborate with your teammates and integrate with a group of passionate developers in an outcome oriented environment
  • Adopt Agile practices and support appropriate technical meetings/scrums and message progress/status/concerns
  • Providing regular reports on your project progress to team members and supervisors


  • BS/MS/Ph.D in Computer Science, Computer Engineering, Electrical Engineering or equivalent degree/experience.
  • 12+ years of experience in software development with file systems, protocols, server architectures and distributed systems specifically including Dedupe, Compression or Encryption capabilities.
  • Excellent hands-on software development experience with 5+ on scale-out and high availability storage solutions.
  • Experience in developing and debugging system level C/C++, particularly for Linux/UNIX computing environments.
  • Experience in developing userspace C/C++ code in Linux and SPDK and message passing environments.
  • Experience on system deployment on premise or cloud for Enterprise solutions. 
  • Understands all or some of InfiniBand as well as high performance Ethernet, tcp and socket programming, libfabrics, virtualization for datastores, data storage, file systems.
  • Attention to detail and commitment to achieve high quality deliverables.
  • Strong team player with good communication skills and a self-starter.
  • Excellent time management skills, with the ability to independently prioritize, multitask, and work under deadlines in a fast paced environment.


The ideal candidate has knowledge of and experience in several of the following subjects:

  • Parallel file system solutions (ex. Lustre, GPFS) or distributed files systems (ex. NFS)
  • Low-latency, high-bandwidth High-Performance Computing (HPC) networks
  • NVME and NVMEoF storage technology
  • HPC application programming models
  • Common HPC I/O interfaces and libraries (ex. POSIX, MPI-IO, netCDF / PnetCDF, HDF5)
  • Linux kernel internals
  • Event-driven and lock-free programming models and concepts
  • Memory mapped IO (mmap), event-driven and lock-free programming concepts
  • Distributed key-value storage systems (memcached)
  • Profiling and debugging I/O and CPU performance bottlenecks at various scales (per-socket, per-node, and cluster-wide)
  • Agile software development
  • Test-driven software development


DDN Core Characteristics

DDN has a very strong orientation towards these 4 characteristics and any successful employee will demonstrate these capabilities: 


Self-Starter - Takes independent action to identify and solve problems. Seeks out relevant information needed to make decisions. Gets involved with new initiatives. 

Success/Achievement Orientation - Delivers quality results consistently. Targets, achieves (or exceeds) measurable results. Sets challenging goals, focuses on critical priorities, and is accountable. 

Problem Solving - Recognizes problems and responds with a systematic assessment that identifies and addresses cause of issue. Practical, realistic, and resourceful. 

Innovation - Builds and improves key business processes that enhance the effectiveness of DDN. Generates new ideas, challenges the status quo, and solves problems creatively. 


DDN takes pride in developing and promoting talent as an Equal Employment Opportunity employer. All qualified applicants will receive consideration for employment without regard to race, national origin, gender, age, religion, disability, veteran status, or any other category protected by law. By fostering a diverse business environment, DDN welcomes opportunities to learn from each other, our customers, investors, suppliers, and business partners. 


Sorry the Share function is not working properly at this moment. Please refresh the page and try again later.
Share on your newsfeed