まだルーティン作業で消耗しているの? ChatOpsでバックオフィス業務もまるごと自動化しています

こんにちは!インターンの吉村と申します。

今日はエウレカでのChatOps、特にバックオフィス業務関連のBotのご紹介をしたいと思います。社内でのBot開発はとても盛んで、これまでに個々のエンジニアから数多くのBotが召喚されてきました。

今日もまたBotの息吹が…

kasumi

業務に関係するBotは過去にも紹介されています。

今回は上記に見るような

「エンジニアのエンジニアによるエンジニアのためのChat Ops」—つまり

  • ビルドやデプロイの管理
  • 
障害やシステム状態監視の通知
  • プロダクトに関する通知

などの開発フローの整備・改善ではなく!バックオフィス業務を如何に改善しようとしているかをご紹介したいと思います。

背景

ひとことでいうと

ChatOpsはエンジニアに限定されない。

詳しい背景

CTO室室長 梶原さんのエウレカが目指す“モダンな情シス”とは?で説明されているので是非参照してください。

以下に要約してご紹介します。


ChatOpsを開発チーム内だけのスキームとせず、バックオフィス業務でも利用するのが当たり前であると考える。

なぜなら、バックオフィス業務の多くはルーティングワークが多く、かつ人為的なミスが発生しやすい環境である。ゆえに多くの業務を自動化すると、より早く良くルーティングワークを消化してクリエィティブな業務に集中できるからだ。

ツールなど

  • 
Slack
  • 
Slash command
  • 
GitHub Enterprise
  • Google App Engine/Go
  •  各種API(JIRA/GitHub)ect…

PairsはAWSを使用していますが、BotはGoogle App Engineでホスティングする方針です。

またBot作成の鉄板はHubotですが、Goが主流のエウレカではnode.jsへの学習コストを考えてGoで開発することにしました。

Slash command(機能)の開発はCTOのkaneshinさんの記事SlackのSlash CommandsをApp Engineで稼働させるがおすすめです。

事例

JIRAとGitHubに関連する2つを、設計と使い方ごと取り上げます。

JIRAのチケット作成自動化

バックオフィス業務のタスク管理はJIRAのチケットで行っています。これまで、定常タスクも温かみのある手作業で作成されていました。

この繰り返しタスクを、繰り返しコピペでチケット作成する億劫を解消するのが目標です。

ここでの定常タスクとはどのようなものがあるでしょうか?以下より社員が入社したときのタスクを例に取り説明したいと思います。

  • 黄色の入社 == 親タスク
  • 緑色の四角 == 子タスク(この他に各種アカウント作成などがあります)

設計

下図の通りです。JIRAGoogle SpreadSheetAPIを使用しています。スプレッドシートはチケット情報(タスクのサマリや担当者)をまとめるために使用し、内容の変更時も自動的に対応するようにしました。

例の「吉村入社」の場合、

  1. Slackからスラッシュコマンド /jira join 吉村 が叩かれる
  2. スプレッドシートから情報Get
  3. JIRAのAPIからGetしたフィールド情報をもとに
  4. チケット作成のAPIを叩く
  5. 結果(URL)をSlackにメッセージとして表示

上記のようにして社員の入退社に伴うサブタスクが一斉に作成できるようになりました。

GitHubのメンバー管理(招待/削除)

例えばGitHubのOrganizationは管理者が招待をディベロッパーへ送り、受信者が招待メールをacceptすることでGitHub Org.登録が完了します。

これを自己完結できるChatOpsを考えました。

使い方

Slackの指定チャンネルでのみ使用可能としました。
/github helpと打つと使用方法が表示されます。
sozai
sozai3

使用方法の通りに操作し、エラー無く完了すると成功メッセージがSlackに届きます。

指定のチャンネル以外でこの操作をすると、以下のようなメッセージが出ます。
sozai4

エウレカマインド

GitHubのチーム招待を開始したとき、不正利用の恐れが指摘されました。

sozai1

本質を考え、無駄を徹底的に排除していく姿勢が素敵だなと思っています。

おわりに

いちユーザーとしての感想になりますが、めんどくさい気持ちが発生しがちなタスク(権限問題・管理者・相手の都合などなど)が、Bot相手は気持ちがラクーでよいなと思いました。

これからも、自動でプロセスが流れていく環境を作っていきます。
社内プロセスでめんどうな気持ちになられている方、是非エウレカへいらして下さい。これからも社内全体の無駄をなくし、集中すべきものに集中できる会社へ向かっていきます。

  • このエントリーをはてなブックマークに追加

エウレカでは、一緒に働いていただける方を絶賛募集中です。募集中の職種はこちらからご確認ください!皆様のエントリーをお待ちしております!

Recommend

【Go言語】append使い分けのススメ 〜スライスの先頭へ要素を追加するとき、中身の型は固定長?可変長?〜

オウンドメディアの古い記事を整理して、トラフィックを約2倍にした話