学び続けよう! それはあなたの価値となる。
■問いかけ
「あなたはどうやって技術を学ぼうとしていますか?」
どうすれば技術を身につけることができるのでしょうか?どれだけ学べば技術が身につき、仕事ができるようになるのでしょうか?
■今回の本
いつもありがとうございます。たのっちです。4月も3週目となりました。新入社員の方はこの時期研修を受けているところでしょうか。
4月の頭、毎年そうなのかもしれないですが「この本を読め!」というブログが出てきていました。
そのブログを読んで、「この本イイ!読んでもらいたい!身につければ相当の力がつく! ……でも、それまで自分でプロダクトを作ったりしていなかったような人には、このレベルは高いよな」と思いました。
私がIT業界に入った頃のレベルで、それらの本を読んでも理解できないと思ったからです。では、どうすればこの業界に入ってから技術を学び始めたエンジニアが力をつけることができるのか。
今回は慶応義塾大学准教授 井庭崇先生の「ラーニング・パターン」を通して、どうやって技術を学べばよいか・私はどうやって学んできたかを紹介していきたいと思います。
■「まねぶ」ことから始めよう。
「まなぶ」(学ぶ)という言葉は、「まねる」(真似る)と同じ語源であり、「まねぶ」とも言われていたという。そのことからもわかるように、自分が真似したいと思う人のやり方を「まねぶ」ことから始めるのは、学びの基本である。その人のやり方にまずはつかることから始めよう。もし、手本となる人が近くにいるのであれば、教わり上手になることで、さらに多くのことを学ぶことができる。しかし、いつまでも真似ていては、自分のオリジナリティを発揮することはできない。最終的には、自分で考えることで、そこから卒業することになるのである。
プログラム言語でもインフラでも、まずはやり方を学ぶ必要があります。それは職場の先輩や本から学べるでしょう。とはいえ、話を聞くだけ・読むだけでは分かった気になるだけです。写経する。プロダクトを作る。仕事で使ってみる。そのなかでやり方は身についてくるでしょう。
本は読んだ量だけ知識がつきます。そこからアウトプットを出した量だけ知恵になります。やればやるほど力はついていきます。
■広がりと掘り下げの「T字」
「T字」のような広がりと掘り下げの実現には、量は質を生むということが深く関係している。「広がり」のためには、いろいろな分野・テーマのことを把握する必要があり、「掘り下げ」のためには、徹底した知識・スキルの習得と実践が必要となる。また、鳥の目と虫の目をもち、全体と部分の視点を行ったり来たりすることが重要となる。
.NETを学びました。それなりに書けるようになりました。ではそれで大丈夫かというと、そうは行きません。DBの知識・UIの知識・設計の知識・業務の知識、他にもいろいろな分野の知識が必要になってきます。
それらの知識も入門レベルの学びだけでは、入門レベルの力しかつきません。よりレベルの高い本・詳細に踏み込んだ本を読むことが必要です。
そうやって学んでいくうちに、スキルの質が変わってきます。また、特定のフェイズでのみ考えるところから、いろんなフェイズでの視点・それらをまたいだ視点で考えることができるようになります。
■小さく生んで大きく育てる
誰でも、最初から突き抜けることはできない。どんなに大きな成果でも、最初は小さな成果から始まっており、小さく生んで大きく育てることに成功したのだということに気づくことが大切である。小さく生んで大きく育てるということは、一見するとプロトタイピングやアウトプットから始まる学びに似ているが、それらと違うのは、ここで生み出したアウトプットは、たとえ小さくとも、単なる「試作品」ではなく、1つの成果だということである。この成果を積み重ねていくことで、セルフプロデュースの材料とすることができるだろう。
技術書を読むところでも、プロダクトを作るところでも、最初から高い目標を掲げてやることはできないでしょう。「この本を読め!」エントリの本を読んで理解するには、相応の力が必要だと考えています。
技術を学ぶ場合は入門レベルから積み上げる。プロダクトを作る場合でも、最低限の価値を提供できるところから始めたほうがいいと思っています。
IT業界のトップランナーである多くの先輩も、それぞれはじめの一歩がありました。そこから長い時間をかけて技術を磨き、多くの人とふれあい知識を共有して、成果を積み重ねています。いま、世の中で多くの人が使っているサービスも同じです。ローンチから今日まで、長い時間をかけて多くの人のフィードバックを受けながら成長しています。
勉強会に出てトップランナーの話を聞く。その姿に憧れ「いつかああいう風になりたい」と願う。それならば、いま自分が学びたいことを学び、その気づきや成果を発信し積み重ねていくことが必要だと思います。
■私の学び
私の場合、少し時期が遅れてこの業界に入りました。最初に入った会社は出向メインの会社でした。そこで先輩社員からプログラムの書き方・DBの扱い方を学んでいましたが、その先輩社員が私の入社1ヶ月後に辞めてしまいました。
また、入社した時期がリーマンショックの直前だったこともあり、すぐに案件がなくなるという自体になりました。そこで自社サービスを立ち上げるという話になったため、自社にこもって黙々とサービスを作る日々が続きました。
その状況のなか、とにかく技術書を読みました。読んで得た知識をサービス作りに使っていました。その会社に在籍していた2年間で読んだ技術書は40冊。その大半の本は「まねぶ」ことをしていました。そのおかげか、いまではプログラマとしてはそれなりの技術を身につけることができたと思っています。
とはいえ、まだ道なかば。突き抜けるにはまだまだこれからだと思っています。
■学ぶことを止めるな!
1つのプログラム言語を学んで書けるようになるだけでも、相応の時間はかかります。ましてや、幅広い分野の知識をつけアウトプットも出すとなると、さらに時間はかかります。勉強会で講演を聞いて、講演者と自分のレベルの違いに愕然とすることもあるでしょう。それでも学び続けていくなかで、その時の講演者のレベルに近づいていくことができるでしょう。
ときには会社や上司に失望することもあるかもしれません。それでも学ぶことを止めないでもらいたいのです。
IT業界の仕事は学んだ分だけ価値を提供できるものです。私がお世話になっているエンジニアの方が、昨年のITコミュニティ夏祭りにてこのようなことをおっしゃっていました。
勉強会に限らず、今のIT業界とエンジニアたちに取り巻く環境ってやったことに対する加点が評価得られる。
失敗したことに対する減点ではなく、プラス評価。
なんかやったらいいんですよ。
失敗しても失敗したら教訓が得られるだけ。
私たちと一緒にやろうよ。
[ITコミュニティ夏祭り2011に同僚と計8人で参加してきた]
何かをモノにするには1000時間かかると言われます。簡単にはできませんが、取組めば必ずできます。この春IT業界に入ってきた皆さんにはまず1年、仕事も学びも本気で取り組んでほしいなと思っています。そのなかで見えてくるものがあります。
その1年が終わったあとも、継続的に学び続けてください。この素晴らしい世界のことが、少しずつ分かってくるでしょう。学ぶなかで得た気づき・経験を発信しましょう。あなたの経験は、誰かにとって役立つものです。その人の喜びはいつかあなたに戻ってきます。
そして、それらに情熱をもって取り組んでいってください。そうすればきっと、あなたの憧れのエンジニアのようになれる。僕はそう信じています。