Linkers Tech Blog

リンカーズ株式会社の技術ブログです。

開発チームにスクラムを導入した話

はじめに

リンカーズ株式会社エンジニアの鈴木です。2018年6月からリンカーズで勤務しております。今回は当プロジェクトのタスク管理について、自分が取り組んできたことを紹介します。

Linkers for Bank について

私は入社から一貫して「Linkers for Bank」システムチームに所属しています。これは銀行をターゲットとしたビジネスマッチング業務支援システムで、現在とある地方銀行において導入・運用しています。「金融機関システム」というとレガシーなイメージがありますが、我々はこうした背景ながらクラウドを活用したモダンな開発体制を実現しています。

もくじ

最初の状態

自分の入社当初、開発タスクはGitLabのIssueと「タスク一覧」と名付けられたGoogleスプレッドシートで管理されていました。エンジニアの1日の流れは大体こんな感じでした。

  • 朝会(毎日実施)、Issueまたはスプレッドシートから適当にタスクを選んで宣言
  • スプレッドシートからタスクを選んだ場合はIssueを作成、自分の担当にする
  • 課題を感じたらおのおのIssueに書く
  • 顧客(導入中の地方銀行)から電話が来たらビジネスサイドの人が「タスク一覧」に追加する
  • 定時まで作業したらチャットツールに日報を書いて業務終了

課題だった事

淡々と語りましたがエンジニア的にはなかなかつらい状態でした。タスクの優先度がはっきりしないので着手していいか自信が持てず、期限も特に指示がなかったのでやりかけのタスクがあった時は不安を残して帰っていました。ただスタートして間もないプロジェクトだったので、あまりきっちりタスク管理しても仕方なかったという側面はあります。

私自身は「開発現場は全てスクラムであるべき」みたいなスクラム原理主義者ではないんですが、仕事するのにもう少し安心感が欲しいとは当初から思っていました。

アナログの時代

過渡期

上司やメンバーの説得の結果スクラム導入検討会議の開催にこぎつけ、チーム全員で以下の運用について合意しました。

  • スプリント期間は基本2週間(10営業日)
  • スプリント初日に計画会議を実施
  • 最終日にふりかえりを実施
  • 計画会議、ふりかえりはエンジニアとビジネスサイド共同で実施
  • 毎日朝会(デイリースクラム)を実施(これは現行通り)
  • ホワイトボードとふせんでタスク管理

これらを踏まえ、2018年8月頃からスクラムを始めました。

意識を定着させる

話によると以前もスクラム導入の機運はあったものの、次第にうやむやになり自然消滅したという経緯があったらしいです。今回は運用を維持するため、(表立っては言いませんでしたが)実質的にスクラムマスターとして色々注意を払いました。

  • 計画会議・ふりかえりを 強い意志で実施
  • タスクカード(ふせん)の作成・移動を がんばる
  • ボードのレイアウトを随時工夫

結局は意思の力です。幸いチームのみなさん協力的だったので、大きな混乱はなくスクラムの流れを維持できました。

デジタルの時代

手書き運用は当初どうにかなっていましたが割とすぐ限界になったので、比較的早い段階からツールへの移行を検討し始めました。社内の他のチームでの使用実績があったことやセキュリティポリシーを考慮してJIRAを採用し、2018年10月頃に切り替えました。

JIRA移行にあたっての追加ルール

  • タスクの解消にかかった時間を営業日単位で記録
  • スプリント中に実施しないタスクは2枚目のボードに記録

「2枚目のボード」に関しては、運用していくうちに何もかもスプリントボードに書かれてしまい、どれをスプリント中に解決すべきか分かりづらくなったので途中からできたルールです。今ではかなり整理されています。

導入して変わったこと

タスクの見える化

当初の「仕事が途中で帰ると不安」という感覚は早々に解消しました。またビジネスサイドの方からも「どれが終わったのかよく把握できるようになった」ようです。時間のかかるスプリント計画やふりかえりも、必要性をメンバー全員が認識しているので協力いただいています。

改善への意識

ふりかえりで改善提案の場ができたことで活発な意見が出てくるようになりました。JIRAへの移行もふりかえりで出された要望が実現した形です。

その他、実際に取り入れた主な提案

  • 夕会の実施…現状について報告・相談の場を設け気持ちよく帰れる
  • レビューを独立したタスクとして運用
  • テストの高速化・高品質化(ランダムエラーの是正)
  • 環境構築の効率化
  • 席替え
  • ボードレイアウトの改善
  • コード整理・リファクタリング

特にテスト(feature spec)の品質に関しては大きく向上しました。この取り組みについてはまた機会があれば詳しく書きたいと思います。

時間管理

タスクにかかった時間を記録するルールを設けたことでJIRAの「レポート」機能により、以下のようなチャートを自動生成できます。これは手書きにはないJIRAの強みです。

f:id:ryota_suzuki_linkers:20190218163008p:plain
Burn up chart

途中で停滞してしまっていますが多分どうにかなっています。チームリーダーによると労務管理的な意味でも助かっているそうです(私はあまり関わっていませんが)。

今後の課題

差し込みタスクの扱い

スプリント中に発生する差し込みタスクをどう扱うか悩ましいところではあります。現状他のタスクがなんとなく後回しになっているので、もう少しルールを決めたいところです。似たような存在に「コードレビュー」というものもあり、これはこれでどうにかすべきと考えています。

計画会議の進め方

スプリント計画会議には毎回2時間ほど時間を確保していますが、それでもタスクの見積もりが間に合わず計画しきれないという課題があります。単に時間が足りないのか、仕切りをもっとうまくすべきか、今後仕切り方も頑張らないといけないようです。

We're hiring!

リンカーズにはメンバーの意見を大切にする習慣があります。私みたいな仕切りたがりは入社1年目から色々仕切っています。しかしまだまだ課題もあります。即活躍したい方、お待ちしております。

採用情報|オープンイノベーションはリンカーズ。マッチングで世界を変える。