Uber interview question

Write abstract http client with back-off support?