LoginSignup
6
1

More than 1 year has passed since last update.

チームで作成した出欠管理システムをAWSへ移行しました!

Last updated at Posted at 2021-12-07

昨年、社内チームで作成したQRコードを認証を利用した出席管理システムをAWSへ移行しました!
この記事ではその概要について紹介します。

前回の記事はこちらになります。
https://qiita.com/Hiroki1928/items/d7eb5d819cc5e99e6d4c

実施内容

今回は下記の4つを実施しました。

1.リモート開発作業の推進
2.前年度成果物のAWS移行
3.認証機能の追加
4.フロントエンド資産のビルド・デプロイ自動化

リモート開発作業の推進

  • Discordに複数ボイスチャンネルを開設してバーチャルオフィスとして利用しました。
  • モブプログラミングを活用した作業効率化・技術スキルのフォロー
    ※モブプログラミングはチームの何人かで1組になってコミュニケーションをとりながら
    リモート作業を行うことです。
    共有して1つの作業を行うため通常よりも効率よく作業を進めることができます。
  • 月例社内ミーティングでの開発作業 + 週次 or 隔週でのリモート開発作業

スクリーンショット 2021-11-28 101837.png

前年度成果物のAWS移行

  • 移行前と移行後の比較
移行前 移行後
クラウド基盤 Dockerコンテナ Amazon Web Service
Web Webコンテナ(Nginx・JavaScript) Cloudfront・S3・JavaScript
API APIコンテナ(Flask・Python) APIGateway・Lambda・Python
DB DBコンテナ(PostgreSQL) DynamoDB
  • AWS移行後の概要

移行図.png

  • Web画面はS3+CloudFrontで実装しました。
  • CloudFrontはHTTPSに対応するために使用しました。
  • APIの実装はAPIGatewayとLamdaで実装しました。
  • DBはRDBからDynamoDBに移行しました。

認証機能の追加

  • 認証機能はAWSCognitoを使用することで実装できました。
  • ログイン認証画面はAWSAmplifyを使用することで短時間で作成することができました。

image.png

フロントエンド資産のビルド・デプロイの自動化

  • AWSCodePipelineを使用してビルドからデプロイまでを実装しました。
    ソースの変更をトリガーにパイプラインが実行されます。
  • GitLabで管理されているソースを取得することができないので
    CodeCommitに同期して実装しています。
  • CodeBuildでCodeCommitに同期された資産をビルドしてS3にデプロイします。

自動デプロイ.png

リモート作業をして感じたこと

  • リモートでの作業だったので通勤時間などがなく効率的に作業ができる。
  • リモートだと相手の反応から理解度を認識することが難しい。
  • 複数人で作業をしているときは発言のタイミングが難しい 。

課題

  • 各メンバーがリモート作業に慣れていくことが必要。
6
1
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
6
1