Github上の動きを可視化した話し

Supershipでサーバーサイドエンジニアをやっている栗山です。


Supershipのプロジェクトは、主にGithubのprivateリポジトリを使用して開発を行っています。コミュニケーションツールはSlackを使用しており、GithubでのアクションをSlackに流しています。このSlack上の流れる情報は、主に通知としての意味合いを持っていて、フロー情報のため、誰が、どのくらい、Github上で活動を行っているのか。が、感覚的なものになっていました。この情報をある程度集約して見えるようにしたいな。と思い、ツールを自作しました。

背景

SupershipではWorkFromEverywhere(以下WFE)という名称で、どこからでも仕事を行えるように、生産性向上のためオフィス外でも仕事が行えるように、という取り組みを試験的に行っています。私が所属している新規サービス開発室が、この取り組みを導入しやすいのでは、という事で全社の中で先駆けてWFEを試すことになりました。WFEを試すにあたって、以下の心構えがありました。

  • 生産性向上の為のWorkFromEverywhereである
  • 家やカフェで仕事してもいいからといって決して休みではない(当たり前!)
  • 一律に会社に来るよりも生産性があがる、ということを目指さないと意味がない
  • 生産性をどうしたらあげられるのか、の一つの選択肢がWorkFromEverywhere

この心構えを受けて、WFEで生産性が上がったのか下がったのか変わらないのか、何かしたら生産性を示す指標があったほうが良いな。と思い、今回のツールの作成にあたりました。
 

作成したもの



開発環境はGAE/Goで作りました。GAE/Goを選択した理由としては、(自分の中で)GAE/Goがブームだったので何かしら作りたい。という思いからです。
上記の画像にある通り、以下4つのGithub上のアクションを蓄積してSlackに報告するというだけのツールです。

  • Issueを作った
  • Issueにコメントをした
  • PullRequestを作った
  • PullRequestにレビューコメントをした

誤解してほしくないのは、ここでみたいのはあくまでもWFEを行った際に、普段と比べて、極端にアクションは変わらないよね?普段と変わる部分はあるのかな?生産性はあがるかな?下がるのかな?といった事を見るためのものです。決して、◯◯さん全然働いてないのでは?といった事を見るためではありません。

WFEの流れ

WFEは以下の流れで行っています。

  • 10:00 に Slack上に集合し、その日の作業予定を共有する
  • sneekで作業中の様子を共有する。(sneekについては後述)
  • 各自、お昼は自由なタイミングで1h程度取る。お昼へ行く際は一言Slackで離席する旨を伝える
  • 19:00 前後に、GithubのIssueに日報を書く
    • 進捗、リモートで良かった点、やりにくかった点を書く
  • 後日、KPTでWFEを振り返る

当日は、sneekというリモートワークをサポートするツールでメンバーの様子を常に見えるように行っていました。sneekはアプリ上で他ユーザーをクリックするだけで通話が繋がったりと、普段オフィスで近くの席の人と会話を始める感覚でリモートワークが出来るので良いツールだと思いました。






(↑モザイク加工してます)

ご飯食べてたり、子供を抱きながら仕事したり、普段できないことを行っていることがわかります!(写真を撮るタイミングを自分で設定できるのでネタ的な写真を撮ることができます)
後日KPTを行った結果としてはネガティブな意見は全くなく、ポジティブな意見が多く、うまく回していくために定期的にやっていきたいという意見が多くありました。私自身も実施前は、会社以外では仕事は出来ないと思っていたのですがカフェで朝ごはんを食べてそのまま仕事をしたりと普段やらないことをできて気分転換にもなり、生産性が高くなることを前提として行っているという心構えもあり普段より集中してできたと思いました。Github上のアクションとしては、口頭でのやり取りが減った結果かissue上で積極的にコメントが行われることが多かったため、Github上としては生産性が上がっていると捉えれるように見えました。

おわりに

いかがだったでしょうか。Supershipで行っている取り組みと、それに伴って作成したツールの話しをしました。
弊社では積極的に挑戦して最も重要なことに取り組める仲間を募集しています。ご興味がある方はぜひ下にある採用情報をご覧ください。

Supership's job postings
Anonymous
47ca0687 1c00 460d b57c 0205f7affa3e
A9e1fd9e a3b1 46a2 9da7 0210be93b0fb?1524466616
8b7c0642 b272 40eb b5ff daf2888da0a0?1504184836
B8a778a8 373e 48d9 b712 082ae995bb05
0631b3f1 0c07 44eb af13 79cbee69bbc3
19 Like
Anonymous
47ca0687 1c00 460d b57c 0205f7affa3e
A9e1fd9e a3b1 46a2 9da7 0210be93b0fb?1524466616
8b7c0642 b272 40eb b5ff daf2888da0a0?1504184836
B8a778a8 373e 48d9 b712 082ae995bb05
0631b3f1 0c07 44eb af13 79cbee69bbc3
19 Like

Weekly ranking

Show other rankings

Page top icon