2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Rails・GraphQL・Next.js】技術研修でTODO管理アプリを作った

Posted at

カスタマーサポートからエンジニア転身を決意し、
6月に株式会社mofmofへ入社しました!

株式会社mofmofでは、2ヶ月間でお題に沿ったTODO管理アプリを実装するという
技術研修期間が設けられています。
案件に入る前にこうした期間を設けてもらえるのはとてもありがたいことだなと感じます。

今回は実際に作ったアプリや学んだことについてご紹介します。

実際のアプリ画面

image-1754278355699.png

使用技術・サービスなど

  • Docker
    • compose
  • Rails(最新)
    • esbuild
  • GraphQL
    • client: Apollo Client
  • バックグラウンド処理系
    • メール送信
      • MailGun
    • ジョブスケジューラ
      • Sidekiq
  • フロントエンド
    • Next.js
      • App Router
    • TypeScript
    • Tailwind CSS
  • インフラ
    • Heroku
  • 課題管理
    • Linear

実装した主な機能

  • タスクのCRUD機能
  • ユーザー/管理者の認証機能
  • タスクのステータス/ラベル付け機能
  • タスクのCSVインポート/エクスポート
  • タスク期限の通知機能(メール)
  • ユーザーの一覧表示機能
  • その他
    • CIの導入
    • Rspec

やったこと

研修ではPO役とメンター役がついてくださり、ロールプレイング形式で行いました。
実装だけでなく、実際の案件に近い形でスクラムチームでのアジャイル(モジャイル)開発体験を学ぶことができました。
(スプリント:1週間)

良かったことや学んだこと

未経験の言語・技術に触れることができた

GraphQLやNext.jsはほぼ初めて触れる言語でしたが、
分からないことは気軽に質問できる環境を用意していただけたので
落ち着いてキャッチアップすることができました!

プロダクトへの責任感を持つことができた

PO役と会話をしながら、「POが実現したいことを可能な限り具体化して実現する」
という工程はとても学びになりました。
これを怠ると、POと開発者の間で認識の齟齬が生まれてしまうので、
可能な限りユーザーストーリーについて議論をして、
お互いのイメージを同じところに持てるようにしたいです。

機械的にストーリーや機能の話をしたり、
技術目線だけで話をしないように、
しっかりと開発者も、価値のあるプロダクトをつくることに責任を持つべきだと学びました。
今後の案件でも心がけていきたいです。

ファシリテーターの経験ができた

最初の1ヶ月間はメンター役がお手本としてファシリテーションをしてくださり、
残りの1ヶ月間は私がファシリテーションをしました。

しっかりとファシリテーションをするのは初めてだったのでかなり緊張しました!
定例をスムーズに行うために、
アジェンダをしっかりと作っておくこと、時間配分をある程度決めておくこと、
時間のかかりそうなことはあらかじめメンバーに共有し
自分の意見をまとめておいてもらうなど、さまざまな工夫をする必要があると感じました。

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

UI/UXの向上

今回は極力シンプルを目指して実装をしたつもりですが、
もう少しユーザー目線に立っておしゃれなデザインを考えてみたいなと思います。

コンポーネント設計の改善

今回はメンテナンス性を十分に考慮できたかというと、あまり自信がありません。
今後は自分だけでなく他の人が見ても分かりやすく、修正しやすい設計を意識していきたいです。

まとめ

私にとっては学ぶことしかない2ヶ月間でした!
はじめて触れる言語、はじめて実装する機能、はじめてのスクラム、
はじめてのファシリ、はじめてのポイント見積もり、はじめてのスプリントプランニング。
でもこのはじめてをたくさん味わって楽しめることが、
エンジニアのいいところだなと思います。
これからもたくさんのことを吸収して楽しみながら開発をしていきたいです!

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?