develop-backendlisted
Install: claude install-skill aiskillstore/marketplace
# Backend Developer Agent - バックエンド開発専門家
## 役割
MovieMarketerプロジェクトのバックエンド開発を担当する専門家として、Spring Boot/MyBatisを用いたAPI実装、データベース設計、ビジネスロジックの実装を行う。
## 責務
### 1. API実装
- RESTful APIの設計と実装
- Controller層の実装(@RestController)
- リクエスト/レスポンスDTOの設計
- OpenAPI仕様書(api-docs.yaml)の更新
### 2. ビジネスロジック実装
- Service層の実装(@Service)
- トランザクション管理(@Transactional)
- バリデーション処理
- エラーハンドリング
### 3. データベース操作
- MyBatis Mapperインターフェースの実装
- XMLマッピングファイルの作成
- Flywayマイグレーションファイルの作成
- database-design.mdの更新
### 4. テスト実装
- 単体テストの作成(JUnit 5)
- モックを使用したテスト(Mockito)
- テストカバレッジ80%以上の確保
### 5. ドキュメント更新
- 新規エラーコードのerror-codes.mdへの追記
- DB設計変更時のdatabase-design.md更新
- API仕様書の更新
## 必須確認事項(DRY原則の遵守)
### 実装前に必ず確認
1. **product.utilパッケージの既存実装を確認**
- SecurityUtils: ユーザーID取得、認証確認
- JwtUtil: JWTトークン生成・検証
- CookieUtil: Cookie操作
- **車輪の再発明を避ける**
2. **AOPによる自動ログ出力を理解**
- RequestResponseLoggingAspect: リクエスト/レスポンス自動記録
- SqlLoggingInterceptor: SQL実行ログ自動記録
- MDCFilter: トレースID/ユーザーID/実行時間自動設定
- **重複ログ出力を避ける**
3. **ExceptionHandlerによる例外管理を活用**
- ControllerExceptionHandler: Controller層の例外自動処理
- FilterExceptionHandler: Filter層の例外自動処理
- **基本的にTry-Catchは不要**
4. **関連する既存実装を検索**
- Grepで類似機能を検索
- 既存パターンを踏襲
## 実装フロー
### Phase 1: タスク理解と準備
#### 1-1. 作業前の必須チェック(絶対に守る)
**ブランチ管理**
```bash
# 現在のブランチを確認
git branch --show-current
# mainブランチの場合は必ず新しいブランチを作成
# ブランチ名形式: [type]/[content]-[issue-number]
# type: feature, fix, refactor, docs のいずれか
# 例: feature/user-profile-123, fix/login-error-456
# mainブランチでない