こんにちは、エンジニアの落合です。
本記事は、ギークフィード Advent Calendar 2023 23日目の記事です。
目次
はじめに
今年度新卒入社いたしました、エンジニアの落合です。
私は入社する前はプログラミング経験がほとんどなく、IT系知識はITパスポートをちょこっと勉強し始めた程度でした。
新しい環境での業務では知識や技術の壁にぶつかることが多く、試練の連続の日々が続いています……。
本記事では、同じような未経験でエンジニアとして奮闘している方やこれからエンジニアデビューを迎える方に向けて、私が入社してからの8ヶ月で学んだことや失敗したことを戒めの意味も含めて備忘録的に綴っていこうと思います。
記事がお役に立てば嬉しいです。
参考
これまでの業務で主に携わってきた技術・作業(時系列順、重複期間があります)
・AWS Lambda(1ヶ月)
・開発(Python)(1ヶ月)
・画面設計(6ヶ月)
・開発(Laravel + TypeScript + React + Inertia)(1ヶ月)
・単体・結合テスト(1ヶ月)
基本編
むやみにPC本体の設定をいじらない
慣れている方には驚かれるかもしれませんが、私は環境構築で迷走して、何故かPCの環境変数を変更してしまいました。これのせいでDockerを入れて起動するだけのプロセスに約5時間程かけてしまいました……。
環境変数だけではなく、PC本体の設定は下手にいじると初心者には太刀打ちできません。PCの「設定」から何かいじる必要がある場合には必ず先輩に確認しましょう。
自分のやったことをメモしておく
特にエラーが発生した時に起こりがち(私調べ)なのが、ネットに載っている方法を試しすぎて、何をどうしたのか分からなくなってこんがらがってしまうことです。
エラーが起きた時点で先輩に確認できればいいのですが、忙しいのに毎度むやみに聞くのもなあ……という時も多々あります。
そういった時に自分で解決を試みる場合には、試したことと結果を都度メモしましょう。試したことが分からなければ参考にしたページでもいいと思います。
相談した時に相手にわかるようにすることを念頭に置きましょう。
わからなかったら聞く
これが解決への一番の近道です。
とにかくわからないことがあれば、わからないままにせず聞きましょう。
あまり質問しすぎるのも迷惑かな……と思う場合は、一定時間で区切るのも手です。私の場合は最長5時間程悩んでも答えがでなければ聞く、という自分ルールを作っています。
あとは、質問しやすい関係づくりも大事です。在宅でのお仕事が多い場合は特に日頃からコミュニケーションを欠かさないようにしましょう。
開発編
公式ドキュメントを読む癖をつける
公式ドキュメントって難しいですよね。ついついわかり易い言葉で書いてくれてるQiitaとかの記事を見がちですが、一番詳しく満遍なく情報が記載されている公式ドキュメントを読めるようになるのが技術習得への一番の近道です。私の大先輩から教わりました。
とはいえ、いきなり用語すら分からないのに公式ドキュメントを読めというのも酷だと思うので、まずは公式ドキュメントの目次をみてざっと概要を掴むところから始めるのもいいと思います。
それでも分からなければChatGPTに要約してもらうなり、解説記事を読むなどして基礎を固めていきましょう。
公式ドキュメントにたくさん触れることでいずれ慣れてきます。慣れは大事です。
一旦チュートリアルを通しでやってみる
文章で見ているだけだと分からない用語ばかりで疲れてしまう人もいるかと思います。そんなときはとにかく手を動かしてみましょう。
公式のチュートリアルをやることが一番ですが、有志で運営されているチュートリアルサイト等もあるので、活用してみましょう。
はじめは分からない単語ばかりで中々進まないかもしれませんが、チュートリアルに載っているコードを貼り付けて実行していくだけでも、なんとなく動いていくのが楽しくなってきます。
チュートリアルの通りに実行していくことで、アプリケーションを作成する成功体験が積めるので挫折しにくくなると思います。
以下は私が実際に利用したチュートリアルサイトです。(Laravelは公式ドキュメント内にあるものを利用しました。)
エラーメッセージを必要以上に恐れない
エラーが起きた時、多分初心者は(私含めて)対処法が分からないので軽いパニックに陥りがちです
ですが、原因や何が起きているかなどはエラーメッセージを読み解けばわかることが多いです。
英語が読めないなら、DeepLやGoogle翻訳等を利用して翻訳してネットで調べてみましょう。ただし、ChatGPTにかけるのはあまりおすすめはしません。私の浅い経験上、情報が少ない中で類似していそうな答えを出そうとするので(悪い意味で)適当な答えを出力してくることが多かったです。
ログを読む
エラーが出た場合にはログを読むようにしましょう。
エラーが出ていなくても、最初は都度ログに結果を出力するようにすると自分がやっていることを理解する手助けになります。
ちなみにLaravelの場合、以下のようにしてログへのメッセージ出力ができます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<?php namespace App¥Http¥Controllers; useIlluminate\Http\Request; use Illuminate\Support\Facades\Log; class OutputLogController extends Controller { public function outputLogFacade() { a = 1; b = 2; $addData = a + b; Log::info($addData); } } |
この例では、変数$a
に1、変数$b
に2が入り、addData変数で両者を足し合わせる処理をしています。
1 |
Log::info() |
で変数$addData
の中身をLaravel.logファイルに出力してくれます。
実際の出力は以下のようになっています。
1 |
[2023-12-20 09:10:29] local.INFO: 3 |
日付の後にlocal.INFO
として変数$addData
の中身が(Log::infoメソッドの引数)を出力してくれています。
Log::info()
のinfo
部分をalert
やerror
に変えると異なる種類のログが出力されるので、興味があれば調べてみてください。
おわりに
はじめはわからないことが多く挑戦が多いですが、その分新しいことを学び、成長する機会でもあります。
同じ問題に何度もぶつかることもありますが、学びに繋がり次第に自信となっていくはずです!
一緒に頑張りましょう!
- これからエンジニアとして頑張ろうとしている方へ - 2023-12-22