こんにちは! 22年度新卒で開発のベースチームに所属している船越です。
最近観た映画で一番おもしろかったのは「トップガン マーヴェリック」です。劇中のトムクルーズに憧れ、映画を観た帰りにイカついサングラスを探しましたが、試着してみるとトムクルーズとはかけ離れた顔をしていたことを思い出し、泣く泣く諦めました。
それはさておき、この記事では新卒としてコドモンに入社し約2か月間の開発研修を終えて学んだ社会人スキルをまとめています。
「なんで開発研修なのに社会人スキル?」と思われるかもしれませんが、技術的に学習したことは同期が別の記事でまとめてくれているので、自分は別の視点から開発研修を捉えてみました!
開発研修ではもちろんプログラム技術について非常に重要なことを学習しましたが、それと同じくらい社会人として生きていく上で大切なことも学ぶことができました。
質問する人偉い・分からない人強いの精神
研修を通して学んだことの中でもっとも大事なのではないかなと思う心構えです。
自分は研修を受けるまで、人に質問することにかなり苦手意識を持っていました。質問をすると相手の時間を奪って申し訳ないし、何より知らない自分が恥ずかしいという気持ちを持っていたためです。
しかし、ある前半の研修で 「質問する人偉い・分からない人すごい」 という考え方を学び、自分の中で「質問する」ことへの考えが変わりました。
気軽に質問をすることは自分だけではなく、周りの役にも立ちます。この効果は大きく分けて二種類あり、研修の中でこの両方を強く感じました。
一つ目は、周囲の人が抱えている潜在的な疑問が解消されることです。尋ねるのも憚られるような初歩的な内容で質問することを躊躇していると、同じ疑問を持っているのは自分だけではないことが意外とありました。質問の内容が聞きづらいものであればあるほど、自分から質問したほうが自分自身のためにもなるし、周りの理解の手助けにもなるということですね。
二つ目は、質問すること自体のハードルが下がることです。自分が気軽に質問すれば、周りの人は「あ、こんなことでも聞いてよいのか」と思うことができます。こういった認識が広がると、結果的に周りの人々も気になっていることを自由に質問できる環境が生まれます。
私の場合だと、研修の中でフレームワークとライブラリの違いについてまったく理解できず、ずっと悶々としていました。 しかし、勇気を出して聞いてみると、講師の方は快く教えてくださいました。
さらに、実は同期も同じ箇所で疑問を持っていたことがわかり、無事みんなの疑問が解決し、その後の質問が活発になりました。
このように積極的に質問することは、自分の理解だけでなく周囲の人々の理解にもつながることを研修を通して学びました。また、この心構えは研修中だけでなく、今後業務を覚えていく中でも非常に重要だと思うので、いつでも心に留めておきたいです。
分からないことが分からないときの対処法
自分は研修の中でかなり頻繁にこの状態に陥りました。特に技術研修では、自分が触れたことのない分野だと、説明を聞いて理解しようとしてもどうしても分からないときが多々ありました。
そういったときのほとんどは「分からないことが分からない」状態で、そもそもこの状態を解消するために何を理解すればよいか分からず、手当たり次第に調べるか、分かるまで質問することでしか解決できませんでした。
しかし、何を理解しようとしているか分からない状態で質問や調べ物をしても、有効な回答を得られる可能性は低いです。
そこで、自分は研修途中から、自分が何を理解しようとしているのかを明確にするために、説明の中からまず知らない単語をなくすことを始めました。結果的にこの手法はかなり有効でした。
自分の場合「分からないことが分からない」状態に陥る原因のほとんどが、単語に対する誤解や理解不足だったのです。
プログラミング用語のほとんどは英語ですが、今までになんとなくで聞いたことのある単語も多いので雰囲気で意味を察することができてしまいます。特に研修中だと説明の流れに合わせて、単語に対する認識が曖昧なまま理解しようとしていました。
しかし、調べてみるとプログラミング言語特有の意味があったりして、それを踏まえると説明をすんなり理解できることが多くありました。
全体像を知る重要性の理解
これはすべての研修を終えて感じたことです。
今回の研修では、Webサービス全体の構造に網羅的に触れることができ、そこから全体像を知ることの重要性を学ぶことができました。
自分はコドモンへ入社するまでほとんど独学でプログラミングを学習してきたこともあり、局所的にしかWebに触れてきませんでした。
しかし、今回すべての研修を通してWebの仕組みを俯瞰で学ぶことができ、知識がより体系的になりました。例えば、今まで学習してきたPHPをアプリケーションのバックエンド言語として動かす際の、WebサーバーやDBサーバーの必要性を知ることができたことは、自分の中で非常に大きな体験でした。
知識が体系的になると、次に学ぶ関連事項の理解が容易になります。一度全体像を把握して大まかな概要を掴んでしまえば、新しい知識を学習する際に自分が今何について理解しようとしているかをより俯瞰して捉えることができます。その結果、学習の効率が上がったように感じました。
Webの仕組みを例に取ると、APサーバーにフォーカスを当てる前に、先にサーバー全体の構成として簡単にWebサーバーやDBサーバーの存在を知っていたほうが、なぜAPサーバーでプログラムを実行する必要があるかが理解しやすくなります。
このように、全体像の把握は今後様々なことを学習していく上で非常に重要なプロセスだと思うので、今回の研修の機会に気づくことができてよかったです。
最後に
いかがでしたでしょうか。今回は研修を通して学んだプログラミング技術以外のことをまとめてみました。ただ、正直に言うと、上記のスキルを学びはしましたが完璧に実践できているかは何とも言えません。それでも、意識をするだけで少しずつ行動は変わっていっている実感があるので、このまま続けていこうと思います。