IoTシステムを設計するエンジニア、すなわちIoTアーキテクトには、どのような資質やスキルが求められるのだろうか。やはり、組み込み系とエンタープライズ系、そして人工知能やビッグデータなどの知識を合わせ持った、スーパーマンのようなフルスタックエンジニアが必要なのだろうか?

 実際、「IoTシステム技術検定試験」や「IoT検定」などのIoT関連試験は、非常に広い範囲の技術について出題される。人工知能だけでなく、アジャイルもデータベースも電子工学も法律も範囲に含み、広大である。これらを全て勉強し、経験を積まないといけないのだろうか。

 今回は、IoTを設計するアーキテクトに求められるスキルや知識を定義してみることにする。

悪いアーキテクトの条件

 良いアーキテクトの条件を知るには、悪いアーキテクトの例を見ていくことが早道だ。悪いアーキテクトはいくらでもいるが、その一端を紹介しよう。

(1)実装を知らない
 妄想で実現性が薄いアーキテクチャーを作りがち

(2)余計なことに首を突っ込む
 本質が抜けて、細かい部分に拘りすぎる

(3)バランス感覚が悪い
 システムの効率性を無視、あるいは機能性を無視する

(4)勉強をしない
 その結果、アーキテクチャーを作ることが人任せになる

(5)人の意見を聞かない
 自分の意見だけを推し進める

 この逆が良いアーキテクトである。もう蛇足かも知れないが以下に列挙する。

(1)実装を知っているが、細かな実装に拘り過ぎない
(2)企画や要求、運用者の心を掴む
(3)バランス感覚に優れる
(4)よく勉強する
(5)人の意見と自分の意見を調整できる

[画像のクリックで拡大表示]

 またアーキテクトは国民性も影響している。一般的に言われていることは、欧州では役割分担をきっちりとする職務型アーキテクトであり、米国では最初の出だしを一人で作るフロンティア型アーキテクトであり、日本ではチームで一緒に考える擦り合わせ型アーキテクトである。