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
630
サーバーレスな技術を使ってオフィス業務を改善した話/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
150
監視についてみんなに知って欲しいこと/introductory-monitoring
ega4432
0
59
新機能紹介!CloudFront Functions を触ってみた/Tried out the new CloudFront Functions
ega4432
0
350
効率よく成長するために自分の強みを知る方法/How to know your strengths to grow efficiently
ega4432
0
95
サーバーレス初心者による 初めての AWS Lambda/The first time AWS Lambda by serverless beginners
ega4432
0
630
Other Decks in Technology
See All in Technology
MCP とマネージド PaaS で実現する大規模 AI アプリケーションの高速開発
nahokoxxx
1
1.4k
TypeScript 上達の道
ysknsid25
4
480
20250719_JAWS_kobe
takuyay0ne
1
160
OTel 公式ドキュメント翻訳 PJ から始めるコミュニティ活動/Community activities starting with the OTel official document translation project
msksgm
0
210
Recoil脱却の現状と挑戦
kirik
2
320
Turn Your Community into a Fundraising Catalyst for Black Philanthropy Month
auctria
PRO
0
120
データエンジニアリング 4年前と変わったこと、 4年前と変わらないこと
tanakarian
2
350
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.7k
CSPヘッダー導入で実現するWebサイトの多層防御:今すぐ試せる設定例と運用知見
llamakko
1
160
AI時代にも変わらぬ価値を発揮したい: インフラ・クラウドを切り口にユーザー価値と非機能要件に向き合ってエンジニアとしての地力を培う
netmarkjp
0
220
DatabricksのOLTPデータベース『Lakebase』に詳しくなろう!
inoutk
0
100
TROCCO今昔
gtnao
0
210
Featured
See All Featured
Speed Design
sergeychernyshev
32
1k
Building an army of robots
kneath
306
45k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Why Our Code Smells
bkeepers
PRO
337
57k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Bash Introduction
62gerente
613
210k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Practical Orchestrator
shlominoach
189
11k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
How STYLIGHT went responsive
nonsquared
100
5.6k
Facilitating Awesome Meetings
lara
54
6.5k
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