見出し画像

テレワークを導入しました

新型ウイルスの影響で一気に導入され始めたテレワークという勤務スタイル。

僕の所属している会社でも本格的にテレワークに移行した為、これから導入を検討している企業の参考になればと思い記事にしました。

運用方法について

コミュニケーションツール
【通常勤務】対話がメインでチャットのみSlack
【テレワーク】会話はDiscordでチャットはSlack

出勤について
【通常勤務】朝オフィスに出勤して夕方に退社
【テレワーク】Discordを用いたオンライン出社

朝会や会議など
【通常勤務】共通の部屋に集合
【テレワーク】Discord内の共有のボイスチャンネルに集合

タスク管理について
【通常勤務】ホワイトボードと付箋を用いたスクラム開発
【テレワーク】GitLabのissues機能をつかったBoard管理

ペアプロ等の共同作業
【通常勤務】実際に画面を見せ合い意見交流
【テレワーク】DiscordのLiveShare機能を用いて意見交流

Discordとは

Discord(ディスコード)とは、Windows、macOS、Linux、Android、iOS、Webブラウザで動作する、アメリカ合衆国で開発されているゲーマー向けの音声通話・VoIPフリーソフトウェアである。2019年5月時点で、ユーザー数が2億5000万人に達している

テレワークに伴い弊社にも本格的に導入されたDiscordというアプリですが、まだまだビジネス層での知名度は低いと思います。

それもそのはず、もとはゲーマー向けに開発されたビジネスとは無縁のツールでした。

ゲーマー向けに開発されたDiscordですが、世界中のエンジニアがこの利便性に注目し、Reduxを始め、Nuxt.jsやGraphQLなどといった多数のオープンソースコミュニティが Discord で公式サーバー を作り活発に活動しています。

チャットツールとしての基本機能を満たしているだけでなく、動作が非常に軽快なこともあり、ビジネスシーンにおいても使い勝手がよいと注目され始めました。

2018年の時点で、1日に25億行のログを送り、デイリー1900万ユーザがアクセス、同時接続820万ユーザという怪物システムになっています。

そして1番驚愕なのは、このDiscordがたった40人で開発されているという事です。

技術的な観点から話すと

デスクトップクライアントには Electron を、iOS/Android クライアントには React-Native を使い、音声や映像の通信には WebRTC SFU を C++ で開発しているらしいです。
これに加えて、負荷対策として独自に暗号部分を AES-CTR から Salsa20 に切り替えている変態っぷり。

また、React.js Conf 2015でReact Nativeが発表されてすぐにReact Nativeを使用してiOSアプリを作っており、iOSアプリをAndroidに移植するのにたった2日しかかからなかったそうです。

エンジニアとして敬礼したいほどの実力者集団なので、詳しく知りたい方は以下を読んで下さい。

では本題に戻り、弊社がどうやってテレワークを実施しているかを共有していきたいと思います。

出勤スタイルについて

個人技の完全成果主義組織ではそもそも勤務時間が設けられていない場合が多くテレワークでも自由な働き方が出来ると思います。

一方、チームとの連携や事務処理などが発生するような場合では一筋縄にいかないのが現実だと思います。

誰が出社していて対応可能なのかを可視化する必要があります。

なので、僕達の組織ではDiscordを使ってオンライン上に擬似的に出社するようなスタイルにしました。

画像1

このように、Discord上に各ボイスチャンネル(部屋のようなもの)を作り、常に個人の状況に合わせた部屋に移動できるようにしました。

出勤している人は常にどこかのチャンネルにいるので、社員の勤務状況が把握しやすく、用事があれば自分もそのチャンネルに移動すればすぐに会話が出来ます。

また、Discordには各ユーザー毎に役職を振り当てる機能があり、事業部の管理もとても簡単に行なえます。

画像2

このように役職を振り当てることで、事業部毎にユーザーの状況を確認できます。

割り当てた事業部に対してメンション(@ユーザー名で指定すること)をしてメッセージを投げると対象のユーザーにまとめてメッセージを投げることも可能です。(メールのCCのような感じ)

朝会や会議などについて

朝会や会議などの複数人が集合して行うイベントに関しては、各自チャンネルに移動して行うようにしました。

Discordでは1つのチャンネルに接続出来る人数制限は無制限なので余裕ですね。

例えば、プロダクトオーナーが開発者と会話したい時はクリックひとつで開発者のいるボイスチャンネルに入ることが出来るので、現実の部屋を移動して話しかけに行くよりも気軽に会話に参加する事が可能になったと言えるでしょう。

タスク管理について

開発業務において最も大切なタスク管理ですが、弊社ではホワイトボードと付箋を用いてスクラム開発を実施していました。

テレワーク導入に伴い、共有のホワイトボードが無くても、スクラム開発の良さを活かして開発するにはどうしたら良いかを開発者の中で話し合いました。

Jiraなどのツールもありますが、不用意にツールを増やす事には反対なので、使い慣れているGitLabのissues機能を本格的に運用する事にしました。

画像3

(内容にモザイクをかけた為、見づらくなって申し訳ないです…)

GitLabのissues機能にはBoardというものがあり、カンバンのようなスタイルで表示することが出来るため、付箋と同じ感覚で管理することが出来ます。
タスクツールのTrelloに似た雰囲気ですね。

また、Milestoneを1週間に設定することでスプリントを表現しました。
Milestoneを設定するだけではスプリント内のタスクを意識しづらいので、Board内にMilestoneというListを作ることで、プロダクトバックログアイテム(スプリント内におけるタスク)のように使っています。

Git運用に不慣れなエンジニアも必然的にGitと触れ合うようになる為、バージョン管理の質が上がったように感じます。

ペアプロ等の共同作業について

日常の業務の中で共通の画面を見ながら作業をする機会って結構多いと思うんです。

「ここのコードが…」とか
「資料何ページを見て下さい」とか

これらを言語化して言葉だけで説明するのは結構なストレスですが、DiscordにはGoLiveという機能があり、簡単に画面を共有することが出来ます。

画像4

(右下の小さい画面が相手に見えている画面)

このように低負荷で簡単に自分の画面を共有出来るのでペアプロや、共通の書類を見ながらの会議もスムーズなコミュニケーションが可能です。

Discordにおけるセキュリティについて

ちょっと遊び心の多いUIや、ゲーム用に開発されたツール、ということもあり、セキュリティ的に不安要素が多いと思われがちですが、しっかりと設定をする事で、安全に運用することが可能です。

基本的にDiscordで作成したサーバー(Slackでいうワークスペースのようなもの)は世界中に公開されます。

ですが、前述した役職機能を使うことでこの問題を解決できます。

弊社の場合は「社員」 という役職がなければ、メッセージチャンネルもボイスチャンネルも見られない様になっています。

画像5

この役職付与というのは管理者でなければ出来ないようになっているので、サーバーを知られても誰でも入ることは出来ません。

役職ごとの権限はさらに詳細に設定することも可能です。

画像6

また、権限を持っていれば監査ログへのアクセスも可能なので、過去のログもしっかりと管理することが可能です。

このように、少し癖のあるDiscordですが、しっかりと運用方法を理解していればセキュリティ的観点からも怖いものではないと思います。

テレワーク運用のデメリットについて

良い事ばかり書いていても面白くないので、デメリットについても書いていきます。

電気代が倍以上になる
単純に家にいる時間が倍以上になるので、クーラー等を使っていると電気代も上がります。

テレワーク環境が無いと地獄
【相手にストレスを与えない音響工夫】
スピーカーで話すと、テレビや家族の環境音を拾うので、必要に応じてミュートを切り替える事や、単一指方向性マイクの購入などが必要だと思います。

【長時間作業のしやすい机と椅子】
自分に合う机や椅子がないと集中力も続かないし、腰も痛くなるしで最悪です。

【安定したネットワーク】
チャットツールのせいにする人が沢山いますが、音質が悪いや映像が乱れるといった現象の原因は大体ネットワークにあります。
安定したネットワークがないと常時オンライン通話などではフラストレーションが溜まると思います。

運動不足になる
通勤も無くなり、買い物も少なくなるので、日頃から運動する日課のない人は、完全に運動不足になると思います。

仕事スイッチの切り替えが難しい
僕は個人的な活動で普段からリモートコーディングをする機会が多かったので全然平気ですが、環境で仕事のスイッチをON/OFFするタイプの人は、常に家だとパフォーマンスが発揮出来ないと思います。

監視されているような気分になりやすい
僕的には、オフィスの机にいる時も周りから見える位置にいるのでオンラインでも一緒だと思っていますが、他者から常にオンラインなのかが確認されているという事から、センシティブな人はストレスを感じやすいかもしれません。


このようにメリットデメリットがあり、まだまだ模索状態のテレワークですが、普段と違う環境で働くというのは、ある意味新鮮で楽しいです。

正解は無いと思うので、組織・個人にあった働き方を見つける事がテレワーク成功の鍵になるのではないでしょうか。


この記事が気に入ったら、サポートをしてみませんか?気軽にクリエイターを支援できます。

6
Web Developer / CertificationScrumMaster / Vimmer / Movie lover