【世界一流エンジニアの思考法】AI時代に生き残るプログラマーとは

how-world-class-engineers-think

ChatGPTなどの生成AIの登場で、世の中は大きく変わりました。

問いかければ何でも答えてくれるAI。その回答の精度も高い。プログラムコードもすらすら書いてくれます。

そんなAIに対して、便利さを享受する反面、こんな疑念も渦巻いています。

プログラマーは、AIに職を奪われるのか?

書籍『世界一流エンジニアの思考法』では、AIの時代にこそ持っておくべきプログラマーの思想が、赤裸々と語られています。

目次

『世界一流エンジニアの思考法』とは

書籍『世界一流エンジニアの思考法』は、マイクロソフトのシニアソフトウェアエンジニアである、牛尾剛さんによる著書です。

¥1,700 (2023/11/11 07:14時点 | Amazon調べ)
\楽天ポイント4倍セール!/
楽天市場
\ポイント5%還元!/
Yahooショッピング

著者は、44歳でマイクロソフトに転職しプログラマーになられたという異色の経歴をお持ちです。その経験の中で触れた、世界一流のエンジニアの考え方を分かりやすく解説されています。

書籍の冒頭で、こう語られています。

この本の革新にあるスキルは、《AI時代を生き延びる思考法》といってもいい。

そのスキルとは、いったいなんなのでしょう?

AI時代に生き残るエンジニアの本質

『世界一流エンジニアの思考法』での、AI時代に必要なスキルについて、このようなものが挙げられています。

  • 「理解」にしっかり時間をかける
  • 早く「失敗」できるように考える
  • 「専門性」を追求する姿勢を持つ

「理解」にしっかり時間をかける

初心者プログラマーは、書籍や学習サイトのコードをコピーして、動かしてみたりするでしょう。

コードは動いた。プログラミングが身についた気がする。でも自分でコードを書こうとすると手が動かない。こんな経験ありませんか?

本書で、このような経験談が書かれています。

私は、理解というものは最初から完璧にはできなくて徐々に身についていくイメージを持っていた。しかも、私は「とにかく生産性をあげなければ」「どうやったら早くできるだろう」と常に焦燥感にかられ、アウトカム(成果)を出すことに集中してきた。

しかし、皮肉なことに「早くできるように頑張る」ということが最終的な生産性をむしろ下げていたように思う。

ただ手を動かすだけでなく、基礎的なことを、しっかりと時間をかけて、理解する。この重要さが語られています。

コードを読むときも、

コードのロジックを読むのではなく、コードの意図とその背後のアーキテクチャを理解するために読み込む

とったことを心がけると、複雑なコードも読めるようになってきます。

誰もがアクセスできる基礎は、じっくりと時間をかければ、深く理解できる。やろうと思えばすぐにできるシンプルなことだ。どんな人も、最初は難しく、理解には時間がかかる。結局のところ、シンプルな日々の積み重ねが一番強い

早く「失敗」できるように考える

「失敗」という言葉には、ネガティブなイメージがあります。起こしてはいけない、できれば避けたい。

筆者は、失敗ということについて、このようなことを挙げています。

インターナショナルチームでまず気づいたのが、同僚や上司が、「Miserably Failed(惨めに失敗した)」という言葉を頻繁に使っていることだった。

非難めいた意味ではなく、むしろ失敗に気づいたとき「フィードバックをありがとう!」と大変感謝される、とのこと。

アーキテクチャやツールが数種類あってどれにするか決めあぐねる。こんな場合も、まずは試して、失敗したら次にさっさと乗り換える。こんな割り切りも重要です。

チャレンジしないほうが、リスクを高める。だから、成功しようがしまいが、まずはやってみて、早くフィードバックを得て、早く間違いを修正していくFail Fastの精神だ。

「専門性」を追求する姿勢を持つ

2023年の春、世界に衝撃を与えた、ChatGPT-4のリリース

その立役者となるのは、OpenAI社であり、ひいてはOpenAIに巨額出資しているマイクロソフト社です。

発信源のアメリカマイクロソフトでは、ChatGPTをどう捉えているのでしょう

このとき、世間に目を向けてみると、「ChatGPTスゲー!」という好意的な反応と、情報流出リスクがあるし人間の仕事の多くを奪いかねないので禁止すべきみたいな論調と、真っ二つに分かれていたように思う。

(中略)

マイクロソフトの社員は、秘匿性の高くないユースケースに絞っているし、センシティブな情報を扱うときはクローズドな社内専用のものを使っている。そうやって要所を押さえたうえで、みんなAIテクノロジーをゴリゴリ使ってラクしているし、それを自分の開発するサービスに統合して生かそうとエンジョイしている

そして著者もChatGPTを使っているうち、気づいたそうです。自分がやっている、クラウドのプラットフォームの中身というのは、ほぼ世間にコードが落ちていない。なので自分が書いているコードはAIには絶対に生成できない。つまり、

誰もやったことのないものに取り組んでいる専門家は、AIがとって代わることは原理的にあり得ない。

将来的に、AIが高度なソフトウェアをつくり出せるようになったとしても、

  • 用途や目的に応じた学習のためのAIモデルは人が作る必要があるし
  • モデルを使って、求めるサービスにインテグレーション(統合)する仕事も不可欠

これらをソフトウェアエンジニアが担わなければ、実際に使えるサービスは、生まれないのです。

いくらAIが席巻しようが、今後もソフトウェアエンジニアは少なくともインテグレーションの主役であり続けるだろう。AIの世界からイノベーティブなものをつくりたかったら、そこにはソフトウェアエンジニアの専門性が絶対に必要なのだ。

まとめ

理解にしっかり時間をかける。早く失敗して学ぶ。専門性を身に着ける。

そうすればエンジニアは、

「AIに取って代わられる存在」

ではなく、

「AIを使って得をする」「AIを使って新しい何かを生み出す」

そんな存在になれるでしょう。

時間をかけ、失敗を重ねて身に着けた、あなたが持つ本質的な知識

それが、まだAIが学習できていない、あなただけの専門性になります。

『世界一流エンジニアの思考法』に学び、自分の専門性に磨きをかけましょう。

¥1,700 (2023/11/11 07:14時点 | Amazon調べ)
\楽天ポイント4倍セール!/
楽天市場
\ポイント5%還元!/
Yahooショッピング
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次