はじめに
こんにちは!ソウゾウのProduct Managerの@toshikiです。
「メルカリShops [フライング] アドベントカレンダー2022」の9日目を担当します。
この記事では、ソウゾウのProduct Managerとして働く傍らで、チームの開発メンバーの一員として開発業務にも取り組む中で感じるメリットなどをお話できればと思います。
普段していること
普段はProduct Managerとして、メルカリShopsの主にSellerさま向け機能を開発するスクラムチームのProduct Ownerを担っています。プロダクトのWhy/What to doを考えつつ、ソウゾウのProduct ManagerチームのManagerとして全体を見ています。
具体的には、プロダクトロードマップで定義した優先施策の推進、お客さまの声として上がってきた改善・機能要望の取り込み、CS業務用の社内Tool(以降CSTool)の開発・改善や、引いては不正対策関連などなどの幅広いドメインを担当しています。
開発を始めた理由
メルカリShopsは2021年にリリースをしましたが、特にリリース当初は「ちょっとした文言の変更」「ちょっとしたバリデーションの改修」などの細かい改修タスクが山のように積んである状態になっていました。
一方でスクラムチームの状況としては、とにかくまだまだ開発しなければならない機能が山積みな状態で、特に大型の新規機能開発にフォーカスしなければならない状況が続いていました。(CMやキャンペーン前などは一定デッドラインを設けて動かざるを得ない状況も多かったです)
そのため、ちょっとした改善タスクであったとしても中々スプリントに差し込むのが難しい状況も多く、できるだけ急ぎで開発を進めたい重要度の高い施策が大量にある中で、PMとしてはできるだけ差し込みタスクを生みたくないという気持ちに支配されていました。
こうなった時に起こることとして、例えば社内のCS部門のメンバーからの「ここちょっと直して欲しい…」というような依頼を受けたとしても、「ちょっといつできるかわからない待ってくれ」というコミュニケーションを取ることになってしまい、双方にとってストレスが貯まりがちな状態でした。
私自身としては前職時代に多少のエンジニアリング経験があったこともあり、「このくらいの修正であれば、いっそ自分で対応できてしまえれば効率良いけど…」と感じていました。単純に開発が好きという気持ちも残っていたことも大きく、ウズウズしつつも流石にやめといた方が良いかな〜と二の足を踏んでしまっていました。
そんな中の2021年11月某日、当時同じチームだったエンジニアの@napoliさんがこう言い放ったのです。
このくらい自分でやっちゃえば良いんじゃないですか?
by napoli
開発をし始めて
背中を押された私は、「napoliさんがそういうならしゃあないな〜!」と、そこからは水を得た魚のように開発タスクに精を出すようになっていきました。
最初は本当に軽いタスクで、
- CSTool上で、金額表示に「¥」マークをつける
- 注文一覧CSVファイル上から「〒」マークをオミットする
- ガイドテキストの削除
などのシンプルなフロントエンドタスクでした。
この時点でも満足していたのですが、ここから
- 売上・振込履歴画面を新規に実装
- 審査申し込みデータのNormalize処理を追加
- 審査申し込みデータのValidation処理を修正
など、バックエンドタスクや新規画面の実装に手を伸ばし始め、
- GraphQL実装も含めたCSToolの新規画面実装
- 分析用BigQueryへデータ連携のためのDataPipeline修正
- 既存テーブルへの新規カラム&Index追加
といった少し踏み込んだタスクにまで侵食していき、最終的には
- メルカリ便利用時に荷扱情報を登録できる機能をフロントからバックエンドまで全部一人で実装
みたいなもはやどこまでやるんやと言われるような範囲まで取り扱うように。
※Contributors画面のチェックはささやかな楽しみ
開発を始めて良かったこと
【迅速に価値を届けられる】
開発し始めた理由にも書いていた「ちょっとした修正」のような依頼に対しては、早急に自ら対応できるようになり、劇的に改善スピードを上げられました。
また、自分で対応できる範囲が増えていくに従って、お客さまの声からの改善要望などにも迅速に対応できるようになりました。
CSやMerchant組織のメンバー経由でお客さまからの切実な要望が届くことも多々あるのですが、自分で対応できる範囲かつタイミングさえ良ければ翌日・即日に改善のリリースをできることもあります。(そのために、迅速にレビュー・QAしてくれるチームのメンバーにも感謝)
1Sprint程度かかるようなサイズ感のタスクだと、中々どこのSprintに差し込むのかが悩ましくなるのですが、Extra Resourceとして自分を当てることで早急に対応し、(チーム全体としての優先度高い主要タスクへの配分を落とすことなく)Move Fastにお客さまの要望に応えることができることも多く、これはプロダクト観点で明確なメリットだなと思っています。
もちろん、本来的にはスクラムチームとして一定の余剰体力を持たせつつ、バランスを調整しながら新規タスク・改善タスクを進めていけるなど、べき論として見れば理想な形はもっとあると思います。
ただ、そんなことは関係ありません。私がやりたいからやるのです。
【PMとしてのタスクへの好影響】
PMとしてこなすタスクの中でも様々な面でプラスに働いています。自分が開発に直接関わる中で解像度を上げられた部分をベースに、
- タスクの概算見積もりのあたりをつける必要がある際の精度向上
- 仕様検討時に事前に考えておくべき観点の整理
- 開発の進捗状況の把握
など、チーム内での設計・見積もりの解像度も上がるため、実際のリリースターゲットの見込みであったり、各タスクへのアサイン組み立てのイメージがより良く持てるなど、幅広く良い影響を得られています。
【+α】
PM業でいろいろと立て込んでいてストレスに晒されている時でも、夜中に実装をして気持ちをリセットすることで心の平穏を保てるという効果もあります。デトックス作用ですね。
今後の目標
いろいろと自分でできることが増える一方で、それ以上に「理解できていない」ことも浮き彫りになってきます。
また、百戦錬磨なソウゾウのエンジニアメンバーたちがしっかりとコードレビューしてくれ、また皆から様々な知見を吸収できるという最高の福利厚生のもとに成り立っている私の活動ではあります。
PMでありながらこれだけ良い経験ができていることに全力で感謝しつつ、如何にレビュー負荷をかけないような実装ができるか・品質を担保していけるのかなど、目標高く成長できるように考えなければいけないと常々身に染みています。
当初の目標だった「100コミット達成する」は少し前に達成できているので、今々の目標は「新規のマイクロサービスを一つ作る」です。
一方で、小さな改善であっても喜んでいただけるお客さまがたくさんいるということも意識して、どんどん価値を届け続けていけるように頑張っていきたいと思います。(流石にいつか怒られそうなので、本業のPM業に影響を与えない範囲で…)
さいごに
株式会社ソウゾウではメンバーを大募集中です。メルカリShopsの開発やソウゾウに興味を持った方がいればぜひご応募お待ちしています。詳しくは以下のページをご覧ください。
Software Engineer
Software Engineer, Site Reliability
Software Engineer (Internship) – Mercari Group (※新卒採用に応募するにはまずインターンへの参加をお願いしています。)
またカジュアルに話だけ聞いてみたい、といった方も大歓迎です。こちら の申し込みフォームよりぜひご連絡ください!
以上となります。お読みいただきありがとうございました!