鈴木 一生:大手企業でジュニアなポジションで働くのであれば、「何を、いつ、どの程度」学ぶかについて、とりあえず会社に丸投げするという選択肢があります。 会社では、従業員が 1. 短期的には、割り当てたプロジェクトで戦力となること。 2. 長期的には、会社をリードする人材として成長すること。 の2つを期待し、プロジェクトのリードやマネージャーが、そのために必要な教育や研修プランを組みます。最初の数年は敷かれたレールの上を走るだけで順調に伸びていきますが、うまくいけば、その間に自分でバランスをとれるようになります。 ある程度の経験を積んでからは、適切なインプットの内容・分量は自身のキャリアプランや仕事内容によるので、一概には何とも言えません。たとえば新しいプログラミング言語が出てきたときに、 1. ざっと概要を調べて終わりにする。 2. 簡単なプログラムを書いてみる。 3. そのプログラミング言語を使っているプロジェクトや、広く使われているライブラリの現状についても調査する。 どこまでやるかですが、「新しいプログラミング言語に詳しいソフトウェアエンジニア」という立ち位置を目指すなら 3 です。 しかし「次のプロジェクトで使用するプログラミング言語を決めるリード」という立場なら、使える時間も限られるため、むしろ身近に信頼できる「新しいプログラミング言語に詳しいソフトウェアエンジニア」を確保して、いつでも話を聞けるようにしておく方が重要です。(Read more)
yosuke_furukawa:インプットとアウトプットのバランスってことですね。 もう永遠のテーマです。どのように取るかという画一的な方法はありません。良いインプットなくして良いアウトプットはありませんし、アウトプットをしないインプットもあまり良い刺激にならないと思います。 ただ僕のやり方で言うと、アウトプットを目標にしていないと漫然とインプットをダラダラしてしまうので、目標を決めてます。実際に開発するものを一個作ろうと決めて、年内だったり半年以内とかにやろうと決めてます。そうしないとインプットのが簡単なので、ずっとやった気になっちゃうんですよね。 本を読んだり、技術情報を仕入れるのはもちろんですが、それを実践で活かせないと無意味なんで、何かしら作るという目標を掲げて実践しようとしています。昨年でいうと、一個アプリケーションを作ってそれを元に教育研修につなげたりしていましたね。 あとは ChatGPTとかそういう新しいおもちゃが出るたびにこれで何ができるかなーとか妄想して実践に移すといいんじゃないでしょうか。(Read more)