Slide 1

Slide 1 text

TypeScript と AWS CDK で
 クラウドアプリケーション開発 
 プラットフォーム事業本部 ペイメントサービス部所属
 小林 龍太郎


Slide 2

Slide 2 text

自己紹介 小林龍太郎 (Ryutaro Kobayashi)
 所属:プラットフォーム事業本部
 ペイメントサービス部 決済グループ
 19新卒入社 エンジニア
 趣味:バイク、キャンプ、アニメ
 主にサーバーサイド開発 Java・Kotlin
 @Ryuk236
 @Ryu236


Slide 3

Slide 3 text

1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ 目次

Slide 4

Slide 4 text

1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ クラウドへのリプレイス

Slide 5

Slide 5 text

オンプレからクラウド移行 多くのシステムはオンプレで動いている。 現状のシステムをクラウド( )へ移行を進めている。

Slide 6

Slide 6 text

開発したいアプリケーション オンプレで稼働している サーバーをクラウド移行 方針 既存の をラップした形でクラウドに を構築 その後、既存の処理をクラウドに移行していく 今回お話するのは ここ!

Slide 7

Slide 7 text

クラウド移行の課題 オンプレを扱うインフラチームがあるが、クラウド環境は自分たちで構築・運用を していく必要がある。 を利用して リソースの構築を楽にやりたい。 チームメンバーがアプリケーションエンジニア

Slide 8

Slide 8 text

クラウド移行の課題 オンプレを扱うインフラチームがあるが、クラウド環境は自分たちで構築・運用を していく必要がある。 を利用して リソースの構築を楽にやりたい。 チームメンバーがアプリケーションエンジニア AWS CDK

Slide 9

Slide 9 text

1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ とは

Slide 10

Slide 10 text

などのプログラミング言語を使用して、 リソースをデプロ イが可能。( ) 内部では テンプレートを作成し、そのテンプレートを使 用してデプロイ。

Slide 11

Slide 11 text

年 月 日 オープンソースソフトウェア(aws/aws-cdk) テストコードが書ける デプロイは コマンド つで実施可能

Slide 12

Slide 12 text

コマンド

Slide 13

Slide 13 text

を選んだ理由 一般のプログラミング言語で リソース構築が可能。 アプリケーションコードも一緒に書ける。 より少ないコード量になる。

Slide 14

Slide 14 text

1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ でアプリ開発

Slide 15

Slide 15 text

で なぜ にしたのか? 静的型付けが可能 クラスベースオブジェクト指向 との互換性、ライブラリやツールなどが使用可能 フロントエンドもサーバーサイドの開発も可能 → 言語を統一して開発効率を上げれる

Slide 16

Slide 16 text

開発体制 自分は ・ ( )をほぼ触ったことがない コロナの影響で突然フルリモート 他のチームメンバーに教えてもらいながら開発したい

Slide 17

Slide 17 text

開発体制 開発初期はモブプログラミングを実施 ・ :  コードの共有: ・画面の共有 通話: ・ コードフォーマット:

Slide 18

Slide 18 text

1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ サーバーレスアプリケーション

Slide 19

Slide 19 text

アーキテクチャ Amazon Web Services、“Powered by AWS”ロゴ、[およびかかる資料で使用されるその他のAWS商標] は、米国その他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。 TypeScript で実装

Slide 20

Slide 20 text

アプリケーションログ Amazon Web Services、“Powered by AWS”ロゴ、[およびかかる資料で使用されるその他のAWS商標] は、米国その他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。

Slide 21

Slide 21 text

を使用 単体テストの自動実行 テストライブラリ: 自動でデプロイ  それぞれの環境用(ステージングや本番など)のブランチを作成し、そのブラン チにマージを行うと へデプロイ実行。

Slide 22

Slide 22 text

インテグレーションテスト の Schedule Jobs 機能を使用して インテグレーションテストを定期実行。毎日テスト結果を確認。 API

Slide 23

Slide 23 text

と での開発 アプリケーションコードと 環境構築の両方を、 で開発 で型チェックや、コード補完を用いた開発 コマンドで簡単デプロイ( で自動化)

Slide 24

Slide 24 text

1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ まとめ

Slide 25

Slide 25 text

まとめ と を使用することで、 リソース作成と アプリケーション開発の両方を効率よく行えた。 は便利なツール による開発で型やクラスを使用した開発は良い! の可能性

Slide 26

Slide 26 text

開発で大変な だった こと のバージョンアップが早い 週間に最低 回以上リリース の知識が必要 (個人的) と の両方の学習・ に慣れるのに時間がかかった

Slide 27

Slide 27 text

で などのリソース構 築が可能 と のみ対応 現在はまだ 版 (hashicorp/terraform-cdk)

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content