『週刊』エンジニア奮闘記②「研修第2週の学び4選」【第22号】
こんにちは!
テクノシップブログです!!
いよいよ梅雨の時期に入り、通勤に傘が欠かせない毎日に突入しましたね🌂
ジメジメしていて気持ち悪い毎日ですが、頑張っていきましょう🔥
さて、私は6/1よりエンジニアとしてのキャリアがスタートした訳ですが、
最初の1ヶ月は「研修期間」ということで、一つの言語を使った研修課題に取り
組んでいます。
まだ開始して2週間しか経っていませんが、学ぶべきことが沢山あったので、
これからエンジニアを目指す方やエンジニアとして働いている方の一つの参考に
なればと思い、私の学びをアウトプットさせていただきます!!
1. 研修(第2週)の学び4選
①検索力が重要であるということ
研修課題として言い渡されたのは、
Flutterというフレームワークを用いた
アプリケーションの作成
でした。
これを言い渡された私は、「Flutterってなんぞ?」となりました💦💦💦
様々な言語についてアンテナを張ってきたつもりですが、これに関しては
初耳でした。
FlutterはGoogle社が提供するモバイルアプリケーション開発用のフレーム
ワークとなっており、今イケイケのフレームワークと言われています。Flutterに
ついての概要は以下の記事が参考になりますので、チェックしてみてください!
詳しく特徴や、メリット、デメリットなどがまとまっています。
「初めてのものだからできない、、、」 などという言い訳は通用しません。
だからこそ、自分で調べていく力が問われていきます。
例えば、Google検索一つを取ってみても、「どのようなワードで検索するか」
によって、たどり着くことのできる答えは大いに変わっていきます。
自分が知りたいことに関して、そう簡単にはたどり着くことはできませんが、
日々検索の仕方も学びながら初めての相手に対して奮闘を試みています!!
ちなみにGoogle検索の使いこなし方について参考になる記事があったので、
リンクを張っておきます!
②質問力も大事であるということ
①で「検索力」が大事であると言いましたが、一人で解決しようとしても
どうしても解決しきれない場面が出てきますね。
そのような時に問われる力が、「質問力」です。
職場には、その言語やフレームワークを扱ったことがある人、その言語や
フレームワーク自体は扱ったことがないけれど、ロジックの組み方について参考に
なる人など、数多くの頼れる先輩社員がいるはずです。
その人たちに「頼る」ということが必要になってきます。
しかし、頼ると言っても、「分かりません、どうすればいいですか?」という
質問は絶対にNGです。この質問だと相手が解決策を提示するまでの工程がかなり
多くなってしまうのが分かりますね?
一方、「〇〇がやりたいのですが、詰まっています。①と②の対処法を取って
みたのですが解決しません。他に試すべきことはありますか?」であったり、
「〇〇と△△であれば、〇〇の方を試すべきでしょうか?」のように、相手が
回答をすぐに出せるような質問を投げかけなければなりません。
私もまだまだですが、質の高い質問ができるように日々研鑽を積んでいきます!
③可読性の高いコードを意識すること
次は実際のコーディングに関することですが、「可読性」への意識が本当に大事
だということを学んでいます!
プログラミングにおいて、「ユーザーにとってより良いサービス」を作るため
にコーディングすることは勿論大切なことです。
しかし、個人開発でない限り、その開発作業は必ずチームで行うはずです。
そうした場合、どれだけ優れた機能を実装したコードであったとしても、
読みにくいコードであったらどうでしょう。コードをレビューするメンバーが、
「読みにくいコードを解読する」という無駄な工程を踏まなければならなくなって
しまいます。
これにより、チーム内でのコミュニケーションが上手くいかず、効率的な開発も
できなくなってしまうのです。
だからこそ、「可読性の高いコード」というのは、とても大切な要素となります。
数多くの先輩社員に聞いたところ、「新入社員が最も気を配るべきなのは、
可読性の高いコードを作ることだ」とおっしゃる方が非常に多いです。
可読性の高いコードを書くためのコツなどは様々な手段で学ぶことができます。
先輩社員などに聞くのも有効な手段ですが、良書も数多くあります。
以下に2冊ほど紹介しておくので、参考にしてみてください。
【プリンシプルオブプログラミング】
「より良いコード」を書くための理論が数多く分かりやすく載っています。
具体的なコード例が無いのが少々残念ですが、とても参考になる一冊です!!!
【リーダブルコード】
海外のエンジニアによって書かれた、長年愛されている良書です。
具体的なコード例も掲載されているのが有難いところです!!!
④互いに教え合うことが最も学習効果を高める
これに関しては、「成果の出る勉強法」として今や当たり前のようになっている
概念ですが、本当に効果的です。
上のラーニングピラミッドを見れば分かるように、「人に教える」という行為
が最も高い成果を上げることが分かっています。
これはもう実践するしかないと思い、私は研修中、一緒に行っている同期と
頻繁に時間を取って教え合うという作業をしています。
一番良いのは、「自分が分かっていない部分が明確になること」です。
分かっていない部分が明確になれば、次のアクションプランも立てやすいですし、
一つ一つクリアしていけば着実に力もつくはずです。
引き続き、継続していきたいと思います!!
2. 研修内容について
前回も紹介しましたが、改めて紹介しておきます!
入社日から早速研修をしているわけですが、課題は、
Flutterを用いた、電卓アプリの作成
です。
そもそも、Flutterとは、Google社が提供する、クロスプラットフォーム技術を
モバイルアプリ用フレームワークと言ってはいますが、AndroidやiOSはもちろん
のこと、WebやWindows OS、Mac OSにも対応している優れものです。
以下のサイトに詳しく特徴や、メリット、デメリットなどがまとまっています。
もし、学習してみたいという方がいれば、以下のサイトや動画が参考になり
ますよ!!良かったらチェックしてみてくださいね!!
【Flutter公式】
【YouTube --Flutter大学】
【Udemy】
いきなり新しい言語での取り組みとなりますが、何とかこの課題を乗り越えて
早くプロジェクトに配属されるように頑張ります!!
3. テクノシップ第22号プチ編集後記
〜新居のゴミ捨て場がやっと分かりました!!ゴミ捨て場探しで丸々1週間
悩み続けるなんて想定もしていなかったので、結構疲れました💦💦これからも
イレギュラーなことが沢山あると思いますが、乗り越えていきたいですね。〜