I am an Embedded Engineer, and I build IoT devices for various industries at my current company. I always wanted to increase my value as an engineer so I want to do things (like building my own ultra-low current sensor) that make me closer to my goal. Becoming an IoT Architect or aspiring to be one would be a great motivation to push yourself forward.
The Internet is full of great content but it’s too scattered and some of it is outdated. I decided to write my own roadmap to become an IoT Architect, and I think this is by far the most comprehensive guide for this niche. I’m also working together with an actual IoT Architect at my workplace. So, much of this info is obtained first-hand.
Who is an IoT Architect?
IoT Architect is a pretty senior role in the corporate world.
You may have heard something like IoT developer, Senior Embedded Engineer role somewhere, but an Architect (whether is for IoT niche or Cloud, or event Network) role is beyond the (technical) senior level (this, of course, varies between companies, but at least it’s true at my previous employer).
The architect role is no longer technical as you required to make conversation with various stakeholders and to talk in business language, the language that they understand.
IoT itself has gained traction at least for 10 years now, and I’ve into IoT for 6 years since 2014 (yes I’m old). We have so many embedded engineers in the world, but since IoT still at its infancy, we don’t have IoT Architects as much.
Which brings us to the next point. The world is also beginning to embrace the idea of analytics (data analytics, visual analytics, machine learning, Industry 4.0 just to name a few of the buzzwords), increasing demand for highly complex systems.
Since IoT involves hardware, no traditional Software Architects can do the job. We need another, specialized, highly trained Architect.
And it’s called IoT Architect.
What is the Required Knowledge to Become One?
There is a long list of things that an IoT Architect should master (well, at least you’re familiar and understand the concepts, you could see the list at the end of this section). Basically, you will need to know some electronics, some internet protocols, how to direct data flow, and how to present the data.
If you want to know what skills that are practically required, why not look up some practical example, like, from an actual job posting?
See a job posting for an IoT Architect role at Amazon below:
and also see another IoT Architect job posting from Atos Company below:
Of course, different industries need different in-depth skill set, but what’s the common line here?
You’re expected to bridge clients/business team with technical staffs
It requires a lot of experience since business and technical team is a complete opposite animal. Different mindset, different deadline, and different view of how to approach the very same problem.
You need to be able to translate their language into the language the each understand.
Sometimes business people want something that technically challenging (according to your technical staff) or even impossible (like, assembling PCB boards on the fly using AWS EC2, that’s obviously impossible, right? Obviously. Or is it?). That’s your job.
Basically, you work like a device driver.
You’re expected to architect a partial or even a full system solution that matches company needs and tech specialty
Be it an architecture to collect thousands of items/second via a wireless link and visualize it using Google Cloud Data Studio in real-time, or just building a load-balanced MQTT Broker which needs to deal with millions of nodes, that’s your job to figure out.
But remember, you design, not necessarily you write code for it (well, sometimes you need to build a Proof-of-Concept, but yeah it’s just a “POC”), the other teams will handle the rest for you, especially if your company has a specialized team dedicated to building your system.
You create an execution guideline how to build such a system/solution, and ready to help in technical stuff as well
Imagine this situation. You build hardware that transmits the data to a VM, and that VM should respond back to the hardware. The question is, which to build first? The hardware or the software?
This chicken-and-egg question begs to be solved with a definitive execution guideline. Now, that’s your job.
The List of IoT Architect Skills So You Can Get the Job Done
This list is adapted from Arcitura IoT Certification module
First, understand the basic building block of IoT
- The definition of Things, Connectivity, Data, Processing, Commands, and Business Analytics. And how they interact with each other.
- IoT Business and Technology Drivers, Benefits and Challenges
- Miniaturization and Nanotechnology
- IoT Connectivity, Contextual Realtime Data, and its business domains (Personal, Home, Enterprise, Utilities, Mobile)
- IoT vs the Internet
- Resource-Constrained Devices and LPWAN
- Active and Passive Devices
- Telemetry and Command Data
- Sensors (Mechanical, Resistive, Optical, Ranging, MEMS)
- Microcontrollers, Firmware and Power Sources
- IoT Gateways and Common Gateway Functions
- Understanding of Edge and Fog Computing
- IoT Platforms and Common Platform Functions
- IoT Architecture Layers and Action Modeling
- Key IoT Architecture Design Considerations
- Radio Transports (High vs Low Frequency, Signal Bandwidth, Noise Immunity, Power Consumption, Coverage Range)
- IoT Messaging with REST, HTTP and the Constrained Application Protocol (CoAp)
- REST Properties and Constrains with IoT and CoAp
- HTTP Resource Identifiers, Media Types, and Method with IoT and CoAps
- IoT Publish-and-Subscribe concept and MQTT
- Data Serialization using JSON
- Binary Data Serialization using Protobuf
Second, understand the common patterns and layers being used in IoT domain
- Components of an IoT Device (including sensor, actuator, modem, control logic, etc.)
- IoT Platforms, Gateways, and Publish-Subscribe Systems
- Device Shadows and Device Shadow Registries
- Trusted Platform Module (TPM) and the Truncated Exponential Back-off Algorithm
- Fundamental Functional Distribution Patterns
- Autonomous Controlling Device Model, Intermediary Controlling Model
- Multi-Gateway Intermediary Controlling Model, Recipient Device Controlling Model
- Telemetry Processing Patterns
- Minimalized Data, Canonical Data Format
- Telemetry Modeling, Intermediary Metadata Provisioning
- Information Transduction and Encoding
- Performance Optimization Patterns
- Observe Messaging, Transport Quality Traffic Profile
- Reconnection Request Regulation, Device Workload Regulation
- Security, Reliability and Utility Patterns
- Radio Transport Encryption, Firmware Integrity Attestation
- Message Bookkeeping, Multimode Communication
- Network-Based Positioning and Triangulation
Third, understand other topic related to IoT
you don’t need to master these except IoT Security, but definitely you should understand the underlying concepts so you can keep up with other teams:
- Basic Data Analytics (Event processing, Pipeline, Rules Engine, Lambda Architecture)
- Machine Learning for IoT (Model, Dataset, Training, Inference, Neural Networks)
- IoT Security (Cryptography, Hardware and software attack). A secure system is a system that is designed with security in mind. Security is designed, not something that can be added later.
Finally, Use-Cases Exposure
You need to be exposed with a lot, I mean a lot of use cases of IoT solution. The point of an IoT Architect is to apply his experience and expertise to build the best fit solution for whatever needs are.
Should you get a certification as an IoT Architect?
Certification could definifitely be used to boost your career. A certificate is an acknowledgment that you have mastered the required material to successfully perform the job.
But remember! Everyone can issue a certificate, but there’s not much organization/institution that has a great credibility and trust that worth getting a certification from. So, you must choose carefully.
How to further your way As an IoT Architect?
In this stage, you will want to expand your knowledge even more so you can add your value as an architect.
But oftentimes you couldn’t find the right place to upgrade your skills. So how do you make your way further?
Yes, you read that right. By networking, you will have a good chance to meet some amazing people, just like you, that wanting to share their experience. Of course, you can share your own with them as well.
Honestly, I couldn’t find any groups that specifically discuss IoT architecture. But, if you happen to live in Indonesia, I’ve got you something similar, at least it’s about software architecture. You can visit them here: https://sarccom.org/
Please, if you do know any interesting groups about IoT Architect(ure), let me know in the comment section below!
By Writing Blog Post!
Do you remember that the best way to learn is to teach? Well, now is the time for you to become an authority, (with the right marketing techniques) people will respect you and other experts will want to discuss anything with you, so you can give them feedback and you can also get feedback, increasing your practical knowledge.
IoT Architect, just like other Architect title, is a senior role and definitely requires an extensive amount of experience and technology exposure.
It may seem daunting at first, of course, there’s a lot to learn to become an architect. Well, here’s the secret: you don’t need to actually master all of the topics above, you just at least need to be familiar with them and had a hand-on experience, just to know the concept. As long as you could demonstrate your value, the rest is just a matter of learning, even a professional architect will keep learning new stuff anyway.
Be patients, do the homework. Luck Is What Happens When Preparation Meets Opportunity.