Architectural thinking
Building a great IoT architecture requires a good understanding of the steps involved and how everything fits together. Most of us know the basics, at least conceptually, of how to collect data in a variety of ways and then move data into the cloud but putting together an end-to-end flow that allows you to process, store, and visualize data and subsequent analysis is the challenge. There are many ways to accomplish these goals, and not thinking it through could have consequences. This could be costly if a rework is required in the future. On the other hand, too much analysis and overworking of your architecture can also have the effect of costing you more time and effort, both initially and over the long term.
Architects often need to walk a very thin line between the traditional approach of designing for every occurrence (what if we need this function or that feature in the future?), and a more agile approach of building just what you need, when you need...