
The Internet of Things (IoT) presents new challenges for companies
How do I build an IoT platform – at Vorwerk Temial?
IoT platforms can also help solve these very specific challenges very efficiently. What's tough about building this kind of solution is that there is no single perfect IoT platform for every business because, after all, requirements and goals often vary widely. Sometimes the right strategy is to approach the topic one step at a time – and learn from others. With this in mind, I have compiled some of the most important questions and insights that we came across while building our IoT platform at Temial.
Why do we even need an IoT platform?
Our Temial tea maker can be controlled locally – but it can also be controlled through an app that starts the steeping process. All of the commands that a person sends with the smartphone go to our central "brain" in the cloud as messages to be processed. All these processes happen in real time, and an IoT platform helps steer the data traffic. In addition, it centrally steers standardized processes from our web store, logistics and accounting. Of course, the idea of a platform is nothing new in IT. One the major advantages of an IoT solution is that it enables us to continually improve Temial's software and our smartphone apps and enhance them with new functions. This has a clear benefit for customers: They get a product that's ready to use when they buy it, and in addition we can continue to develop it while they use it. Customer feedback plays an important role in this ongoing development by enabling us to iteratively improve our products.
How do I build an IoT platform?

With Temial, we chose to have always every single message that the different systems exchange with one another go through the "brain" in the cloud. This enables us to change or replace a system – from one of our logistics providers, for example – when we need to, without having to touch all the other areas that the system works with. Basically, you can say that our IoT platform has three layers, each of which contains various systems, and all of them are interconnected and centrally controlled through our software in the cloud. The three layers I just referred to are the visualization layer, the integration layer and the backend and data storage layer. The integration layer is our key, because it custom-routes all the messages for the company and it contains the logic that controls the product. The visualization layer essentially contains the software that the customer sees. We rely on standards in this layer whenever it makes sense – like for our web store. When necessary, like for appliance controls, we did the programming ourselves at Vorwerk. We rely a lot on standardization in the data storage layer, too, for things like accounting processes and warehouse logistics processes.
Is it better to buy an IoT platform or develop one yourself?
Companies that rely on standards in their IoT platform may be able to save themselves some development costs. But this also limits them – by binding them to the service provider defined by their platform provider, for instance. A product-specific layer in the cloud always requires a specific degree of self-development. As a result, companies that want to connect an IoT appliance to their platform will almost never be able to buy a full solution. Because, as mentioned above, their requirements and goals are usually far too unique.
Open source: Yes or no?
Personally, I love open source. But that's probably just because I'm an IT professional. :) It's easy to see the advantages: You save licensing fees, you can view the source code and you can almost always perfectly customize solutions to meet your needs. Open source also gives you more freedom than off-the-shelf software when it comes to choosing a service provider. We rely on open-source solutions for the product-specific part of our IoT platform. Apache Kafka handles real-time distribution of messages. We rely on Kubernetes for orchestration – which is the supplying, scaling and managing of container applications. One of the biggest challenges is having enough server capacity and computing capacity available during peak hours, when our appliances are being used by a very large number of customers at the same time. The load on our systems can jump by five to seven times in the morning when people make their first cup of tea.
What are the biggest challenges you face with an IoT platform?
When a customer orders a Temial, it impacts absolutely everything in our IT landscape – from manufacturing, warehouse logistics and shipping to using the tea maker after it arrives at a customer's home. Add to this the large number of technical dependencies and requirements, like different smartphone operating systems (iOS and Android), different browsers and even different routers and degrees of network quality on the customer end. Even when you think you've taken all these variables into consideration, something new always gets thrown into the mix. With all this in mind, the three most important things I've learned about IoT platforms are:
1.
Doing your own development gives you more flexibility –
which enables you to quickly respond to the dependencies I mentioned. Be sure to always think long-term. Never throw your own specifications out the window to save time.
2.
Always remember to install updates –
when you build a new IoT platform, you tend to focus on the problems you have right now. But it's always a mistake to postpone updates because of those immediate concerns. The bigger the gap becomes between you and the market, the more difficult, time-intensive and cost-intensive future developments become. Nothing new, for sure.
3.
Maintain a positive attitude –
this might sound silly but it's not. Building an IoT platform is a complex task, and it can be nerve-racking. But: once you get past the complexity and develop separate, autonomous services, it's easier to implement new ideas for your product quickly and efficiently. Not only is that exciting, it's fun for everyone – IT people and customers included!