Learning how to create an end-to-end REST based system