小学生向けキャリア教育資料の学生向け再構成版

今年の2月に息子の小学校でキャリア教育の一環として講義をしてきました。本記事はこれを中高生以降で社会に出ていない人向けに再構成したものです。対象読者は学校での勉強が将来の自分のキャリアにどうつながるのか気になっている人です。

speakerdeck.com

はじめに

わたしはソフトウェアを使ったサービスを提供している会社で働いています。提供しているサービスを直接作っているわけではなく、そのようなサービスを動かすためのインフラ基盤と呼ばれるものを作ったりしています。他にも本()や記事を書いたり、英語の書籍を日本語に訳したり()しています。専門分野についての知見を共有するYouTubeもやったりしています。

この記事は、わたしのこれまでの経験を通して、みなさんが将来歩んでいく自分自身の道を見つける手がかりの一つになってもらうことをねらっています。話の構成は次のようになっています。

  1. どんな仕事をしているのか
  2. わたしが歩いてきた道
  3. 学校で学んだこととの関係
  4. アドバイス
  5. まとめ

わたしは上述した通りIT技術者ですが、細かい技術の話はしないので、私の専門分野であるITに明るくない人も読めるようにつとめて書きました。

どんな仕事をしているのか

わたしはソフトウェアを作るプログラマーです。他にも色々なことをしているんですが、本記事の主題からは外れるので省略します。コンピュータに関する仕事というおかげもあって、会社に出勤することはほとんどなく、自分の家で働いています。といっても一人で仕事をしているわけではなく、日本中の色々なところにいる同僚たちとインターネットでコミュニケーションをしながら物を作ったり、作ったものを動かしたりしています。

会社の仕事では自分の会社の人とだけ話しているわけではありません。といっても、会社のサービスを使われているお客様と話すわけでもありません。GitHubというインターネット上のサービスを使って世界中のソフトウェア開発者と共同でものを作ったりしています。以下は開発のやりとりの例です。

github.com

社内の人とコミュニケーションをとるときはほとんど日本語を使いますが、社外の人とコミュニケーションをとる場合は英語を使います。

本や記事を書く仕事も、ほとんどはインターネットを介して関係者とコミュニケーションをとります。関係者は出版社や、そこに所属している編集者などです。洋書を和訳する仕事も、同じく出版社や編集者とやりとりすることになります。

ここで強調したいのは、これまで述べたすべての仕事においてチームワークがとても大事なことです。なぜなら、多くの場合、わたし1人では仕事が完結しないからです。「仕事が完結」という言葉の意味は、ここでは私が仕事の対価としてお金をもらえることだとしましょう。会社の仕事の場合は次のようになります。

  1. 私が同僚と一緒にソフトウェアを作る
  2. 会社の他の人がソフトウェアを使ったサービスを売ってくれる
  3. サービスを使ったお客様が会社にお金を支払ってくれる
  4. 会社がお金の一部を私に給料として支払う

本当はもっともっと複雑ですが、簡略化するとこんなものです。わたしは1人だけでソフトウェアを作れませんし、作っただけでは誰にも使ってもらえなくて、そこで終わりです。

本や記事を書く場合も、わたしが作文しただけでは何も生まれません。わたしが書いた文書を読みやすい文書として編集者が磨き上げ、印刷し、書店に配本し、誰かが買ってくれて初めてお金に変換されます。それが出版社に戻ってきて、はじめて私にお金が入ってきます。

稀にほとんど自分だけでなんでもやってしまう人がいるのは否定しませんが、ほとんどの人はこのように自分以外の多くの人と協力しながら仕事をし、対価を得ています。

私が歩いてきた道

前節では、わたしが今どんなことをしているかについて紹介しました。ここからは、子供のころから何を考えてどういうことをして今に至ったのかを紹介します。ときどき、「ここでこういうことをしたから次につながった」というような事も書いています。

小中学生の頃はゲームが大好きで、そればっかりやっていました。あるときから自分でも作ってみたいと考えるようになりましたが、思ってるだけで、どうすればそんなことができるかはわかっていませんでした。親はさぞかし心配していたことでしょう。

高校生のころ、家でパソコンを買ったことが転機となりました。しばらくはパソコンでゲームをするのに勤しんでいたのですが、あるときからゲームを作るようになりました。たくさん勉強して、だんだんうまくできるようになってきたのに気を良くして、このままゲームプログラマーになろうと固く決意しました。

ゲームプログラマーになるために大学の情報工学科に行けばいいんだろうと固く信じて*1受験したものの、残念ながら受験は失敗しました。バイオハザードゼルダの伝説 時のオカリナで遊ぶだけで手いっぱいで受験勉強をしている暇がなかったのが敗因でした。

ここで奇跡が起きて同じ大学の材料工学科という学科に受かり、そのまま大学院まで材料工学を学んでいました。学部生のころはゲームを作っていたのですが、大学院のときに転機が訪れました。ゲームよりも、ゲームを、そしてコンピュータそのものを動かすためのオペレーティングシステム(OS)というソフトウェアに興味が移ったのです。このころは大学院の勉強をするかたわら、ひたすらOSの勉強をし続けていました。あまりにも面白かったので、あるとき「OS開発者として食っていく」と決意しました。良く決意する人ですね。単純なんです。

大学院1年になり、そろそろ就職について考えなくてはならなくなりました。わたしは向こう見ずな性格ですが、材料工学を学んでいる人がいきなり「OS作りたいです」と言っても多分相手してもらえないだろうなとは思っていたので、OSの開発をしていた会社のインターンに参加して、そのままその会社に入りました。これは大学で希望している学科に落ちてもプログラミングを続けて、大学で真面目にOSの勉強をしていたからこそ実現できたと思っています。

その後10年くらいは世界一のOSのプログラマになろうと日々勤しんでいました。OSについての本を書いてみたいなと思うようになったのもこのころです。この後に人生を大きく変える3つの出来事がありました。

  • 世界一のOSプログラマになるのはさっさとあきらめました。自分が足元にも及ばないような凄い人たちが世界にはゴロゴロいるのを見て、とても敵わないと判断したためです。
  • 結婚して子供が生まれて、一番大切なものがIT技術から妻や子供に変わりました。自分以外のことが最優先になるのは人生初の出来事でした。
  • 世界一のOSプログラマになるのをあきらめたこととも関係しているのですが、会社を辞めました。

会社を辞めた後は、前々から持っていた「本を書きたい」という思いを実現すべく、知り合いの編集者を介して出版社にお願いして、本を書いてもよいということになりました。無職だと書ける時間が多いので、幸いにも数か月で書けました。自分の成果物が書店に並んでいるのを見た時は強い達成感がありました。ここで重要なのは、自分でお願いするというアクションを起こしたことです。思いがあるだけでは実現はしないし、実績も知名度も無いわたしに先方から声がかかるなんてことはありません。

その後なんやかんやあって今の会社に入社しました。過去にわたしがやっていたことがたまたま今の会社の人の目に留まっていたこと、そして何より無職でフラフラしていたことがきっかけです。人生何があるかわかりませんね。

学校で学んだこととの関係

ここからは小学校から大学院まで、学校で学んだことが今の仕事にどのように関係しているかについて書きます。

プログラミングの仕事については、作りたいものを考えて、動くしくみを考えて、それを実現するコードを書いていくという過程で数学の考え方が役立っていると思います。これらについて勉強するときには国語能力が必要です。また、プログラミングについては英語の情報が多いので、英語能力も必要です。

本を書く仕事でいうと、作文するときにはIT技術に関する知識だけではなく、国語能力が必要です。頭の中では完璧にわかっていたとしても、それを人に分かる形で文書として出力できなければ書籍にはなりません。また、洋書を和訳するときは国語力、英語力、両方が必要です。

既に述べたように、プログラミングをしようと本を書く仕事をしようとチームプレーが大事です。このような時には自分の思いを相手に伝えたり、相手の思いを理解したりするために国語能力が必要です。相手が日本語話者でなければ多くの場合英語能力があるとよい*2。勉強だけではなく、授業の時間以外にクラスのみんなやバイト先の人々と過ごして、好きな人とも嫌いな人とも一緒になって何かする経験というのも将来のチームプレイの予行演習になるでしょう。

今はやっていませんが、昔ゲームプログラミングをしていたときはキャラクターに自然な動きをさせるために物理の知識が役立ちました。また、3D描画エンジンを作っていたころは数学行列演算の知識が大きく役立ちました。

人生は仕事ばかりではありません。わたしは息抜きのために歴史の本を読むのが好きなのですが、そうなったきっかけの一つは社会の歴史の授業です。また、日本という国を動かす仕組み、自分がその仕組みの一部として参加できること、その参加方法の一つが選挙であることを社会の授業で学んだため、世の中をよくするために選挙に行くようになりました。有権者は1億人くらいいて、わたしの力はそのうちの1人分にしかすぎませんが、それでも意義があると考えています。

ではみなさんは、今後わたしのようにプログラマーや本を書く人になるために「国語」「英語」「数学」「物理」「社会」を学べばいいのでしょうか。それは違います。みなさんとわたしは、やりたいこともできることも、置かれた環境も全く違います。何をするかは、これからみなさんが自分で決めるのです。

アドバイス

みなさんには、とにかく色々なことをやってみて、まずは自分自身のことを知ってもらえればいいかと思います。以下に例をいくつか挙げましたが、他にもパターンはいくらでもあります。

気を付けてほしいことについても書いておきます。「自分」というのは時間が経つと、どんどん変わっていきます。「今」できないとわかってあきらめたことも、後でできるようになっているかもしれません。「今」楽しくないことがわかったことも、あとで楽しくなるかもしれません。逆もまた然りです。また、やりたいこと、できることが今は無くても全く構いません。ほしくなったらすぐできるようなことは稀なので、焦る必要はありません。できることは最終的に何かしら一つはあるといいですが、やりたいことについては何もないまま不便なく暮らしている人なんていくらでもいます。

ここからは「学校の勉強は将来の役に立つのか」という話をします。これは一概には言えないんですが、わたしは「やりたいことをするために学力が必要になることがあるならやっておくとよい」「他にやりたいことがないならやっておくとよい」という考えを持っています。まず、学力があれば色々なチャンスを掴みやすくなります。受験や就職といった人生の様々な場面で学力を基準とした審査があります。良かれ悪しかれ世の中の多くの場面では学力があれば道が拓けやすいようになっています。また、とりあえずやっておくと、興味のあることが見つかるかもしれません。何もしていなければ見つけようがありません。

まとめ

本記事ではわたしの小学生のころから社会人になって今に至るまでの道のりについて話しました。皆さんはこれからわたしとは違う道を歩んでいきます。みなさんのクラスメイトとも違う道を歩んでいきます。色々な経験をして、どのような人生にするかを自分で決めてください。よくわからなければ、とりあえず「良く学び、よく遊ぶ(経験する)」で良いと思います。

以上。

*1:のちに、大学の情報工学科は別にゲームプログラミングを学ぶ場所ではなく、もっというとプログラミングを学ぶことが主目的でも無いことを知りました

*2:場面によっては中国語などの別の言語が必要になるかもしれません