alejandrogarciasalas / berkeley-blockchain-backend-challenge

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Blockchain at Berkeley - Back-End Developer Challenges Submission

Code for merkle tree is a little hacky. Passed all tests but did not had time to write any custom tests :(. I also solved the front-end challenge so I had to balance my time!

Style

Code follows pep8 style guide!

Potential Improvements

merkle tree is messy and could be better, I am essentially rebuilding parts of the tree for my solution.. I was in a rush so did not have too much time to improve it :/

Original Challenge Question

Blockchain at Berkeley - Back-End Developer Challenges

Introduction

Welcome to the Blockchain at Berkeley objective task for Back-End Developers. If you are a full-stack developer, you will also want to complete the front-end task, which can be found here:

By completing (or attempting) both tasks, you get bonus points which can greatly help you in the process, especially if you felt you didn't do well on our quiz.

The Tasks

You are given three tasks, one medium difficulty, one medium-hard and one of hard difficulty. Write solutions in Python3 such that you pass the provided test cases and any test cases you can come up on your own. You are basically problem solving for any case, not just the provided examples.

WARNING: You should be writing custom test cases or evaluating them within the interpreter because there are a lot of cases we will be testing for. We are looking for clean, optimized code, so runtime and space matters, however so does convinence. Strike a reasonable balance and you'll do well.

If you are missing any relevant packages that are imported into the files by default, you can install them using pip3.

Words of Encouragement

This is the hardest part of the interview. We promise that the rest is much more relaxed. If you're a freshman and you can't get some of these questions - that's fine, but you should keep trying until simply can't solve it. Upperclassmen, you've probably seen more difficult questions so we hope that these are all possible to answer for the most part. Good luck and ping hr@blockchain.berkeley.edu if you have questions.

Submission Instructions

DO NOT FORK THIS REPO - SOLUTIONS THAT ARE PUBLIC WILL BE DISQUALIFED. We ask that you do not share any solutions and work alone.

Instead, zip up the contents of the root of this repo and submit those using a google form: https://goo.gl/forms/D5ypI59B1laP6Yvm2

Do not change or rename the folder structure. We will be running autograders on these and if the format is failing then we will not accept them as valid solutions.

The contents of the zip file should be the folders in this repo.

About


Languages

Language:Python 100.0%