Skip to content

Commit b878a71

Browse files
authored
chore(assignment) Added some clarifications in assignments (#21)
1 parent 3110723 commit b878a71

File tree

3 files changed

+26
-4
lines changed

3 files changed

+26
-4
lines changed

_includes/online-assignment/intro.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
Hey there :)
44

55
- Please read the instructions carefully before starting.
6+
- Please make sure you read the deliverables section before submitting your assignment.
67
- The instructions below include the expected time of finishing this assignment. If you spend significantly more time than expected then please check if your implementation does more things than the assignment asks for.
78
- Please keep your solution as simple as possible! We are impressed by simple and elegant solutions.
89
- If something is not clear to you please do not hesitate to get in touch with us for clarifications. We'd love to help you out!

back-end/code-review-exchange/assignment.md

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Notes:
1414
An ad exchange is a platform which facilitates the buying and selling of ads in real time.
1515

1616
- On one side of the ad exchange we have the mobile apps which send requests to our exchange to sell their traffic.
17-
- On the other side, the exchange communicates with bidders which submit their bids for the traffic if they are interested in buying it.
17+
- On the other side, the exchange communicates with bidders which submit their bids for the traffic if they are interested in buying it. These bidders are 3rd party companies and the exchanges simply communicate with them via a predefined protocol.
1818

1919
The ad exchange receives the bids and the highest bidder wins the auction and gets to show their ad. The flow is summarized in the diagram below.
2020

@@ -32,6 +32,7 @@ Notes:
3232

3333
- The requests to the bidders should be fired in parallel since the calls are independent and therefore we can avoid high latency.
3434
- If a bid request to a certain bidder fails then the exchange should dismiss that bid and continue its flow with the rest of the bidders.
35+
- The exchange should be able to facilitate an arbitrary number of bidder endpoints/connections in the future.
3536

3637
# Tasks
3738

@@ -63,9 +64,13 @@ Please feel free to suggest anything you think that can be improved. There is no
6364
- Go (Work in progress)
6465
- PHP (Work in progress)
6566
2. When you accept the assignment a new repo will be created which is the one you will be working on. You have admin rights so you can do anything you want. This repo contains a branch called ```feat/ad-exchnage``` which contains the code that you will review.
66-
2. Click on the Pull Request tab and create a new Pull Request with base branch ```master``` and source branch ```feat/ad-exchange```. Use this Pull Request ONLY to add your code review comments.
67+
2. Click on the Pull Request tab and create a new Pull Request with base branch ```master``` and source branch ```feat/ad-exchange```. Use this Pull Request ONLY to add your code review comments. If you are not familiar with Github's pull requests please check out [this link](https://help.github.com/articles/creating-a-pull-request/) to find out more.
6768
3. Add your review comments in that Pull Request.
6869

70+
### How do I submit my code review comments?
71+
72+
Please use Github's code review tool to submit your code review comments. It's super easy to use but if you are not familiar with this tool please check out [this link](https://help.github.com/articles/reviewing-proposed-changes-in-a-pull-request/) to find out more.
73+
6974
## Task 2
7075

7176
Implement your suggested improvements and end-to-end test cases to check that the business requirements are satisfied.
@@ -74,9 +79,15 @@ Implement your suggested improvements and end-to-end test cases to check that th
7479
- You are free to change whatever you want in the entire codebase. You can install any dependencies you might need. There is absolutely no limitation.
7580
- The codebase already contains some (failing) test code and fixtures. Again you can change whatever needs to be changed to make the tests run and verify that the app works as expected. Install anything you need. Change anything you need.
7681
- For your end-to-end test cases you will need to know how to communicate with the bidders. The API documentation for this purpose can be found [here](https://bidderapi.docs.apiary.io).
77-
- Your new changes should be implemented in a separate Pull Request.
82+
- Your new changes should be implemented in a separate Pull Request.
7883
- There is no need to implement unit tests, just the end to end tests!
7984

85+
### Important note
86+
87+
The bidder urls used in the original code do not work since this is a hypothetical scenario. However, you can assume that these are the valid urls we want to use in production. In your tests you should try to mock these endpoints as you would do in any case.
88+
89+
Please do not use the mock url which is auto-generated by the Apiary documentation.
90+
8091
# Deliverables
8192

8293
At the end you should have TWO separate Pull Requests:

front-end/code-review-bidders/assignment.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,13 @@ Please feel free to suggest anything you think that can be improved. There is no
6060
- [React](https://classroom.github.com/a/sQOFY9lb)
6161
- Angular (Work in progress)
6262
2. When you accept the assignment a new repo will be created which is the one you will be working on. You have admin rights so you can do anything you want. This repo contains a branch called ```feat/view-bidders``` which contains the code that you will review.
63-
2. Click on the Pull Request tab and create a new Pull Request with base branch ```master``` and source branch ```feat/view-bidders```. Use this Pull Request ONLY to add your code review comments.
63+
2. Click on the Pull Request tab and create a new Pull Request with base branch ```master``` and source branch ```feat/view-bidders```. Use this Pull Request ONLY to add your code review comments. If you are not familiar with Github's pull requests please check out [this link](https://help.github.com/articles/creating-a-pull-request/) to find out more.
6464
3. Add your review comments in that Pull Request.
6565

66+
### How do I submit my code review comments?
67+
68+
Please use Github's code review tool to submit your code review comments. It's super easy to use but if you are not familiar with this tool please check out [this link](https://help.github.com/articles/reviewing-proposed-changes-in-a-pull-request/) to find out more.
69+
6670
## Task 2
6771

6872
Implement your suggested improvements and end-to-end test cases to check that the business requirements are satisfied.
@@ -74,6 +78,12 @@ Implement your suggested improvements and end-to-end test cases to check that th
7478
- Your new changes should be implemented in a separate Pull Request.
7579
- There is no need to implement unit tests, just the end to end tests!
7680

81+
### Important note
82+
83+
The Bidder Management API url used in the original code does not work since this is a hypothetical scenario. However, you can assume that this is the valid url we want to use in production. In your tests you should try to mock that endpoint as you would do in any case.
84+
85+
Please do not use the mock url which is auto-generated by the Apiary documentation.
86+
7787
### Styleguide
7888

7989
If you need to implement styling please use the CSS styling already implemented in {{site.companyName}}'s [styleguide]({{page.styleguideUrl}}).

0 commit comments

Comments
 (0)