数学ができるとエンジニアとして活躍できるのか、むしろ数学ができないとエンジニア失格なのか?――「エンジニアに数学の知識は必要か?」を、数学オタクが論理的に解説します。
こんにちは! Wantedlyでソフトウェアエンジニアをしている久保長です。
転職に使える会社訪問求人アプリ「Wantedly Visit」の開発チームリーダーと、エンジニアの技術面談や新卒研修などの面接や育成も担当しています。自社ブログで「技術面接を受ける前に確認しておくといいこと」などの執筆もしています。
今回の命題は「エンジニアに数学は必用か?」です。私は数学専攻で、子どもの名前に「率」と付けるほどの数学オタクなのですが、全てのエンジニア、例えば文系エンジニアにも数学の知識は必用なのでしょうか?
現代は、インターネットを通じて利用するサービスが増えています。
プライベートでは、視聴デバイスがテレビからスマホに替わり、アプリの利用時間が増えています。仕事では、企業向けのソフトウェアでASP/SaaSの導入が進み、データ量も増えています。
このような環境では、「たくさんのアクセスをさばき」「たくさんのユーザーに使ってもらえるように改善を繰り返し」「たくさんのデータからサービスを賢くする」ことができるエンジニアが、力を発揮できるのではないでしょうか?
インターネットのサービスは、使われれば使われるほど、秒間のリクエスト数が増え、データを表示するためのアルゴリズムの実行時間が遅くなります。1日に訪れるユーザーが1000人のときは気にならなかったことが、ユーザー100万人になると問題になります。
そこで力を発揮するのが、数学の知識です。
計算量を計算すると、自分が書いているコードの実行時間が、ユーザー数の増加に伴いどのぐらい遅くなるのか分かります。例えば、ユーザーが2倍になったときに、2倍遅くなるのか4倍遅くなるのかが分かるようになります。
ユーザーが増えたときに2乗、3乗と遅くなるコードがあると、「まずいな」と思う感覚も持てるようになります。
Copyright © ITmedia, Inc. All Rights Reserved.