de:codeで澤円さんが伝えたかった「エンジニアに必要なマネジメント」の真意とは?

連載: de:code 2017 特集 (4)

5月23・24日の二日間に渡って開催された日本マイクロソフトの開発者向けカンファレンス「de:code 2017」。その中でも定員数をはるかにオーバーし、入場規制もかかった澤円さんのセッション「これからのエンジニアに必要な『マネジメント』の考え方」が興味深かったので、レポートしたいと思います。

マネジメントは「管理職」のことだけはない

エンジニアの世界では日常茶飯事で交わされている以下のセリフ。皆さんも聞き覚えがありませんか?

これさ、なるはやでチャチャっと作ってよ

とりあえずいい感じに仕上げといて

なんかこれ、あんまり動かないよ

実はこれ、澤さんいわく「マネジメントが欠けている状態」なのだとか。どんなマネジメントが欠けているのかというと…、

  • なるはやでチャチャっと → スケジュールマネジメント
  • とりあえずいい感じに → クオリティマネジメント
  • あんまり動かない → リスクマネジメント

このように全ての出来事にはマネジメントがからんでいます。

マネジメントという言葉からは人事管理や人事評価といった「管理職」をイメージしがちですが、必ずしもそれだけではありません。仕事をする全ての人は、上記のようになんらかの形でマネジメントを「する側」の人であるのです。こうしたマネジメントをきちんと意識して仕事をすることが「エンジニアを救う」のだと澤さんは言います。

マネジメントという言葉は、もしドラ(※もし高校野球の女子マネージャーがドラッカーの『マネジメント』を読んだら)でピーター・F・ドラッカー氏とともにメジャーになりましたが、セッションではそのドラッガーの名言として澤さんが紹介したのがこちら。

テクノロジーで生活は便利になる。効率化するツールが出てくることによって、幸せになることもあれば、逆に振り回されることもある。ある人に都合のいいことは、ある人には都合が悪い場合もある。それは全てのマネジメントは常に「人」にあるからであり、エンジニアも結局は「人」だから。

「テクノロジーは人を幸せにするし、人の生活を豊かにするために存在するものですが、『Visual Studioはこういうことができます』『Windows 10にはこういう機能があります』というように、技術や製品の機能に人を合わせて説明してしまうと、だいたいうまくいかなくなります。主役は人であることを常に意識し、ユーザーサイドに立ち、主語を人にして人の立場をメインに話すとわかりやすくなります。そのために大事になってくるのは、最終的にはコミュニケーションです」

では、コミュニケーションをうまくするにはどうしたらいいのでしょうか。

「ここの色を変えて」「画面遷移を逆にしといて」

要求する側にしたら簡単にできそうに思えますが、その作業の裏側には数えきれないメソッドや作業が潜んでいたりします。なぜそう誤解してしまうのかというと、要求する側は自分の都合のいい状態で頭の中でイメージしてしまうからなのです。

「それを防ぐには、何が問題なのか、何が原因なのか、何がどう見えているのかを理解し、言語化して伝えることで、お互いの合意にもっていかなくてはいけません。しかし、日本人はそうしたマネジメントが根付いていません。どちらかと言えば、曖昧なコミュニケーションを好む傾向があります」

コンピュータの世界は、0と1のみ。「なる早でちゃちゃっと」では通じません。エンジニアがコーディングするとなれば、明確な仕様、要件定義が必要です。それを伝えるためにはわかりやすい言葉に置き換える必要があるのです。

シリコンバレーは“マインドセット”の聖地

ここで澤さんは、シリコンバレーに在住する友人の言葉を紹介。

「シリコンバレーは地名ではなく、マインドセット。マインドセットは空気を共有するのに必要不可欠」だという友人の言葉に、澤さんはすごく腹落ちしたそうです。

時間と空間を共有できる価値、カッティングエッジとパッション、優秀な頭脳はもちろんですが、マインドセットが共有されている場がシリコンバレーなのだと。

そして、このマインドセットが輸出され、最も息づいているところはインドだといいます。ただ勉強や仕事をして帰ってくるだけではなく、マインドセットを吸収し、帰国して起業する人が増え、インドはシリコンバレー化しているのだそうです。

「インド人は成長力が高くて問題解決能力が抜群であり、GoogleやMicrosoftをはじめとするグローバル企業でもインド人の優れた経営者が数多くいることがそれを証明しています」

当事者全員が「理解できる」のがマネジメント

実際にMicrosoftではどのように開発フローが進められているのか、マイクロソフトディべロプメントのトップ・安達理社長にヒアリングした話を紹介してくれました。

1)カスタマープロミス

まず最初に行うのは、カスタマーに対してどんな約束ができるのか、全員で合意すること。全員というところが大事 合意しないことに対して何かすると必ずエラーになる。

2)シナリオプランニング

具体的にどんなシーンでどんな使い方をするのかなどを考えてプランニングする。例えば「最高のエクスペリエンスとエンターテインメント機能を持つコンピュータを提供する」としたら、どんなシーンで使うのかといったことをペルソナを作りながら考えていく。

3)デリバラブル定義

実現できるかどうか デリバリできるかどうかを検討する。

4)タスク設定

誰が何を担当するかを決めてタスク設定し、アジャイルで開発していく。

ポイントは、上の人が決めたことに対して言われた通りに開発するのではなく、みんなで合意して作っていくということ。実際の作業はこのように細分化されて開発が進んでいくといいます。

それぞれのタスクにはKPIが設定され、責任範囲や実行状況などを判断していきます。このKPI設定とタスク設定がきちんとしていないとプロジェクトはうまくいかないと澤さんは言い切ります。

「タスクは降ってくるものだという意識でいると仕事はできません。自分たちで定義して作っていくもの、権利だと考えるべきです。不得意なことは人に任せるという手もあるが、タスクを自分で定義することが大事。イノベーションは言われたことをやっているだけでは絶対に生まれません。それができていないのなら、提言してみる。それでも変わらないと思うのなら転職をしほうがいいくらい重要な権利なのです」

ちなみに、Microsoftではオーナーシップという言葉がよく使われるそうです。タスク設定した人がオーナーでボスで、責任はその人にある。だからオーナーシップをとるという考え方。案件を作った瞬間にその人は一番偉い立場となり、社内はリソース化します。たとえ社長であってもリソースの一部なので、必要であれば社長を動かすこともできるのだとか。

ただし、全てのボスには説明責任があります。構築までのステップから改変作業まで可視化して説明し、リスク、コスト、スケジュール、リソースをマネジメントする責任や、場合によっては交渉や提案する責任もあります。

「当事者全員が理解できることがマネジメント。説明責任を果たすためには、言語化が必要です。技術的に詳しいことは武器ですが、それに説明スキルを持つエンジニアはさらに無敵。論理的かつ簡単に説明する能力を磨くべきだと思います。その技術や製品に対して何も知らない人に説明するといい訓練になります」

自分で案件を生み出しマネジメントするのであれば、時間も人のリソース、働く場所も自由に選べるメリットがあります。自由と責任のバランスは大事なポイントであり、責任を果たせば自由が手に入る。責任を果たせれば、さらにもっと大きな責任を任されるようになり、世の中に貢献する場が増えるでしょう。


通路もステージ前も受講者で埋まっていた澤さんのセッション会場

最後にシリコンバレーの友人が教えてくれたこととして、以下の3つを挙げました。

  • クリエイティブであること
  • リーダーシップを発揮すること
  • 起業家精神をもつこと

「AIやロボットが発達していったとしても、この3つは機械にはできないこと。そうであってほしい、そうでなくてはいけない。最前線で仕事をしているのに、置き換えられるなんてもったいない、つまらないですよね。皆さんも組織の中でも起業家精神を持ちつつ、リーダーシップを発揮してクリエイティブなことをしたいと思っている人は多いはず。
僕も文系の大学でしたが、ITは大きなものを生み出せるし、世の中を変えることができるんじゃないかと思って、IT企業に入ったんです」

ITは、人の幸せを創るために存在しています。そう信じることがマネジメントの神髄であり、ITと触れていれば、仕事のやり方も変わってきます。

「どうやったら人を幸せにできるテクノロジーを生み出せるかを考える、人がどう幸せを感じるのか見てみることは本当に大事なことです。ステキな未来を一緒に創っていくために我々はここにいます。創る権利、パワー、能力、理解など、もし足りてないものがあれば、私たちからもピックアップしてください」

そんなエモーショナルなメッセージでセッションは終了。50分間があっという間でした。澤さんのセッションはMicrosoftの動画チャンネルchannel9で公開されるそうなので、動画で見たいという方はぜひチェックしてみてください。


セッション前の澤さん自撮りショットから拝借。参加者の皆さん、嬉しそうですね

週間PVランキング

新着記事

Powered byNTT Communications

tag list

アクセシビリティ イベント エンタープライズ デザイン ハイブリッド パフォーマンス ブラウザ プログラミング マークアップ モバイル 海外 高速化 Angular2 AngularJS Chrome Cordova CSS de:code ECMAScript Edge Firefox Google Google I/O 2014 HTML5 Conference 2013 html5j IoT JavaScript Microsoft Node.js Polymer Progressive Web Apps React Safari SkyWay TypeScript UI UX W3C W3C仕様 Webアプリ Web Components WebGL WebRTC WebSocket WebVR