テクニカルサポートチームで「お問い合わせ対応」と「開発タスク」を両立するためにやったこと

この記事は[リンクアンドモチベーション Advent Calendar 2023](https://qiita.com/advent-calendar/2023/lmi)の8日目の記事です。

# はじめに
CREエンジニアの[Waka](https://twitter.com/peace_flower087)です！
CREのテクニカルサポートチームでは、
「お問い合わせ対応」と「開発タスク」を並行しながら業務を行っております。

【参照】
[CREのおしごと](https://link-and-motivation.hatenablog.com/entry/2022/02/18/153000)
[CREのおしごと〜エンジニアチーム編〜](https://link-and-motivation.hatenablog.com/entry/2022/11/11/161534)

## 課題
お問い合わせの数の変動によって、開発タスクが進まない状況でした。
チームの中でもプロダクトに関するお問い合わせが多いから仕方がないよね・・・という空気感。
この状況をコントロールできる状態にしたい！と思い、対策を打つことにしました。

## 対策
この記事で、対策の内容ステップを３に分けて、ご紹介します！

# ステップ１：可視化する
お問い合わせ対応（Jira Service Project）と開発タスク（Jira Software Project）と管理が分かれており、それぞれの割合がわからない状態だったため、一目で消費時間とその割合がわかるようにしました。
![Screenshot 2023-12-06 at 16.52.40.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2014106/b0b6a0c5-03bb-1ecd-0d9c-ee176df9b17f.png)



## Jira → Google スプレッドシート
スプレッドシート上に「Jira Service Project」と「Jira Software Project」の両方のデータを収集します。細かく指定する際には、JQLがおすすめです。

```JQL.
project = `PROJECT_CODE_1（お問い合わせ対応）` AND `PROJECT_CODE_2（開発タスク）` AND created >= yyyy-mm-dd AND created <= now() order by created DESC
```

【SCHEDULE】を設定することで、データの自動更新ができるようになります。
![Screenshot 2023-12-05 at 15.23.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2014106/f46c88e4-87d0-d790-b517-6ccf2a0b6593.png)

▼参照
https://support.atlassian.com/ja/jira-work-management/docs/use-jira-cloud-for-sheets/

## Google スプレッドシート → Looker Studio
「データを追加」からスプレッドシートを選択し、簡単に接続することができます！
![Screenshot 2023-12-05 at 16.56.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2014106/8c77656b-a513-6076-48e0-20693af05337.png)

こちらもJiraの【SCHEDULE】と同様に自動で更新可能です。
![Screenshot 2023-12-05 at 16.59.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2014106/73afa9d5-59de-bd62-cb17-addd885e1904.png)

## 可視化ツール
お問い合わせ対応と開発タスクの割合が個人別とチーム全体でわかるようになりました🥳
![Screenshot 2023-12-06 at 16.52.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2014106/f7db4233-4c3e-2a75-e4df-edad19de97c9.png)


# ステップ２：チームで優先順位を明確にする
予測できないお問い合わせ対応と、ある程度見積もりのできる開発タスクの２種類があるため、並行タスクが多くなりがちです。タスクを対応する人数は限られているため、いかに直列タスクにするかが重要です。

そのため、タスクの優先順位をチーム全員で納得感を持って取り組めるように、
タスクを一覧化し、毎朝全員で確認しています。

＜優先順位（例）＞
1. お問い合わせ対応
    a. 障害情報の確認
    b. 短納期で依頼されているお問い合わせ
    c. 仕様の確認
    ・・・
2. 開発タスク
    a. バグ改修
    b. 機能のUX改善
    c. 社内の工数削減のための改善
    ・・・

図にすると、こんな感じで直列で繋げることができるように、アサインを決めています。
![Screenshot 2023-12-06 at 16.53.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2014106/d42e3b8b-1182-8b71-6210-f2540e189a38.png)


# ステップ３：チームの週目標を定めて、PDCAを回す
週次で下記の指標を確認し、スプリント目標を立てています。
- アサイン割合
- チケットごとの見積もりと実際の時間
![Screenshot 2023-12-05 at 17.21.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2014106/f8a19b4f-d191-669c-9391-76da16b1353f.png)


今までに上がったチームの目標としては、下記のようなものがありました。

:::note
- Aさんにタスクがよっているので、5人で20%ずつお問い合わせ対応のチケットを割り振ろう！
- Dさんが開発タスクに集中できるように、Aさん、Bさん、Cさんで90%のお問い合わせ対応をやりきろう！
- Aさんが来週有給取得予定なので、Bさん、Cさん、Dさん、Eさんの4人で25%ずつやろう！
- Eさんがお問い合わせ対応が初めてなので、まずは全体の25%を目指そう！
:::

一人一人の経験やスキルに応じて、チームの目標も柔軟に変えています。

# 終わりに
:::note alert
なぜか開発タスクをする時間がない・・・
並行数が多すぎて、やった感がない・・・
週の目標が立てられない・・・
:::

など、マイナスな声が多かったですが、可視化することで、

:::note 
Aさん：開発タスクに集中したいので、アサインを20%にしてもらいたいです。
Bさん：開発タスクが終わったので、50%アサインで大丈夫です！
:::

など、建設的な会話が増えました！

今後も、実際の時間をしっかりと計測し続けながら、チームでの最適解を話し合っていきたいです。

参考になったら幸いです☺️