We’re looking for a Haskell Developer to assist our team with a project for the Tahoe-LAFS Software Foundation.
This would be a project based position and involves creating a Haskell implementation of Tahoe storage back-end for S3-compatible object store. Additionally, this role may also have the opportunity to help with the front-end portions of the project, web/mobile/gui/tui.
Tahoe-LAFS storage servers presently use the local filesystem for storing encrypted shares. This can be less flexible and more expensive than other “cloud” storage options. We propose extending the Tahoe-LAFS storage server software to optionally allow shares to be stored on other “cloud” backends (such as, initially, S3-compatible object stores) and enabling Tahoe-LAFS storage grid operators to leverage cheaper cloud storage options and to make way towards realizing Tahoe-LAFS’ prior Redundant Array of Independent Clouds (“RAIC”) idea.
The ideal person for this role has:
-
Practical Haskell development experience. Please list/link or shortly describe projects you have worked on.
-
Open source software development experience. Please include links to repositories - non-Haskell is interesting here too.
-
Skills in distributed systems programming and in applying cryptography.
-
Python experience (the original implementation is mostly Python).
-
Experience with Nix/NixOS is a plus.
-
Interest in Privacy Enhancing Tech and Internet Freedom.
-
Fun sharing their wisdom: Coaching newbies, regular and mandatory code review, pair programming... We are life-long learners here.
-
No issue with front-end code. This is a small team, and we try to avoid knowledge silos.
-
No issue with writing lots of tests and documentation.
Please include with your application:
-
A resume/CV.
-
A cover letter/intro email.
Additional information to possibly request from shortlisted candidates:
-
A Haskell snippet you find particularly nice/useful/elegant with an explanation why that is so.
-
A review (please choose a part of the code base & time-box to an hour or less) of the last work that happened on tahoe-s3’s handle-byte-ranges branch.