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
サーバーレスな技術を使ってオフィス業務を改善した話/Improvement office op...
Search
ega4432
July 12, 2021
Technology
0
570
サーバーレスな技術を使ってオフィス業務を改善した話/Improvement office operations using Serverless technology
イベントURL:
https://serverlesslt.connpass.com/event/216765/
ega4432
July 12, 2021
Tweet
Share
More Decks by ega4432
See All by ega4432
Docker 超入門/introduction-docker
ega4432
1
130
監視についてみんなに知って欲しいこと/introductory-monitoring
ega4432
0
41
新機能紹介!CloudFront Functions を触ってみた/Tried out the new CloudFront Functions
ega4432
0
290
効率よく成長するために自分の強みを知る方法/How to know your strengths to grow efficiently
ega4432
0
67
サーバーレス初心者による 初めての AWS Lambda/The first time AWS Lambda by serverless beginners
ega4432
0
600
Other Decks in Technology
See All in Technology
日経電子版のStoreKit2フルリニューアル
shimastripe
1
140
Incident Response Practices: Waroom's Features and Future Challenges
rrreeeyyy
0
160
AGIについてChatGPTに聞いてみた
blueb
0
130
SRE×AIOpsを始めよう!GuardDutyによるお手軽脅威検出
amixedcolor
0
180
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
230
心が動くエンジニアリング ── 私が夢中になる理由
16bitidol
0
100
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
140
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
130
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
110
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
430
Lambdaと地方とコミュニティ
miu_crescent
2
370
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Automating Front-end Workflow
addyosmani
1366
200k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Raft: Consensus for Rubyists
vanstee
136
6.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
The Cult of Friendly URLs
andyhume
78
6k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Code Reviewing Like a Champion
maltzj
520
39k
Facilitating Awesome Meetings
lara
50
6.1k
A Tale of Four Properties
chriscoyier
156
23k
Transcript
サーバーレスな技術を使って オフィス業務を改善した話 えが(@ega4432) Serverless LT 初心者向け LT 大会
防衛大卒の新卒 3 年目の Z 世代 スクラムマスター、バックエンドエンジニア AWS 、Laravel 、コンテナ、Jamstack 読書、将棋、テニス、筋トレ
えが(@ega4432) 2021 ©︎ ega4432 - Built with marp.
アジェンダ 1. 今日お話しすること 2. きっかけ・課題 3. 解決するためにやったこと 4. ハマりポイント 5.
解決策 6. まとめ サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp. 3
サーバーレスな技術を使って オフィス業務を改善した話 今日お話しすること 2021 ©︎ ega4432 - Built with marp.
4
今日お話しすること Google Apps Script ( GAS ) を使って総務の業務改善をした話と それを行った際のハマりポイント &
AWS を使った解決策の紹介 サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp. 5
サーバーレスな技術を使って オフィス業務を改善した話 きっかけ・課題 2021 ©︎ ega4432 - Built with marp.
6
備品発注のフロー サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp.
7
課題① インターフェース 人によってフォーマットを逸脱してしまう可能性 都度スプレッドシートを探す手間が発生 サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 -
Built with marp. 8
課題② 二重管理 用途は違うが、同じデータのスプレッドシートが 2 つ存在 サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432
- Built with marp. 9
課題③ 毎週発生する定型業務 記入用 → 提出用のコピーは手動で運用 個人に依存したタスク サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎
ega4432 - Built with marp. 10
サーバーレスな技術を使って オフィス業務を改善した話 解決するために作ったもの 2021 ©︎ ega4432 - Built with marp.
11
全体像 サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp.
12
① インターフェースを Slack に Slack をインターフェースにするこ とで業務中にストレスなく使用 スラッシュコマンドで呼び出し 入力モーダル表示 スキーマの統一、バリデーションが
可能に サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp. 13
② 記入用スプレッド シートの廃止 投稿内容の通知 記入者は自身が投稿した 内容を確認できる ログが Slack 上に残る サーバーレスな技術を使って
オフィス業務を改善し 2021 ©︎ ega4432 - Built with marp. 14
③ 定型業務をバッチ化 状況に応じて送信メッセージを動的 に変更 合計金額の算出やシートのアーカイ ブ、複製なども自動化 サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎
ega4432 - Built with marp. 15
サーバーレスな技術を使って オフィス業務を改善した話 ハマりポイント 2021 ©︎ ega4432 - Built with marp.
16
ハマりポイント Slack API の 3 秒ルール Slack が HTTP リクエストを投げてから
3 秒以内に HTTP レスポン スを受け取らないとタイムアウトになる。 GAS は処理途中でレスポンスを返してしまうと後続の処理は実行さ れない。 サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp. 17
サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp. 18
サーバーレスな技術を使って オフィス業務を改善した話 解決策 2021 ©︎ ega4432 - Built with marp.
19
解決策 Slack 公式 Bolt フレームワーク Slack API を使いやすくするための Node.js 製フレームワーク。
ack() という関数をサポートしており、HTTP レスポンス 200 を返 しつつ後続の処理も実行可能。 サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp. 20
Example Code // モーダルの回答を送信した時の処理 app.view('hoge', async ({ ack, view })
=> { // この時点で HTTP 200 を返す await ack(); // 後続する重たい処理を非同期実行 await heavyJob(); }); サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp. 21
AWS に乗せる API Gateway + Lambda で API 化 構築には
Serverless Framework を使用 サーバーレスな技術を使って オフィス業務を改 2021 ©︎ ega4432 - Built with marp. 22
最終的な構成 サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp.
23
サーバーレスな技術を使って オフィス業務を改善した話 まとめ 2021 ©︎ ega4432 - Built with marp.
24
まとめ 身の回りの課題をどう技術で解決できるか考えるのって楽しい! 不定期な処理、何か小さく始める際サーバーレスは相性が良い Slack bot を実装する際は 3 秒ルールに気をつけよう! Bolt がソリューションを提供してくれている
サーバーレスな技術を使って オフィス業務を改善した話 2021 ©︎ ega4432 - Built with marp. 25
サーバーレスな技術を使って オフィス業務を改善した話 ご静聴ありがとうございました 2021 ©︎ ega4432 - Built with marp.
26