IoT A framework for architecting IoT solutions How to approach, design and implement a production grade IoT solution using public cloud platforms