# Cream Backend homework This homework is designed to evaluate candidates's capability that includes but not limit to the following different aspects - Problem solving skills - Learning skills - Ethereum smart contract, event logs - Cream lending platform domain knowledge - Project planing skills - Coding related skills - k8s related skills Feel free to ask any question in the telegram group. --- ## Implement a market monitor that runs on k8s (minikube) Monitor crUSDC on ethereum contract address: [0x44fbebd2f576670a6c33f6fc0b00aa8c5753b322](https://etherscan.io/address/0x44fbebd2f576670a6c33f6fc0b00aa8c5753b322#readProxyContract) ### Useful tools and docs - Library for interacting with the Ethereum Blockchain: https://docs.ethers.io/v5/ - Recommended RPC provider: https://docs.ethers.io/v5/api-keys/#api-keys--infura ### 1. Status to monitor (every 100 blocks) 1. supplyRatePerBlock 2. borrowRatePerBlock Query blockchain to get supplyRatePerBlock and borrowRatePerBlock of crUSDC every 100 blocks Format: `{ block number } supply rate: { supply rate }` `{ block number } borrow rate: { borrow rate }` ### 2. Events to monitor 1. Mint 2. Redeem 3. Borrow 4. RepayBorrow Format: { block number }: { tx hash } { minter } Mint { mintTokens } crUSDC with { mintAmount } USDC { tx hash } { block number }: { tx hash } { redeemer } Redeem { redeemAmount } USDC, burn { redeemTokens } crUSDC { block number }: { tx hash } { borrower } Borrow { borrowerAmount } USDC { block number }: { tx hash } { payer } RepayBorrow { repayAmount } USDC for { borrower } ### Expected output example: ``` #12873672 0x30a69cfb584fc9bff26a9348d77041b58b6d44813ae81a423f80bca5e63677aa 0x167539702b5501aadd9b0b85e53532fd57cc71a9 Borrow 30000 USDC #12873762 supply rate: 16907364515 #12873762 borrow rate: 40104700913 #12873862 supply rate: 16907364515 #12873862 borrow rate: 40104700913 #12873915: 0x1e33d0090d5e3fedffe1e945598a9c4e0912b5334597483b0973d2d79b78af03 0x32d2d8a08e29668492724b83d81c750123b6b905 Redeem 463836.024217 USDC burn 20568084.82722413 crUSDC #12873962 supply rate: 17437464695 #12873962 borrow rate: 40728554291 #12873998 0x1de9580fdea6514c9b20d74845ed019ecf762b8789450f9069dd3e864063d92f 0xeaba5f84e0409b8ae10445e1a89e56e67680b0c7 RepayBorrow 1426.481981 USDC for 0xeaba5f84e0409b8ae10445e1a89e56e67680b0c7 #12874062 supply rate: 17434026379 #12874062 borrow rate: 40724538669 #12874162 supply rate: 17071649940 #12874162 borrow rate: 40299074497 #12874262 supply rate: 17071649940 #12874262 borrow rate: 40299074497 #12874362 supply rate: 17071649940 #12874362 borrow rate: 40299074497 #12874462 supply rate: 17071649940 #12874462 borrow rate: 40299074497 #12874562 supply rate: 17071649940 #12874562 borrow rate: 40299074497 #12874662 supply rate: 17065896573 #12874662 borrow rate: 40292283269 #12874762: 0x83cc56903d46512e56d71359d1b5af3d019db9005ec10e8ec7501bec343e4b65 0x6ced59a8d2da7bdf3e6c2920f632421a8f3c34d1 Mint 8868559.14076667 crUSDC with 200000 USDC #12874762 supply rate: 16841814176 #12874762 borrow rate: 40026881873 ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up