2020/07 ~ Webエンジニア
- 2020/07 ~ 2023/07あたりに主にHanami上で利用
- Ruby on Railsは個人開発と業務で数ヶ月利用した程度
- 2020/07 ~ 2021/06あたりに主にNuxt.js上で利用
- TypeScriptは開発体験が非常に良かった
- 2021/03 ~ 2021/06あたりに主にLaravel上で利用
- PHP自体はそれほど勉強しておらず、Laravelを使って開発する上で適宜ググったり、他言語と類推しながら雰囲気で利用していた程度
- 設計
- テスト
- DB設計
- インフラ
- 他者尊重
- ギブアンドテイク
- 主体性をもって行動すること
- 素直であること
- 成長するために苦しみと積極的に向き合う
- まず要件をしっかり固める
- TODOを整理してからコードを書く
- 後々の保守性、可読性を考える
- その場しのぎは避ける
- 言語、フレームワークの知識より基礎知識
- インターフェースとコメント→テスト→実装の順番で開発するのが好み
- A Philosophy of Software Design、テスト駆動開発に影響を受けてこのスタイルで開発するようになった
2021/09 ~ 2023/07
- Hanami
- Ruby
- RSpec
- Sidekiq
- Swagger
- AWS
- Datadog
- Docker
- Git
法務向けナレッジマネジメントサービスのバックエンドの開発を担当
- アプリで発行したメールアドレスを宛先に含めてメールすると、その内容をアプリに保存できる機能の継続的な開発
- この開発を通してメールの仕様(RFC5322)についての理解が深まった
- ナレッジマネジメントサービスの基本的な機能の継続的な開発
- バックエンドの設計改善
- ドメイン駆動設計で開発
2021/04 ~ 2021/06
- Nuxt.js(SSR)
- TypeScript
- Cypress
- Swagger
- Laravel
- Docker
- Git
- Laravelを用いたREST APIの開発
- ユーザー認証、カート、住所などのコア機能の開発
2020/10 ~ 2021/06
- Nuxt.js(SSR)
- TypeScript
- Cypress
- Swagger
- Laravel
- Docker
- Git
- 事業部ごとに分散しているECサイトの統合
- フロントエンドのリーダーとして開発を主導
- Nuxt.jsを用いたフロントエンドの開発をメインで実装
- 認証、既存機能の再実装、新機能の実装など
- フロントの決済機能
- 通常決済
- Amazon Pay V2
2020/07 ~ 2020/10
- Nuxt.js(SSR)
- Laravel
- Docker
- Git
- 可動中のECサイトのフルリプレイス
- Nuxt.js(SSR)を用いたフロントエンドの実装をメインで担当
- 認証、既存機能の再実装、新機能の実装など、決済周り以外のほぼ全てを一人で担当
- 既存の要件、デザインを反映しつつ、新規機能の実装、変更が容易に行えるように改善
- 1000行近くある責務盛り盛りのコンポーネントを単一責任の原則に則りリファクタリング
- ネストが深くなり、再利用不可能になっているSCSSのリファクタリングなど