Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TypeScriptとAWS CDKでクラウドアプリケーション開発
Search
Ryu
October 01, 2020
Programming
3
1.1k
TypeScriptとAWS CDKでクラウドアプリケーション開発
Think ! FrontEnd #2 で登壇した資料です。
Ryu
October 01, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.6k
Ktorで簡単AIアプリケーション
tsukakei
0
120
Towards Transactional Buffering of CDC Events @ Flink Forward 2025 Barcelona Spain
hpgrahsl
0
120
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
170
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
2
380
マンガアプリViewerの大画面対応を考える
kk__777
0
430
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
3
1.7k
iOSでSVG画像を扱う
kishikawakatsumi
0
180
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
480
業務でAIを使いたい話
hnw
0
220
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
240
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
190
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Facilitating Awesome Meetings
lara
57
6.6k
A designer walks into a library…
pauljervisheath
209
24k
BBQ
matthewcrist
89
9.9k
A Modern Web Designer's Workflow
chriscoyier
697
190k
How STYLIGHT went responsive
nonsquared
100
5.9k
4 Signs Your Business is Dying
shpigford
186
22k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
650
For a Future-Friendly Web
brad_frost
180
10k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Transcript
TypeScript と AWS CDK で クラウドアプリケーション開発 プラットフォーム事業本部 ペイメントサービス部所属 小林
龍太郎
自己紹介 小林龍太郎 (Ryutaro Kobayashi) 所属:プラットフォーム事業本部 ペイメントサービス部 決済グループ 19新卒入社 エンジニア 趣味:バイク、キャンプ、アニメ
主にサーバーサイド開発 Java・Kotlin @Ryuk236 @Ryu236
1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ 目次
1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ クラウドへのリプレイス
オンプレからクラウド移行 多くのシステムはオンプレで動いている。 現状のシステムをクラウド( )へ移行を進めている。
開発したいアプリケーション オンプレで稼働している サーバーをクラウド移行 方針 既存の をラップした形でクラウドに を構築 その後、既存の処理をクラウドに移行していく 今回お話するのは ここ!
クラウド移行の課題 オンプレを扱うインフラチームがあるが、クラウド環境は自分たちで構築・運用を していく必要がある。 を利用して リソースの構築を楽にやりたい。 チームメンバーがアプリケーションエンジニア
クラウド移行の課題 オンプレを扱うインフラチームがあるが、クラウド環境は自分たちで構築・運用を していく必要がある。 を利用して リソースの構築を楽にやりたい。 チームメンバーがアプリケーションエンジニア AWS CDK
1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ とは
などのプログラミング言語を使用して、 リソースをデプロ イが可能。( ) 内部では テンプレートを作成し、そのテンプレートを使 用してデプロイ。
年 月 日 オープンソースソフトウェア(aws/aws-cdk) テストコードが書ける デプロイは コマンド つで実施可能
コマンド
を選んだ理由 一般のプログラミング言語で リソース構築が可能。 アプリケーションコードも一緒に書ける。 より少ないコード量になる。
1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ でアプリ開発
で なぜ にしたのか? 静的型付けが可能 クラスベースオブジェクト指向 との互換性、ライブラリやツールなどが使用可能 フロントエンドもサーバーサイドの開発も可能 → 言語を統一して開発効率を上げれる
開発体制 自分は ・ ( )をほぼ触ったことがない コロナの影響で突然フルリモート 他のチームメンバーに教えてもらいながら開発したい
開発体制 開発初期はモブプログラミングを実施 ・ : コードの共有: ・画面の共有 通話: ・ コードフォーマット:
1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ サーバーレスアプリケーション
アーキテクチャ Amazon Web Services、“Powered by AWS”ロゴ、[およびかかる資料で使用されるその他のAWS商標] は、米国その他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。 TypeScript で実装
アプリケーションログ Amazon Web Services、“Powered by AWS”ロゴ、[およびかかる資料で使用されるその他のAWS商標] は、米国その他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。
を使用 単体テストの自動実行 テストライブラリ: 自動でデプロイ それぞれの環境用(ステージングや本番など)のブランチを作成し、そのブラン チにマージを行うと へデプロイ実行。
インテグレーションテスト の Schedule Jobs 機能を使用して インテグレーションテストを定期実行。毎日テスト結果を確認。 API
と での開発 アプリケーションコードと 環境構築の両方を、 で開発 で型チェックや、コード補完を用いた開発 コマンドで簡単デプロイ( で自動化)
1. オンプレからクラウド移行 2. 3. による開発 4. 開発したアプリケーション 5. まとめ まとめ
まとめ と を使用することで、 リソース作成と アプリケーション開発の両方を効率よく行えた。 は便利なツール による開発で型やクラスを使用した開発は良い! の可能性
開発で大変な だった こと のバージョンアップが早い 週間に最低 回以上リリース の知識が必要 (個人的) と の両方の学習・
に慣れるのに時間がかかった
で などのリソース構 築が可能 と のみ対応 現在はまだ 版 (hashicorp/terraform-cdk)
None
None