初めまして、23新卒の井川です。
プログラミング初学者ながらエンジニア部門に配属され、7月から約2ヶ月間プログラミング研修に同期9人で取り組んできました。
最初は、分からないことしかなく、これからたくさんのものをインプットしていかなくてはならないと思って不安でいっぱいでした。しかし、2ヶ月の研修を終えた今、これからまとめる4箇条を実践したことで、当初思っていた以上に成長できたと感じています。
今回、こうしてテックブログへの投稿機会をいただいたので、その実践した4箇条をお伝えして、プログラミング初学者でも研修を楽しみ大きな学びを得るための一助になればと考えています。
結論
早速結論です。
初学者がプログラミング研修を受ける時に実践すべきことは以下の4箇条です。
- 最初は全体像が見えないものだからこそ無心で取り組むこと
- 目的を常にぶらさないこと
- 発信や質問の量と質にこだわること
- 不安を取り除くために振り返りを行うこと
では、具体的にどんなシーンでどのように実践すれば良いのかそれぞれまとめていきます。
1. 最初は全体像が見えないものだからこそ無心で取り組むこと
早速プログラミング研修を受け始めた際、今学んでいる事がどのように役立つのか分からなくて不安になると思います。実際、私も今やってることがどう繋がるのか分からずモチベーションが低下した時期がありました。
そんな時、「最初は全体像が見えないものだからこそ無心で取り組むこと」という言葉を思い出してほしいです。
研修を終えた今思うのは、全体像を理解するためにも知識が必要だという事です。だからこそ、まずは何も考えず目の前のことに注力してみてください。
それを続けていくと、今学んでいることがどこで活きるかわかってきて、少しずつ面白くなってきます。私もRubyを学ぶならJavascriptはいらないと思っていましたが、画面を遷移せずに様々な表示をする場合に必要になることが分かってきて、学んだ価値を感じるようになりました。
2. 目的を常にぶらさないこと
講義を受けていると、無心で取り組んでいてもわからない事が増えすぎてモチベーションが低下する事があると思います。また、開発演習の際に自分のやりたいことを優先してしまう事があると思います。
そんな時、「目的を常にぶらさないこと」という言葉を思い出してほしいです。
講義では、どこまで理解すれば及第点なのか講師の方に直接聞いてみてください。それにより、その日のゴールが明確になります。開発演習では、開発ではペルソナ(=開発したプロダクトを一番届けたいユーザー像)を周囲に話してイメージしてもらえるレベルまで具体化してみてください。その上で、何を優先してやるか決めるときに、必ず「それは自分ではなくペルソナにとって必要か? 使いやすいか?」と自問自答してみてください。
開発演習中、先輩から、「プロダクトは誰かの困り事を解決するためにあるよ」という言葉をいただいていました。作ったプロダクトを使ってもらえた方が嬉しいですし、次もまた頑張って作ろうというモチベーションにもなると思います。
3. 発信や質問の量と質にこだわること
講義中、理解できていないけど先に進んでしまうことは往々にしてあると思います。また、開発演習の際に頑張って作ったものが周囲の想定と違い、手戻りしてしまう事があると思います。
そんな時、「発信や質問の量と質にこだわること」という言葉を思い出してほしいです。
講義では、始まる前に1日何個質問するという目標を決めてみてください。とはいえ、講義を止めて質問をするのって怖いですよね。そんな時は、疑問をメモに残して休憩のタイミングで聞いてみてください。わかる事が増えていくと、少しずつ楽しくなってくると思います。
開発演習では、量と質でそれぞれ2つずつ実践してみてほしい事があります。
<量>
- 開発の方向性は、複数の候補を出したタイミングで相談する。
- 立ち止まったら、5分で相談する。
<質>
- 欲しい答えをイメージして相談する。
- 質問か相談かを最初に伝える。
これを実践することで、手戻りなく高い効率で開発を進める事ができます。
4. 不安を取り除くために振り返りを行うこと
研修中、チームで開発演習を行うことがあると思います。そこで私が痛感したのは、チーム開発は個人開発より処理すべき情報が多く、さらに他の人と一緒に開発するので分からない事が増えて不安になるという事です。個人開発の後にチーム開発をする場合、みなさん感じるところだと思います。
そんな時、「不安を取り除くために振り返りを行うこと」という言葉を思い出してほしいです。
不安な状態の時、よくやってしまうのがとにかくがむしゃらに開発を進める事です。私も何かに追われるように焦って開発を進めていましたが、それではチームに疲労感が溜まっていき、効率が落ちてしまっていました。そのため、あえてチームで振り返りをする時間をとり、「コミュニケーション」「進め方」についてお互いに思うところを話し合ってみてください。私たちのチームは「進め方」についてのみ振り返りをしましたが、それだけでも効率がかなり上がりました。「コミュニケーション」についても振り返り、心理的安全性の高い状態を作る事ができれば、活発な議論によりさらに効率が上がると感じています。
私たちの場合は、「もっと前のめりに開発に取り組めるようにどう役割分担をしたらいいか?」という問いを立てて振り返りをしました。そして、自分の頭で考えながらやりたいという要望の元、タスク単位で任せるのではなく領域を丸ごと任せる分担に変えました。結果、楽しそうに開発する姿を見る事ができ、より早い開発ができるようになりました。
「コミュニケーション」の振り返りの際に使える問いとしては以下の2点があると思うので、よければ活用ください。
- 直して欲しいコミュニケーションの取り方はある?
- 自分はどんなコミュニケーションをとってもらえると嬉しい?
まとめと研修の感想
この2ヶ月同期9人で助け合い、競い合う研修でとても楽しいものでした。それだけでなく、先輩方からは精神面、思考面で非常にたくさんのご支援をいただきました。
私がこの研修を乗り切る事ができたのは、周囲の人の存在が何より大きいと考えています。これからプログラミング研修を受ける初学者の皆様には、4箇条を実践しながら、研修を楽しみつつ多くの学びを得る方法を見つけ、広げていっていただけると幸いです。
私個人としても、皆様と共に成長してこれから同じエンジニアとして頑張っていけたら嬉しいです。