Architecting a product for the Internet of Things (IoT) is fundamentally different from architecting for web or mobile. Drawing from Tempest House's experience building numerous scalable applications, here are seven essential tips for building robust IoT products.
1. Expect Large Amounts of Data
IoT systems generate massive data volumes requiring strategic structuring. The recommended process involves:
- Determining data requirements and server transmission needs
- Collaborating with firmware architects on data structure and speed requirements
- Creating transformers to convert data for server transmission
The most important part is having clear communication between the data transit architect, web architect, and a competent firmware team.
2. High-Quality Firmware Is Worth Every Penny
Investing in quality firmware pays dividends across the entire product lifecycle.
Characteristics of quality firmware:
- All features are read/write capable
- Clear, efficient notifications
- Appropriate security verification in both mobile and device layers
- Full application insight into device functionality
Signs of low-quality firmware:
- Locked device capabilities
- Disorganized structure from poor planning
- Illogical APIs
3. Communication Is Key
Since connectivity is fundamental to an IoT product, communication from IoT devices is of the utmost importance. Tempest House implements a Redux-based messaging queue that:
- Continues resending until message receipt is confirmed
- Flags priority levels for dynamic queue reordering
- Sets contingencies for failed requests
4. Recognize IoT's Unique Security Threats
IoT products face distinct security challenges that require specific countermeasures.
Data Encryption
When used properly, it is nearly impossible for a hacker to decrypt your data without full access to your systems. Encryption should be a foundational element of any IoT architecture.
Token Authentication
Tempest House uses encrypted tokens for front-end and back-end authentication. Solutions like Ionic Identity Vault help prevent mobile device token retrieval and keep authentication secure.
Security Testing
Partnering with external companies like EdgeScan for manual and automated penetration testing provides third-party validation and certification. Independent security audits are essential for building trust with users and stakeholders.
5. Consider Compliance or Expect Costly Consequences
GDPR represents the most complex compliance challenge for IoT products. If anyone from the European Union uses your application and you are not following GDPR, you can be liable for up to 4% of your company's global revenue. Compliance must be built into the architecture from the beginning, not bolted on afterward.
6. Build for Scalability
A scalable product is key to a company's success, especially for networked IoT devices. Recommended approaches include:
- Using in-house Tempest Tools with built-in scalability features
- Combining tools with established backends like Express or Lumen
- Implementing microservice architecture with thin endpoints for load distribution
Microservices allow you to scale individual components independently, ensuring that high-traffic endpoints do not bottleneck the entire system.
7. Consider a Hybrid Approach for Apps
The hybrid approach -- running a virtual browser with JavaScript within a native app -- offers significant benefits:
- Easy, cost-effective development leveraging JavaScript expertise
- Portable code across Android, iOS, and web platforms
- Faster time to market with a single codebase
However, processor-intensive operations require native plugin code for optimization of battery and CPU usage. A thoughtful balance between hybrid and native components is essential.
Example IoT Architecture
Tempest House's typical IoT architecture using hybrid applications includes five key components:
A) Mobile Device Connection
A virtual browser in the mobile application uses Bluetooth Low Energy (BLE) to connect with the IoT device via a native plugin.
B) Load Balancing
Device communication reaches the server where a load balancer directs processing to appropriate nodes, ensuring even distribution of work.
C) Response Communication
Nodes respond through HTTP or real-time messaging. PubNub is recommended for its reliability and low development cost when real-time communication is needed.
D) Data Management
Backend nodes communicate with cache and database systems, whether SQL or NoSQL, depending on the data requirements.
E) Push Notifications
Mobile notifications route through Apple and Android messaging services to keep users informed of device status changes and important events.
Conclusion
Building an IoT product is a complicated endeavor. These seven tips represent foundational guidance for making smart architectural decisions, but every project will have unique requirements that demand careful consideration and expertise.

