Skip to content

Instantly share code, notes, and snippets.

@aronasorman
Last active March 1, 2016 16:19
Show Gist options
  • Save aronasorman/2d2132133bb75bb00a1b to your computer and use it in GitHub Desktop.
Save aronasorman/2d2132133bb75bb00a1b to your computer and use it in GitHub Desktop.
How to rank our candidates based on criteria

How to rank criteria:

Technology depth:

1 - Uses a language without any knowledge of its idioms and conventions. As an example, writes Python code that looks like C or Java.

2 - Is aware of basic idioms taught in a tutorial. For Python, these would be using for ... in list rather than for i in range(len(list)), and other similar basic python constructs.

3 - Knowledge of community idioms and the standard library. with statements, using os.path for handling file paths are indications of this level.

4 - Adept of use of a language and its ecosystem found only after writing a lot of code with it.

Code readability:

1 - Code is completely unreadable without expending much effort. Intention is opaque: symptoms -- functions longer than a page, doing a lot of data manipulation without any indication why it's doing so.

4 - Code is not only very readable, appropriate use of comments and docstrings are in place. Symptoms: functions that do one thing, and its purpose is obvious in the function name. Utility functions are documented. For the hairier parts of the code, there are comments to help reviewers.

This is a scale. 1 - Completely unreadable <--------> 4 - Much readable

Project features and ease of use

1 - Implemented the bare minimum needed to pass the project: a list of movies and a detail view. UI looks bland and uninspired.

2 - Implemented at least 1 more feature. UI is usable and decent.

3 - Implemented at least 1 more feature. UI is great and easy to use.

4 - Implemented at least 1 more feature. UI is great and full of surprises!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment