アイキャッチ

エンジニアが大規模組織を使い倒すには? デジ庁藤本真樹×IPA登大遊が語った“大企業ハック”術【ECDW2022レポ】

働き方

2022年6月21日(火)~25日(土)にわたってエンジニアtypeが開催したオンラインカンファレンス『ENGINEERキャリアデザインウィーク2022』(ECDW2022)の基調講演、「大規模組織でエンジニアがイノベーティブに働くには?」に登壇した、デジタル庁CTOの藤本真樹さんと、IPAサイバー技術研究室長、NTT東日本特殊局員である登大遊さん。

前編の記事に引き続き、後編となる本記事では、「エンジニアが大規模組織をうまく使い倒す方法」について紹介しよう。

前編:「けしからんNTTをやっつけようと思った」登大遊×藤本真樹が大規模組織に身を置くワケ【ECDW2022レポ】

プロフィール画像

デジタル庁 CTO  藤本真樹さん

2001年に上智大学文学部卒業後、株式会社アストラザスタジオを経て、03年に有限会社テューンビズに入社。PHP等のオープンソースプロジェクトに参画し、オープンソースソフトウェアシステムのコンサルティングなどを担当。04年のグリー株式会社立ち上げから参画し、翌05年には同社の取締役に就任。21年より現職

プロフィール画像

登大遊さん

1984年兵庫県生まれ。2003年に筑波大学に入学。同年、IPA(独立行政法人情報処理推進機構)の「未踏ソフトウェア創造事業 未踏ユース部門」に採択、開発した『SoftEther』で天才プログラマー/スーパークリエータ認定を受ける。17年、筑波大学大学院システム情報工学研究科博士後期課程修了。博士(工学)。現在、IPAサイバー技術研究室長のほか、ソフトイーサ株式会社代表取締役、筑波大学産学連携准教授、NTT東日本特殊局員など、さまざまな顔を持つ

ルールを変えるのが難しければ「解釈」で乗り切るのも手

登大遊、藤本真樹

――大規模組織で働く上で、プロジェクトの進め方や運用面での「ルールの多さ」が気になるエンジニアも多いのではと思います。お二人はそういったしきたりや決まりごとなどの運用について、どう考えますか?

藤本:まず、大前提として、行政でも会社でも、ルールをわざわざ増やしたい人はいないんですよ。だけど、何か事件が起きると「ルールを決めよう」という流れになるし、撤廃しようにも「事件がまた起きたらどうするんだ」という議論になるため保守的になってしまう。

登さんに伺いたいのですが、こういった問題に対する良いアプローチはありますか?

登:可能性は二つあります。

一つは、技術上でもサービス上でも、何らかの問題が発生し、急いで対処しなければならなくなったタイミングを利用することです。

こういう局面では、緊急性があり、従来のルールに基づいて進めているうちにより大きな不利益が生じることが明らかですので、「承認は後回しで、直ちに問題を解決しよう」と、大胆な議論がしやすいです。

それこそ、コロナ禍におけるリモートワークの浸透などもそうですね。本来はセキュリティーの問題とか、いろいろなルールについて、それらの合理性をいちいち厳密に検討した上で、ルールを守らないといけないんですけど、「そんなことを言っている場合ではないから、とりあえず問題を解決しなければならない」という空気になりやすいです。

二つ目は、「これをやりたいけれども、従来の慣習や明文化されたルールに則ると面倒くさい」というときに、解釈や運用を工夫して、抜け道を探してしまうことです。

例えば人間の身体や構造というものをシステムとしてみた時。これは、大昔からこの形で決まっていて、容易には変更できません。

そこで工学というものは、こういう人体のような固定されたシステムの制約に限界を感じ、人間に代わるものとして、コンピュータを作ったり、ロボットを作ったりして行動の自由度を上げようとする活動です。

他方で、医学というものは、人間の形はそのままに保ちつつ、色々な工夫をして人間システムそのものの寿命を何とか伸ばそうとする活動です。一見、回り道のように見えますが、医学においては、そのアプローチを続けた結果、人間を置き換えることをせず、人間の寿命そのものをずいぶん伸ばせました。

このように、何でもイチから作り直すのではなく、すでに形づくられたものをうまく変えていく医学的な高寿命化アプローチにも一定の価値があると考えます。

藤本:良い意味でエンジニア的ではない発想ですね。こうした考えに至ったきっかけはあったんですか。

登:僕は昔からオペレーティングシステム(OS)のように基盤として動くプログラムが好きで、自分で作ることもありました。

こうしたものは、はじめは特に深く考えず身軽に開発できるのですが、だんだんと上層に高度なアプリケーションプログラムが積み重なってくると、下のレイヤであるOSなどのシステムソフトウエアのビヘイビア(挙動)は、容易に変更できない状況に陥るんです。

下層を作り直すと、下層だけで良いと思っていても、絶妙なビヘイビアが変わってしまい、結局上層もすべて大改修する必要が生じる。

作り直しによって得られる利益よりも不利益のほうが総合的に大きい場合も多いことから、一番下の層の実装はそのままにして、何とか上位レイヤの方で工夫してやりくりするしかないということになります。

これはまさに「フレームワークでごまかす」手法ですが、これで長期的に安定して動くのであれば、下層の設計がもともと多少まずくても、結果としては問題ないことになります。

このように、実社会でよく用いられているコンピュータシステムの発想をもと、「ルールを作り直すのではなく、解釈や運用で工夫をする」という手法が生じるものと考えられます。

藤本:これまた興味深いお話です。ちょっとルールの話からは逸れますが、それこそNTTのシステムにも、「不思議な仕組みで動いているシステム」なんかがありそうですが、いかがですか。

登:はい、IPAやNTTには極めて大規模な「秘密のシステム」が多数あります。

たとえば、大規模な全国的光ファイバ網のPPPoEの接続制御を行なうシステムのようなものを想像してください。このように、大規模組織で稼働するソフトウエアには、安定稼働が必須の社会インフラを支えるシステムとしての魅力が存在します。

このような重要かつ大規模なシステムが物理的に存在するというのは、大規模組織ならではで、やりがいを感じるエンジニアは少なくないと思います。デジタル庁にもそういったものはありますか?

藤本:いや、デジタル庁はまだできたばかりなので、IPAやNTTほど「すごい」ものはありません。

ただ、行政のほとんどのシステムはデジタル庁が関わっていくことになりますし、むしろ(デジタル庁の存在意義から考えると)外れているシステムがあるとまずいわけで、もうちょっと経てば国のど真ん中に関わる設計にも携わる可能性があります。

ところで、先ほど登さんは「こんな規模のシステムに触れるのはワクワクする」とおっしゃっていましたが、裏を返せば「このケーブルを誤って抜いたら、日本中のシステムが大変なことになるぞ」みたいなインシデントと表裏一体じゃないですか(笑)

それってプレッシャーじゃないですか?

登:自分でも、シン・テレワークシステムや自治体テレワークシステム、VPN、DDNS など、ダウンすると数十~百万人に影響が出るシステムをいくつか開発して物理的に維持していますが特にそういったプレッシャーを感じたことはないです。

それに本当の問題は、不具合が発生することではなく、不具合で停止した後「一定時間不具合が継続すること」です。仮に不具合が発生しても、すぐに復旧できれば問題は少ないないはずで、恐れずに試行回数を増やしたいなと思いますね。

登大遊、藤本真樹

藤本:極めてソフトウエアエンジニア的な意見ですね。世界中がそのくらい柔軟だといいのかもしれません。

ただ、そんなふうに大胆に構えられる人って、「別に、この組織をクビになってもどこかは拾ってくれるし」みたいな気持ちがあるのではと。

自分もそうなのですが、「いざとなったら別の組織に行こう」と思って仕事をしていると、変に気負うところがなくなって、楽しく働けたりしませんか?

登:「クビになってもいいや」とまでは思わないですね(笑)。確かに、どこかに居場所はあるだろうけれど、日本型組織で学べることがまだまだあると感じているので。

個人的に、日本のイノベーションは、アメリカ等の合理的な外資ICT企業の模倣ではなく、日本的な伝統組織の中から出てくるのではと考えています。

それらを発掘したり、新しく生じやすくしたりするような環境を、既存の日本型組織の中で作るのが、自分の役割であり、 長きにわたって取り組んでいく必要があるタスクなので、クビになって計画が道半ばになってしまったら、別の大規模組織に属して、同じことを一から試行するコストが発生します。

それはすごく面倒なので(笑)、やっぱり、クビにはなりたくないかな。

「人間の敵」は難しい問題じゃない。上下左右に味方を増やせ

登大遊、藤本真樹

――さて、ここからは視聴者からの質問にお答えいただければと思います。まずは、「お二人のようにとがった実践をされている方だと、社内からの風当たりが強くありませんか?」というご質問ですが、いかがでしょうか。

登:いや、「人間の敵」はそんなにいないですね。われわれの敵は、「技術的に解決しなければいけない問題」なので。

技術的な難問に比べれば、人間同士の問題なんてたやすいことです。予防も可能です。

今は、とても難しい技術上の問題をどこか天から押し付けられて、仕方なく解決している感じなので、あんまり人間関係どうこうで悩んだことはないです。

藤本:一つ私から付け加えると、おそらくここでお話されている伝統的な日本企業の「敵」のイメージって、「心を込めてExcelに1マスずつ入力して、電卓で検算することこそがおもてなしだ」「システムで処理するなんて心がこもっていない」みたいな人を指すことが多いじゃないですか。登さんの周りには、そういう人はいませんでしたか。

登:あまり周囲にいた記憶はありませんが、どこかの組織にはいるでしょうね。ただ、そんな変な部分にエネルギーを使うことを正義だと思っている人がいたとしても、 おそらく、その人はあまり影響力を持っていないはずです。

合理的な判断が求められる局面で非合理な判断をし続けると、組織が衰退することにつながるため、ビジネスの場からは遅かれ早かれ退場させられるはず。だから、あまり気にしなくてもよいのでは。

藤本:それは、その通りですね。

登:もしも実際にその人が力を持っていて困るときには、「短期的にはよくても、その考え方でずっとやっていくのはあなたにとって不利です」と説得を試みることです。 それでも直らなければ、他の人に相談して、そのような人とあまり関わらないようにするしかないですね。

それから、マイルールを押し付けてくる人へのもう一つの対抗策は、その人よりルールに詳しくなることです。

そうすればルールについての議論に勝てるので、その人もいずれ諦めて何も言ってこなくなります。ルールはプログラムと似たようなところがありますから、読解の速度と解釈の精度に関しては、エンジニアに分があるはず。そうやって戦って勝つしかないですね。

――次に「お二人がいま、新人や若手の立場だったとしたら、大企業でどのように立ち回りますか」という質問が来ていますが、いかがでしょう。

登大遊、藤本真樹

藤本:僕は割と、どんな環境でもまずそこで「こいつ使えるな」と思われるようになるのを頑張るタイプです。だから、もしも大企業に新入社員として入ったら、とりあえず一生懸命良いコードを書くように頑張るんじゃないでしょうか。

エンジニアとして採用されたのに、急に「営業をやってください」って言われたら、さすがに「いやちょっと……」とは言いますけど(笑)

大規模組織の立ち回りで重要になるのは、上下左右に味方をどう増やすか。「こいつが喋ってるなら、ちょっと聞いてやろう」って思ってもらえるような仕事をすることが大事かなと思います。

もう一つは、「複数の組織に属す」かな。僕や登さんのように、今やいろんなところで働くスタイルがめずらしくないわけです。いまの会社だけでは何かが足りないと思ったら、社外のエンジニアコミュニティーで知見を広げるとか、副業をやってみるとか。

全然違う環境に身を置くと、意外な自分の武器が見つかるかもしれません。どんなかたちであれ、得られるものがあるはずです。

登:大企業だと、組織内にいろいろ面白いものがあるはずなので、とりあえず全部見てみますね。たとえ自分に権限がなくとも、与えられた時間を有効に活用して、空いた時間で多種多様な分野の勉強を広く浅くしておくと、いずれ自分の権限も拡大していくんじゃないかと思います。

――それでは最後に「大規模組織で働く魅力」について、一言ずつお願いします。

藤本:世の中にはいろいろなエンジニアがいるので、大きな組織が全員にフィットするわけではありません。でも、「大規模組織じゃないとできないこと」は間違いなくあります。

その中で上手にエンジニアとして生きていく人が増えれば、日本という大きな単位で見ても、できることがもっともっと増えていくと思います。 皆さんの知見を集めて、楽しく仕事をして、結果この国にいいことがもっと起きるようにしていきたいですし、していきましょう。

登:デジタル庁というお役所の中にも、藤本さんのようにエンジニアリングを理解しつつマネジメントもできるという、ヘンテコで素晴らしい方は存在します。エンジニアの活躍の場の一つの選択肢として、大規模な組織、日本的な組織、役所的な組織を選ぶのも、きっと面白みがあると信じています。

――お二人とも、ありがとうございました!

>>デジタル庁 Engineering の求人

文/松田小牧

Xをフォローしよう

この記事をシェア

RELATED関連記事

RANKING人気記事ランキング

JOB BOARD編集部オススメ求人特集





サイトマップ