The Concrete Lib team is writing and maintaining the open-source cryptographic library of the same name. This library is used as the backbone of the whole Concrete stack. It implements various cryptographic primitives and exposes them through different APIs targeting users from crypto neophytes to compiler writers. The codebase uses the Rust programming language as its main language, but it is expected to host hardware-specific code written in other languages in the near future.
Being an open-source cryptographic library, concrete-lib is subject to high expectations in terms of continuous integration. The correctness of the implementation must be thoroughly tested on several pieces of hardware, and contributions must meet various criterias of quality in order to be merged. We already have a good system in place, but there is still room for improvements to bring our architecture to the level we intend!
We are looking for a candidate who will help us upgrading our pipeline to the level of quality expected for a major cryptographic library. Among other topics, you will have to:
- design an automatic release system for crates-io (and potentially other repositories)
- setup benchmarking and testing systems for various (potentially exotic) pieces of hardware
- setup automatic delivery system for the different kinds of documentation for the library
- increase the number of automatic quality check to ensure the best possible quality of contribution