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
1k
TypeScriptとAWS CDKでクラウドアプリケーション開発
Think ! FrontEnd #2 で登壇した資料です。
Ryu
October 01, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
250
あれやってみてー駆動から成長を加速させる / areyattemite-driven
nashiusagi
1
200
Security_for_introducing_eBPF
kentatada
0
110
テスト自動化失敗から再挑戦しチームにオーナーシップを委譲した話/STAC2024 macho
ma_cho29
1
1.3k
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
120
暇に任せてProxmoxコンソール 作ってみました
karugamo
1
720
SymfonyCon Vienna 2025: Twig, still relevant in 2025?
fabpot
3
1.2k
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
120
As an Engineers, let's build the CRM system via LINE Official Account 2.0
clonn
1
670
ゆるやかにgolangci-lintのルールを強くする / Kyoto.go #56
utgwkk
1
370
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
180
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
170
Featured
See All Featured
Embracing the Ebb and Flow
colly
84
4.5k
Adopting Sorbet at Scale
ufuk
73
9.1k
GitHub's CSS Performance
jonrohan
1030
460k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Designing Experiences People Love
moore
138
23k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
810
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