# プロジェクト概要
顧客のオンプレミス環境にあるデータを AWS 環境に移行するシステムの設計/開発を担当しました。
# チーム体制
## チーム規模と構成
- チームはプロジェクトマネージャー 1 名、バックエンドエンジニア 5 名で構成されていました。
- 開発手法にはウォーターフォール開発を採用しました。
## 自身のポジションと役割
- バックエンドエンジニアとして、システムの詳細設計・実装を担当しました。
- インフラ領域のテックリードとして、データ移行システムのインフラ・データベース設計をリードしました。
# 取り組み内容
## 開発環境
- アプリケーション開発
- バックエンド: Java
- インフラ構築
- AWS DMS
- AWS SCT
- Amazon DynamoDB
- AWS Lambda
- Amazon Aurora
- その他
- コミュニケーション: Teams
## 開発・取り組み内容
### データ移行システムの設計・実装
#### 概要
- オンプレミス環境の Oracle データベースに保管されたデータを、そのデータを利用している他システムへの影響無く AWS 環境上の Amazon Aurora PostgreSQL に移行するため、自動移行システムの設計と実装を実施しました。
- データ移行: DMS
- データ変換: SCT, Lambda
- データ格納: DynamoDB, Aurora
#### 課題
- インフラ知識のあるエンジニアがチーム内に自分 1 人である事により設計に時間がかかってしまい、チーム全体のスケジュール遅延が生じました。
#### 対応
- 他チームやプロジェクト統括層の有識者と積極的にコミュニケーションを取り、知見をチーム内に共有・浸透する事で、チーム全体のスキルアップとスケジュールの巻き返しを達成しました。
# プロジェクトの成果・価値
- DMS, SCT, DynamoDB Streams を活用する事で、移行中に発生した新規データを含めた AWS への自動移行を実現し、プロジェクトの成功に貢献できました。