Thank you for taking an interest in Ganymede! As part of our interview process, we want to offer you the opportunity to demonstrate your skills and thought process, outside the context of an in-person discussion.
Feel free to spend as much time as you'd like on the component you've been assigned, though we would recommend spending no more than 2-4 hours on this and letting us know the amount of time you've spent.
As you answer these questions, please be mindful of style, robustness, and correctness; we'll be looking for thoughtfulness around not just the solution, but the ease with which others can extend upon the solutions you create. Please note down any assumptions that you make while answering these questions, and feel free to reach out to us for any clarifications.
Welcome to the future! You find yourself employed at a Chats N' Coffee, a pub-like coffee chain where customers bring their thoughts, questions, and concerns to the baristas - who, in return, engage with thoughtful dialogue, healthy banter, and debate.
One key challenge that the company has recently faced is that the espresso machines at the chain are cumbersome to manually operate, detracting from conversations that the company is known for. You've been tasked with automating the espresso machine so that baristas can spend more time engaging with the clientele.
- Fork the repo and clone to your development machine. 1a) Ensure that python3.7+ is running on your machine and install if necessary.
- Install rabbitmq on your development machine.
- Navigate to the python/ directory and create a virtual environment by running
python3 -m venv .venv
. - Activate the virtual environment by running
source .venv/bin/activate
.