Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update .README for take home test #6

Merged
merged 14 commits into from
Feb 6, 2024

Conversation

franbromley
Copy link
Contributor

Motivation
There has been a trend of submissions for the take-home not meeting the requirements of the marking scheme.

In line with our other interview rounds, we aim to be as clear and transparent as possible with the expectations of the interview rounds and set them up for success. The aim of this PR is to see if making the requirements of the take-home clearer to candidates will increase the number of submissions that meet the core requirements

Key changes

  • shorten the README on the main project route pulling out the key information
    • Make it clearer what is expected of the candidate
    • Make it clear what the requirements of the reliable downloader are
    • Make it clear what a successful submission will look like
  • Take out the .NET and Java specific information and add to a README underneath those files
  • Added a feedback.md for candidates to provide any feedback they have on the take home exercise

- more clearly set out requirements 
- state what good looks like 
- trim down some large areas of text 
- remove .NET and Java specific instructions (to be moved out into their own README in each language file
README.md Outdated

A test project is included (with JUnit added though can be swapped for an alternative) if Unit tests are wanted. There is also an App Main function which has a real Accurx URL (which **DOES** support partial content) and an example of a file path so that the code can be tested for real.

## Tips

- Take the time to read through the task and description. There's guidance in there that can be helpful to approaching the problem.
- The code doesn't need to be perfect but it needs to be readable.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we're modifying the README - i'd personally like to remove this line
(let the candidate determine what quality code they're happy to submit)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good suggestion Jimbo - thanks! removed

README.md Outdated
A high-quality submission will have the following:
- Meet the requirements above
- Appropriate use of language features to solve the problem in a neat and simple way
- Well structured code
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does well-structured code look like? Can we be more specific about the things we're looking for here?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we're looking for code that is easy to read and reason about. Typically using software design principles like SOLID.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Jaf! I've made an update based on this - really helpful!

README.md Outdated
A high-quality submission will have the following:
- Meet the requirements above
- Appropriate use of language features to solve the problem in a neat and simple way
- Well structured code

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we're looking for code that is easy to read and reason about. Typically using software design principles like SOLID.

Copy link
Contributor

@philwills philwills left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've added a bunch of nits, but I think this would have definitely made the process clearer for me going through it.

README.md Outdated

### Java
1. The installer downloads in the following scenarios:
- When internet disconnections occur (we use 2 minutes as a disconnection time benchmark for this)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason we're avoiding the word "timeout" here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree this is pretty ambiguous language. I've replaced with the following

  • The download is successful if the internet connection is lost for up to two minutes
  • The downloader should timeout if the internet connection is lost for more than two minutes

README.md Outdated

The purpose of this exercise is for us to learn about how you analyse requirements, solve problems, use language features appropriately, structure code, and verify your solution works correctly. These are the main factors we take into account when assessing your solution.
### What is expected of you?
1. Please complete the task detailed below👇
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feels odd to have a numbered point, but I get the intent and don't have a great alternative suggestion.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated to use bold type instead

franbromley and others added 9 commits February 6, 2024 18:50
remove suggestion of adding unit tests - we would like to see these!

Co-authored-by: Phil Wills <[email protected]>
Remove optionality from tests

Co-authored-by: Phil Wills <[email protected]>
remove unnecessary drivel - let's get to the point ;)

Co-authored-by: Phil Wills <[email protected]>
Remove specific library mentions

Co-authored-by: Phil Wills <[email protected]>
Remove numbering and use bolding instead
Make clearer expectations on timeouts
Co-authored-by: Phil Wills <[email protected]>
Just decide if you want full stops or not Fran
@franbromley franbromley merged commit a4bb55d into trunk Feb 6, 2024
2 checks passed
@franbromley franbromley deleted the branch/fb/update-readme/24-2-2 branch February 6, 2024 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants