---
# System prepended metadata

title: Take-Home Assignment

---

# Take-Home Assignment

We would like you to work on a simple take-home assignment. The task should not require you to spend more than 4 hours in total, please return your results to us within two weeks, if you have any time constraints let us know. There are 3 different assignments you can pick from (see below).

Throughout the process, we would like to be closely in touch with you, hence we ask to set up an [Element](https://app.element.io/) account and create a channel with the Bridge team. Please invite @todr:matrix.parity.io on Element and I can take care of the rest.

After the channel is set up we will ask you to let us know:
- which assignment you chose,
- what is your planned completion date,

to make sure the process goes smoothly and is completed timely.


## Assignments (pick one)

1. Implement a **Lottery Pallet in FRAME (Substrate)**
    1. A user can sign up for the lottery (fixed price ticket).
    2. At some point in time the pallet has to "roll the dice".
    3. The payouts are done automatically or the user has to claim their reward.
    
2. Implement a **Merkle Tree in Rust**
   1. Provide a function to construct a (perfectly) balanced merkle tree from a vector of leaves (all the leaves are the same type).
   2. Hashing algorithm should be customizable.
   3. The struct should output the merkle root.
   4. Stretch goal: Generate & verify proofs for leaves.
    
3. **Bridges contribution.**
    If you prefer to contribute something useful towards our repo feel free to pick one of the 
   [Open Issues suitable for recruitment tasks](https://github.com/paritytech/parity-bridges-common/issues?q=is%3Aissue+is%3Aopen+label%3A%22Help+Wanted%22). We try to keep this list up to date, but if there is nothing (interesting) there, and you are willing to spend a bit more time, it's also fine to take something outside of that list.
    In any case, if you pick an issue to work on, please get in touch with us to agree on it to be done as take-home assignment.