プログラミングやソフトウェア開発をしていると、やり方がすでに分かっているものよりも「よく分からないから調べながらやる」って作業のが多いです。
特に最初の頃はほとんど調べてやることになります。
その際に実装などに関する「やり方などの調べ方」に関するスキルが重要になります。
例)
「reactでタイマーを実装しようと思っています。参考コードを出してください。」
「reactとMUIでstepが変わった時にscrolltopをしたいです。コードを出してください。」
「これらのコードをカスタムフックで共通化しろと言われました。共通化してください。」
「lambdaに手動でデプロイしろと上司から言われました。どうやって手動でデプロイするか教えてください。」
「このSQLのサブクエリがよくわかりません。解説してください。」
実務入る前も入った後も、少しでも不明点や分からない部分がある際にはChatGPTにとりあえずつっこんで相談しましょう。
分かってる気がしていてもChatGPTに壁打ちすることで自分にはない視点に気付けたり勉強になったりすることが実際多いです。
イメージ的には「ChatGPTに1回聞く⇒よくわからない部分がまた出てくる⇒またそこをChatGPTに聞く⇒またよくわからない部分が出てくる⇒またChatGPTに聞く」
ってことをしながらデバッグしながら開発を繰り返していくのが最近の開発のやり方です。
(実装がよくわからない場合)
例)
「chart.js tooltip」
「chart.js tooltip how to show」
ChatGPTで解決に至らない場合にはGoogleで検索してやり方を調べます。
参考にするサイトは基本的にはこの2つになります。
「公式のドキュメント」「Stack Overflow」
英語が読めない場合は翻訳のGoogle拡張機能とか使ってもいいですが、読めたほうがお得なので英語を読んで理解していくスタイルに切り替えていくのがおすすめです。
英語を読んで理解するベースの学力がない場合には、朝1時間英語を勉強する時間とかを作ったほうが長期タームで見た時にはお得になることが多いです。
どうしても時間的に厳しい場合は日本語 + 翻訳でOK。
実務に入ってからはプロジェクトやらタスクを遂行するようになりますが、そこには必ず上司(マネージャー)の存在がいます。
その上司に、やり方が分からなくてハマった時や、そもそもタスクを始める前に軽く「これはこういうふうに実装しようと思ってますけど、どう思いますか〜?」とリアル(Google Meetなど)で聞ける時間を作れるとGOOD。
ただ上司側も暇じゃないので、聞ける時に聞きたいことをさっさと聞くみたいなそういう相手側にコストをあまりかけずに教えてもらうみたいなのは大事なスタンスです。
例)
❌ 毎回Slackのhadlleをしてもらう
🙆♂️ 週に1回の1on1などの時にまとめて質問を一気にさっさと聞く
ぶっちゃけ上司から学ぶ力みたいな部分も多少のコツというか慣れがあります。
いかに上司の時間的精神的なコストをかけずに必要な箇所をテキパキと聞いて理解していけるのかてきなお話です。
基本的にはworkaround(迂回策)を使います。
求めるUIがライブラリ側でうまく表現できない、ORMのライブラリ側で型が合わないなど、何かしら無理な時は必ずあるので、そういう時はコメントをコードベースに残してworkaroundをしましょう。
実際難しいのが、自分側が理解できてないだけなんだけど、できる方法がないって思ってworkaroundとかもしちゃいがちなので、いわゆるそこが技術力って部分ではあります。
ただ、入門〜初心者シーズンは、どうしても無理なところは無理ってケースがちょいちょい出てくるんでそういう時は潔くworkaroundか別の実装方法か、、、って感じでなんらかの方法で迂回して前に進んでいく必要はあります。