A simple shell for your interview.
- From GitHub, use this repo as a template to create your own copy
- Set up a virtual environment. This is set up for poetry,
so you could do
poetry install
and thenpoetry shell
. Or you could create it with your favorite tooling and install the packages inrequirements.txt
. - Make sure everything works by doing
flask --app webapp.main --debug run
and going in a browser to the given URL. You should see a very boring home page. If you click on "researcher app", you should find a basic working Hello World app.
For the interview, please use your favorite development tools. If they allow for virtual pairing, please set that up, as we can jump in and help. But if not, don't sweat it; you can just share your screen.
Make sure that during the call you'll be ready to share both the working code and the browser with us. So, e.g., if you're sharing your screen, you might want to put both a browser and your editor on the same screen.
The goal of this interview is to see you at your best. If we can do anything to aid in that, please let us know. The interview will try to be at least somewhat like a normal pair programming session. You should feel free to:
- ask questions
- look things up
- search the internet
- ask for help when you're stuck
- write normal, work-a-day code
We know some interviews are more like puzzle competitions or academic exams. That's not us. We just want to get a feel for what a good day at work is like for you. You are not expected to:
- perform amazing technical feats
- solve everything in your head
- demonstrate ethereal genius
- figure out tricks and traps
Just show up ready to write code like you would on an ordinary day at work.
During the interview, you'll be starting with this shell and iteratively adding features. When the interview starts, we'll give you a document about the problem. Take some time to read it and then ask any questions you have. We're happy to discuss the users, the code, how we usually work, and the like. The problem will be open-ended, so you should not expect to complete anything. At the end, we'll spend a little time discussing where you might take it from there and what other things you'd want to do before checking in the code and putting it in production.