最近の仕事で「ネットワークに詳しいと言い張るルーティングテーブルを知らない人たち」に出会いました。
エンジニアであればわかるかもしれませんが、この人たちは「非エンジニア」で、いわゆる運用管理しかしたことのない人たちです。「非エンジニア」という表現が少し強い表現かもしれないので、少し柔らかく言うと「技術全体における自分の知識の範囲を理解していない人たち」です。
こういう人たちと話してみると、「目にみえる何か」しか気にしていないことがわかります。ネットワークという文脈で考えても、この人たちが考えていることは、このラックにこのネットワーク機器があってとか、このフロアとフロアはこのように配線していてとか、どのパッチにつながっているとか、そういうレベルの話ばかりです。
一定レベルのエンジニアであれば、ある程度、機器の設定情報やステータスからネットワークの構造を理解することができますし、それを理解するための重要な情報の一つにルーティングテーブルがあります。つまり、ルーティングテーブルを知らないというのは、少なくとも絶対にネットワークに詳しい人ではないですね。ここではルーティングテーブルの話ばかりしていますが、これは代表的な一例であり、もっと情報量は多いでご注意ください。そういえば、TCP のスリーウェイハンドシェイクも全く会話になりませんでしたね。
さらにたちが悪いのが、この人たちはこの状態で「自分たちは最高レベルのネットワークの知識を持っていると思っている」ということです。勘の良い人であれば、この時点でエンジニア的な会話が成り立つわけがないことが分かると思います。仮にそうだとしても「非常に限定された非エンジニア空間でのみ、その人たちのネットワークに詳しいという言い分は成り立つ」のだと言えます。この部分は非常に重要ですので、運用管理しかしたことない人は、自分の知識の範囲を理解することが重要です。
もちろん、物理的な何かも非常に重要ではあります。でも、ネットワークエンジニアは通常はそこが中心になることはないです。見方によってはただの配線工事のようなものですからね。
ネットワークに限ったことではないですが、一定のエンジニアのレベルになるには、かなりの経験が必要ですし、常に謙虚でなくてはなりません。そもそもゼロから設計し、検証し、構築した経験がなければ、本質的な理解などできるわけがないですし、様々な設計を繰り返し行うことで、多角的な見方ができるようになってきます。なのでそういう心構えのない人たちを私は軽蔑するかもしれません。