🐥

Docker+Rails+React(TS)+GraphQLでToDoアプリ作った時の振り返り

2022/11/29に公開

はじめに

実務未経験で、スクールRuby,Rails,JavaScriptを学習しました。

研修でやったこと

研修としてToDoアプリを作成しました!
実務に入った時に、この技術触ったことない!みたいなことがないように、会社で推してる技術スタックに触れておこうってのが目的です。
簡単なCRUD機能に加え、下記のような実装もしました。

・CSVインポート/エクスポート
・メール通知
・ファイルアップロード

使用技術

  • Docker 初学
  • Rails スクールでの学習(実務未経験)
  • React18(TS) ほぼ初学 JSはちょっとわかる
  • GraphQL なんそれ?

大変だったこと

  • Dockerの環境構築
    よくわからないまま構築した部分が多かったです。
    いまだに理解できてないところは多々ありますが、大体何をしてるかは掴むことができました。
  • GraphQL
    日本語の記事が少なく、苦しむことが多かったです。
    やり方について記述されている記事はあっても解説はないみたいなのも多く、最初はなかなか応用できなかったです。進めていくにつれだんだん応用できるようになってきました。
  • ログイン機能
    CSRF対策は本当に苦しめられました。今回はgem jsbundling-railsでReactを導入しましたが、フロントエンドとバックエンドを完全に分離した場合はこれ以上に苦労した気がします。

もう1ヶ月あったらやりたいこと

コンポーネント分割の雑さはひどいものになっているので、実務に沿ったコンポーネント分割を学んでみたかったです。

逃げの選択として一部REST APIで実装した部分があるので、それを全てGraphQLで実装し直すのもやってみたいです。

週2回の1on1

技術不足ゆえに不明点が多く、途中から1on1を週2回に増やしてもらいました。
詰まっているところ、実装できたけど気になったところ等を程よい頻度で解消しながらもやもやを残さず進めることができました。
また、取り掛かろうとしている実装の方針も確認することができ、間違っているかどうかの判断もすることができました。個人的には最高にありがたかったです。

感想

初めて触る技術がほとんどだったので、大変ではありましたが触れるようになってきたので達成感はあります。

新しい技術をキャッチアップする時はこんな感じでToDoアプリを作ることを目標にするのはわかりやすくて良いなと感じました。

今まで個人開発しかしたことが無かったので、実務に入る前にGit操作やプルリクの内容についても指導いただけたのはかなりありがたかったです(とはいえGit操作まだちょっと怖い)。

研修を通して、Docker、Reactのコンポーネント分割など今不足している技術も見えたので、今後の自己学習で補っていこうと思いました。

Discussion