DevJobs

Senior Software Engineer, Filesystem

Overview
Skills
  • C++ C++ ꞏ 5y
  • C C ꞏ 5y
  • Linux development and debugging ꞏ 5y
  • Threading models ꞏ 5y
  • Synchronization concepts ꞏ 5y
  • Multithreaded software design ꞏ 5y
  • Lockless synchronization techniques ꞏ 5y
  • Inter-process communication ꞏ 5y
  • Concurrency ꞏ 5y
  • Highly-distributed systems
  • Filesystem code
  • Linux filesystem community
  • Enterprise storage solutions
  • long-running performant server
  • Data-path design and development
  • Storage industry concepts and features
  • Concurrent
  • XFS
  • ZFS

Weka is a fast-growing startup developing the world’s fastest and most scalable data platform. WEKA lives anywhere the data does, whether on-premises, in the public cloud, or in a hybrid environment, and was built from the ground up to meet the diverse needs of modern data workloads.

At Weka, we are constantly putting our technology and ourselves to the test to solve today’s biggest data storage challenges while enabling heightened productivity.

We currently enable Fortune500 companies to push the boundaries of what’s possible, achieve breakthrough innovations, and solve previously unsolvable problems.

Want to join the ride?


What makes a Wekkie?

If you have a positive “can-do” attitude, a relentless curiosity about all things tech, and you thrive on pushing limits and breaking barriers, you’ll fit right in at Weka!

We’re a super friendly bunch who support each other, promote best practices, and we always encourage collaboration and sharing ideas. Even on rainy days, our sunny spirits shine through. And as we grow, we’re inviting those who are like us to join in the fun!


What you'll be doing:

The filesystem group is a high-powered team responsible for implementing algorithms at scales of 100s of PBs. The team also manages the core filesystem components, including blocks and metadata management, snapshots, RAID logic, object-store tiering, unique cloud disaster recovery features, and more. And most importantly, they skillfully handle the most delicate part of the Weka solution – our customers’ data.


As a Senior Software Engineer, you’ll:

  • Design and develop distributed file system components to support data management features such as snapshots, replication, tiering, and advanced data reduction algorithms;
  • Participate in the design, architecture, and implementation of next-generation storage architecture;
  • Assist in technically managing initial storage implementations including proofs-of-concept;
  • Diagnose bottlenecks and implement clean and performant solutions to achieve unbeatable performance;
  • Design algorithms and data structures to make sure customer data is safe and coherent across our solution in a wide variety of failure modes; and
  • Constantly revisit the architecture, algorithms, and methodologies to improve productivity, reliability, and maintainability.


Requirements

  • Mastery of low-level and performant programming in C or C++
  • A thorough understanding of concurrency, inter-process communication, threading models, and synchronization concepts, including significant experience with complex multithreaded software design
  • Experience with lockless synchronization techniques
  • 5+ years of hands-on experience with Linux development and debugging, along with a broad knowledge and understanding of Linux internals
  • Experience identifying, reproducing, and resolving complex software defects, including root cause isolation, tracing through large source code bases, and implementing long-term fixes as well as short-term workarounds
  • A strong team-oriented spirit and a highly motivated individual skilled in coordination and communication
  • A positive, creative, and open-minded problem solver.


It's nice if you have:

  • Experience in data-path design and development
  • Experience with development of highly-distributed systems
  • Deep familiarity with concepts and features from the storage industry, including snapshots, replication, transparent data migration, and data reduction techniques
  • Experience with ZFS, XFS, or other file systems or with enterprise storage solutions
  • Experience working with the Linux filesystem community
  • Contribution, upstreaming, or maintaining of filesystem code
  • Experience playing a significant role in the implementation of a concurrent, long-running performant server


Concerned that you don’t meet every qualification above?

Studies have shown that women and people of color may be less likely to apply for jobs if they don’t meet every qualification specified. At WEKA, we are committed to building a diverse, inclusive and authentic workplace. If you are excited about this position but are concerned that your past work experience doesn’t match up perfectly with the job description, we encourage you to apply anyway – you may be just the right candidate for this or other roles at WEKA.

WEKA is an equal opportunity employer that prohibits discrimination and harassment of any kind. We provide equal opportunities to all employees and applicants for employment without regard to race, color, religion, age, sex, national origin, disability status, genetics, protected veteran status, sexual orientation, gender identity or expression, or any other characteristic protected by federal, state or local laws. This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layoff, recall, transfer, leaves of absence, compensation and training.

Weka.IO