FORCIA CUBEフォルシアの情報を多面的に発信するブログ

120名が在宅勤務でコミュニケーションを取り続けるために 勤怠状況を一目でわかる仕組みづくりをした話

2020.04.16

開発事例 エンジニア

政府が緊急事態宣言を発令してから、1週間余りが経過しました。

フォルシアでは、4月8日から原則在宅勤務体制に入りましたが、発令前から、事態の深刻化を想定してハード、ソフト両面で環境や体制を整えてきたため、120名の組織ほぼ全員がリモートワークを行う体制へと滞りなく突入できています

そして、社員からは「もっとこうしたら在宅勤務がワークしやすくなるのでは?」という改善アイディアが日々出てきています。今回はそのアイディア紹介の第一弾、自動化スクリプトを書いて勤怠状況の可視化を行った事例を紹介します。

勤怠情報はスプレッドシートで可視化

フォルシアでは、社屋に集まってチームでコミュニケーションを取りながら勤務する体制をメインとしてきました。

リモートワークの制度は、以前から存在していたものの、育児や介護などの事情から利用されるケースがほとんどでした。そのため、今回がリモートワーク初体験という社員が多く、全社員が同時にリモートワークになるのは今回が初めてです。

当初はメンバーの勤怠状況を把握するため、Slackで部のチャンネルに「勤務開始/終了」と「休憩開始/終了」を周知する運用を始めたのですが、多くの社員が勤怠状況をSlackの部のチャンネルに報告したため、重要な共有が埋もれてしまうという状況になりました。

この状況を改善するために、3月31日からGoogleスプレッドシートを利用した運用に切り替えました。これは出社・在宅・休憩、勤務開始・休憩開始・休憩終了・勤務終了を記録するものです。

運用切り替えと同時にスプレッドシートからGoogleカレンダー登録するスクリプトが、弊社の中堅エンジニアによって開発されました。これまでリモートワークをする際はカレンダーに予定として登録する運用になっていたため、これにより従来通りカレンダーで予定を把握することが出来るようになりました。2重の登録が必要なくなったため、当面はこれで運用できそうという雰囲気でした。

Slack中心の世界観を構築

しかし、この運用にも弱点がありました。

これまでは社屋への入退室が自動で記録されており、勤怠情報に自動連携されていました。それに比べると毎日スプレッドシートを見に行くのは少し面倒。そこで、新卒3年目のエンジニアがSlack上で完結するようにスクリプトを書いてくれました。
(彼は主業務の検索アプリケーション開発だけでなく、今回のように社内でお困りごとがあった際に社内向けにささっと自動化スクリプトを書いて解決してくれます。社内課題を察知してすぐに解決に向けたアクションを起こす行動力と高い開発能力が社内で認められて、昨年度のフォルシアMVPを獲得しました!)

今回彼が開発した2つのスクリプトを紹介します。

スタンプをトリガーにスプレッドシートを更新

SlackスタンプをトリガーにGoogleスプレッドシートを更新するスクリプトslack2kintaistatusです。

pic_0416.png

現在運用中の勤務表のステータス更新をSlackから行えるアプリを作成しました。

  • 在宅勤務期間中に毎朝表示されるスレッドにリアションするとステータスが更新
  • 各時間もスタンプを押した/外したタイミングで記載

これはAWS Lambdaで動いているbotでリアクションの取得からスプレッドシートへの記入を行っています。Slack Events API + AWS Lambda + Serverless Frameworkを使っています。

実は、この仕組みはフォルシアの福利厚生の一環で活動しているテニス部での仕組みをもとにしています。
社内で複数名テニスに行きたい人が居たらテニスコートを予約するというbotを持っており、その知見を参考に開発したそうです。

スプレッドシートの更新をトリガーにSlackのステータスを更新

上述のスプレッドシートからSlackのステータスを変更するスクリプトslack_statusも開発してくれました。
こちらはSlackのusers.profile.set method API + Google Apps Script + claspを使ってTypeScriptで書かれています。

フォルシアではメインの開発言語としてTSを使うプロジェクトが増えてきているのですが、ちょっとしたツールにTypeScriptが使われる時代になりました。 これが導入された結果、休憩に入るときにSlackやスプレッドシートのステータスを変更する作業が、Slackで「休憩」スタンプ1つ押すだけになりました。

フォルシア社員たちの使用頻度が高いツール上ですべてが完結するようになり、とても楽になりました。
また、チームのチャンネルで業務中なのか休憩中かが明確にわかるようになり、リモートワーク導入以前と比べてもコミュニケーションを取りやすい環境になりました。

まとめ

COVID-19に関連してのフォルシアのリモートワークの状況と工夫を紹介しました。 1日も早く平穏な日常が戻ってくることを願いながら、今私たちができることをしていきます。