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
600
サーバーレスな技術を使ってオフィス業務を改善した話/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
45
新機能紹介!CloudFront Functions を触ってみた/Tried out the new CloudFront Functions
ega4432
0
320
効率よく成長するために自分の強みを知る方法/How to know your strengths to grow efficiently
ega4432
0
77
サーバーレス初心者による 初めての AWS Lambda/The first time AWS Lambda by serverless beginners
ega4432
0
610
Other Decks in Technology
See All in Technology
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
520
技術負債の「予兆検知」と「状況異変」のススメ / Technology Dept
i35_267
1
1.1k
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
130
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
220
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
250
表現を育てる
kiyou77
1
210
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
自動テストの世界に、この5年間で起きたこと
autifyhq
10
8.4k
技術的負債解消の取り組みと専門チームのお話 #技術的負債_Findy
bengo4com
1
1.3k
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
180
モノレポ開発のエラー、誰が見る?Datadog で実現する適切なトリアージとエスカレーション
biwashi
6
800
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
1.3k
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
960
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Automating Front-end Workflow
addyosmani
1368
200k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
Raft: Consensus for Rubyists
vanstee
137
6.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Making Projects Easy
brettharned
116
6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Speed Design
sergeychernyshev
27
790
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