2024.10.01
自社の社内情報を未来の“ゴミ”にしないための備え 「情報量が多すぎる」時代がもたらす課題とは?
成功したチーム、失敗したチーム(全1記事)
提供:株式会社CyberZ
リンクをコピー
記事をブックマーク
門田矩明氏(以下、門田):みなさん、こんばんは。F.O.X Meetupの主催の門田と申します。
今日はF.O.X Meetupというイベントの3回目になるんですが、場所はヒカラボさんにお借りして、共催というかたちで開催させていただいています。
僕からは「成功したチーム、失敗したチーム」というテーマで話をさせていただきます。私の名前なんですが、門田矩明と申します。今F.O.Xというサービスのサービスマネージャーをしてまして。
エンジニアチームのマネージャーや、エンジニアじゃない人たちのマネージャーだったり、採用をやったり広報をやったり、基本的に組織のなんでも屋をやってます。
F.O.Xについて。F.O.Xを聞いたことがある、ご存知の方ってどれくらいいらっしゃいますか?
(会場挙手)
ありがとうございます。ありがたいことに、ご存知の方も多いので、簡単にご説明します。F.O.Xはスマホアプリの広告効果の計測ツールです。
GoogleアナリティクスやFirebase的なやつだと思ってもらえればだいたい合ってるかなと思います。
私のキャリアについてですが、もともとSIerでエンジニアをやってました。そして、2012年くらいにサイバーエージェントに転職しまして、amebaっていう事業部で新規サービスの立ち上げに関わっていました。そこから4年ほど前にCyberZという子会社に出向になり、そこからはずっとF.O.Xに携わっています。
今回はサイバーエージェントに転職してからとCyberZに異動してからの間で、スタートアップに携わることが多かったんですが、その中から成功したチームと失敗したチームの事例を3つくらい挙げてお話させていただきます。
1つ目なんですが、JK、JCってわかりますか?(笑)。女子高生と女子中学生なんですが、JK、JC向けのSNSを作っていたときの話です。
どんなサービスだったかと言うと、簡単に言うとJKとJC向けのスマホSNSサービスでした。エンジニアチームの構成なんですが、サーバーサイドが3人くらい、フロントエンジニアが1人くらい、AndroidとiOSがそれぞれ1人ずつ、みたいな感じです。
サービス立ち上げ当初は2週間ごとにユーザー投稿型のイベントが開催されていまして、基本的にいかなるものよりも優先度が高いという状況でした。イメージとしては、ゲームのイベントのようなものです。当時、サービスにおいて1番重要なのはイベントという感じでした。
イベント1回の設計や実装、テストはだいたい3週間くらいかかるようなものになっていました。とくに2週間に1回やっているので、やっている最中にも、次のイベントの設計、実装が同時並行で走るという状態でした。
このときのチームの課題としては、サービスが立ち上がった直後ということもあり、イベントの開発と同時にサービスの機能開発もしなければいけませんでした。
どうやって対応したかなんですが、開発ラインを3つ用意して、サーバーサイドが3人だったので、1人ずつ分けました。1人は直近のイベントの設計と開発をやって、2人目はその次のイベントの設計と開発をやる。3人目はそれ以外の機能追加、普通の機能追加の開発をする、というかたちで分けました。
1人がずっとイベントを開発し続けるというわけじゃなくて、イベントの開発が終わればその次は機能追加の開発に移るみたいな感じで。開発レーンみたいな感じで3つくらいあって、それを順番に2週間ずつ回すようなイメージです。
これが実際どうだったか? 結論としては一応成功しました。ここでの成功というのは、イベントと機能追加のバランスがうまく取れたということです。
今だから言えることですが、イベント担当ってけっこう気疲れするというか。プロデューサーとかディレクターが、リリース3日前くらいに「こんなことも追加でやりたいんだけど」とか、イベント終了3日前くらいに「今回すごい盛り上がってるからフィナーレにこういう盛り上げを入れたい」みたいなとんでもないことを言ってくることがあります(笑)。
当然イベント担当は追い込みで気疲れをします。終わったら休みを取るというのもちょっと安直かなと思ったので、余裕のある開発ラインに移ってやりたいことやってリフレッシュか、ちょっと休んでリフレッシュするとか、どちらもできるようにしてみました。
その結果、チーム全体と個人のバランスを取りやすくなったので、一応成功かなと思っています。
続いて、2つ目のお話に移ります。CyberZに移ってからのアドテクプロダクトの話です。実は既にクローズしているサービスなので、今はないんですが、新規の広告の配信サービスです。立ち上げの開発チームは、エンジニアが4人、プロジェクトリーダーが別にいるような構成です。
すこし説明が難しいのでざっくりになってしまいますが、広告の配信システムと広告をトラッキングするシステムと管理画面、集計をするバッチシステムが存在してました。
1システム毎のサイズが大きいのと、フルスクラッチで全部開発することになっていたので、開発タスクがかなり膨大になっていました。
このチームの課題は、4システムあって、その4システムに膨大なタスクがあるということでした。この時どのように対処したかと言うと、システムごとに、トラッキングや広告配信、バッチなど、1システムずつに1人をアサインして専任担当というかたちでアサインしました。
プロジェクトリーダーは基本設計とシステム毎のタスクの分割が仕事の中心です。この開発機能はこのシステムだとこうで、このシステムだとこうで、みたいなタスク分割をする。システムごと、要はひとりひとりのタスク管理はプロジェクトリーダーがやることになっていました。
これによって専任担当が余計なことを考えずに担当のシステムだけに専念できる環境を整備する、ということでやっていました。
これは成功か、失敗か? 1つ目の例に近いですし、うまくいきそうな感じがするんですが、数ヶ月後に問題が発生しました。
バッチシステムは最初の開発が少なくて、後から要件がたくさん出てくるとか。逆に集計や広告配信のほうにタスクが偏って、後ろにいけばいくほどどんどん空きが出るという偏りが発生していました。
当然空いている人にタスクを回したいところなんですが、基本的に専任担当ということでタスクを分けてしまったので、自分が携わっていない部分のキャッチアップがぜんぜんできていませんでした。その結果、自分の領域外はぜんぜんカバーできないという問題が発生しました。
そんな状況なので慢性的にタスクの偏りが出て、消化できないタスクがかなり発生していたので、リリースの遅れが発生してしまいます。
なんとかリリースに至った後、運用が始まると当然トラブルが起きたり、バグが発生したりするわけなんですが、その運用対応も専任担当になってしまっているので対応ができないという問題も発生してしまいました。
一応、ディレクターを入れて、専任制を廃止してみんなでワークをシェアしてカバーしようと試みたんですが、解決するまでにかなり時間がかかってしまっています。
3つ目なんですが、ソーシャルマッチングサービスの話です。出会い系じゃなくてマッチングサービスです(笑)。サーバーサイド3人とWebフロント1人、スマホのアプリのエンジニアがAndroidとiOSで1人ずつという構成ですね。
これは相当古い話でして、2012年1月くらいの話です。6年前というのはiPhone4SとかXperia arcの時代でした(笑)。Galaxyで言うとのS2やS3がメインだった頃ですね。スマホに関する技術情報がほとんど世の中に出てないような時代の話です。
この頃の経験がある人とは懇親会でいいお酒が飲めると思うんですけど、当時のスマホのWebブラウザは機種依存だらけでした。今はChromeブラウザが標準搭載になって挙動に差異も少ないですが、当時は各社基本的に標準ブラウザに手を加えるのが主流になってまして、機種依存バグが出まくっている状態でした。当然AndroidやiOSアプリについても情報がないので試行錯誤を強いられてました。
加えて、一番難易度が高かったのがアプリ内課金、特に月額課金でした。AndroidとiOSで月額課金が始まった直後ぐらいでして、「対応したい!」という話が持ち上がり、やらなきゃいけない流れになりました。
この時のチームの課題なんですが、技術調査と開発の両立です。実際にどう対処したかなんですが、専門領域に関係なく、サーバーサイド・アプリ・Webなど複数名で技術調査をするようにしました。
調査メンバーはだいたい3人から4人くらいでやることが多かったんですが、サーバーやWebまわり、DBなどの設計も調査メンバー全員で設計するようにしました。
あと、専門領域は問わず、お互いに書いたコードのレビューも行いました。当然「iOSのコードは読めない」ということはあるんですが、ドキュメント通り実装されているかどうかであったり、「ここはなんでこういうふうに実装してるの?」というのはある程度わかるので、調査メンバーで専門領域に関係なくコードレビューをしていました。つまり、調査から開発までを複数名で取り組むということを徹底していました。
これは当然なんですが成功しまして、予定通りリリースできました。
リリースの前のアプリ内課金のテストには1ヶ月ほどかかってしまいました。やってるとAppleとかのドキュメントに書いていない出来事が平気で起きて大変でした。
トラブルが発生した場合も調査メンバーが3、4人いるので多角的に見れるようになりました。1人だと見方が固定化してしまうのですが、複数人の場合、仮説を立てやすいというか。仮説のバリエーションが出やすいので、解決までが早く、これは成功かなと思っています。
まとめです。言い切ってしまっていますが「チームワーク」です。これすごく当たり前の話だと思ってます。スタートアップで成功するチームというか、少人数で成功するチームと言い換えてもいいかもしれません。
ドメイン知識やビジネス知識、技術知識など、なんでもですが、知識をシェアできていることが重要だと思っています。
そのうえで、自分の専門領域の部分を超えた仕事ができていることが重要かなと思ってます。
たぶん世の中の人はこれをチームワークって呼ぶと思います。ですので、当たり前ですが、チームワークが大事かなと思います。
今日の話には、実は元ネタがあります。今日、会場にも来ている遠藤圭一さんというAndroid、iOSのエンジニアなんですが、彼がちょうど2年くらい前に、社内の勉強会で「成功したチームと成功しなかったチーム」発表をしました。
これは社内勉強会なんですが、スライドが公開されているので、僕のスライドと合わせて見るといいかなと思います。
遠藤さんのスライドは僕よりもさらにエモい内容になっているので、ぜひご覧になってください。以上になります。ありがとうございました。
(会場拍手)
株式会社CyberZ
2024.10.29
5〜10万円の低単価案件の受注をやめたら労働生産性が劇的に向上 相見積もり案件には提案書を出さないことで見えた“意外な効果”
2024.10.24
パワポ資料の「手戻り」が多すぎる問題の解消法 資料作成のプロが語る、修正の無限ループから抜け出す4つのコツ
2024.10.28
スキル重視の採用を続けた結果、早期離職が増え社員が1人に… 下半期の退職者ゼロを達成した「関係の質」向上の取り組み
2024.10.22
気づかぬうちに評価を下げる「ダメな口癖」3選 デキる人はやっている、上司の指摘に対する上手な返し方
2024.10.24
リスクを取らない人が多い日本は、むしろ稼ぐチャンス? 日本のGDP4位転落の今、個人に必要なマインドとは
2024.10.23
「初任給40万円時代」が、比較的早いうちにやってくる? これから淘汰される会社・生き残る会社の分かれ目
2024.10.23
「どうしてもあなたから買いたい」と言われる営業になるには 『無敗営業』著者が教える、納得感を高める商談の進め方
2024.10.28
“力を抜くこと”がリーダーにとって重要な理由 「人間の達人」タモリさんから学んだ自然体の大切さ
2024.10.29
「テスラの何がすごいのか」がわからない学生たち 起業率2年連続日本一の大学で「Appleのフレームワーク」を教えるわけ
2024.10.30
職場にいる「困った部下」への対処法 上司・部下間で生まれる“常識のズレ”を解消するには