2024.12.19
システムの穴を運用でカバーしようとしてミス多発… バグが大量発生、決算が合わない状態から業務効率化を実現するまで
アプリを最速(弊社比)でリリースした話(全1記事)
リンクをコピー
記事をブックマーク
三津山雅規氏(以下、三津山):一番目に発表したnorioさんからアプリのアップデート版を今すぐにリリースしていいと言われたので、ちょっとこの場でリリースします。
(会場笑)
三津山:今、リリースしました。どうもです(笑)。
司会者:おめでとうございます!
(会場拍手)
三津山:弊社で昨日PawooのAndroid版アプリをリリースしたのですが、その話をしたいと思います。
僕は三津山といいます。ニックネームはchocomelonといいます。ふだんはpixivアプリの開発リーダーをしていて、Androidメインで書いていますが、iOSだったりAPIもけっこうやっています。pixivには2013年に入社しました。
Pawooの話ですが、4月14日にリリースして、その10日後にアプリをリリースしました。Androidアプリだけですが、もうダウンロードしていただけましたか? Androidをお持ちの方は、ぜひお願いします!
ここで乾杯! イエーイ!
参加者:イエーイ!
三津山:このアプリについて「ReactNativeで作ってる?」とか「WebViewで出してるんじゃない?」といったお話もあるかもしれませんが、ちゃんとネイティブで作りました。
アプリの構成は、MVPっぽいアーキテクチャで、RetrofitやRxAndroid、Data Bindingを使ってやっています。
まあそんなことはどうでもよくて、とにかくスピード重視で作っていますよと。
対応しているAndroidのバージョンは、pixivのアプリが、この間Ice Cream Sandwichって4.0.3を切ったんですが、このアプリは5からです。Lollipopからですといった強い対応をしています(笑)。
できることは、基本的にはもう全部やっています。どうして基本的に全部かというと、そもそも競合クライアントがiOS・Androidともにあり、そのなかでうちのを使ってもらうとなると、やはりメインの機能を絞るのは難しいかなと。基本的にはもう「なるはやで実装を」といった感じでやりました。
このアプリはだいたい6日で作ったのですが、本日はその6日間をどんな感じで進行したのかということをお話します。
初日は、基本的に1人でやっていました。Androidに関しては僕1人です。午前中に「アプリやらない?」みたいな話があって、ログインから作って、とりあえずホームのタイムラインが1日目に表示できたらいいなという感じでやっていました。
2日目になり、これを1週間ぐらいで作るのはちょっときついなと思い始めました。しかし、とにかく人を入れたいのですが、作業を同時並行で行うのはかなり難しい状態でした。
とりあえず人を入れられる体制を作ろうと思って、まずドロワー、導線や簡単なメニューなどを増やしたり、あるいはパブメニューを作ったり、人が入っても単体でページを作れるようにしていました。
このローカルタイムライン、連合TLというのは、基本的タイムライン構造はだいたい一緒なので、そのあたりのベースとなる構造を作ったり、画像表示周りや基本的なところができるようにして、3日目以降で人が入れるようにしました。
2日目が終わった段階でこんな感じでした。ログインはWebViewログインができて、アプリに戻ってきて、(スライドを指して)タイムラインがこれです。この一連を2日間でやった感じですね。
3日目からは1人増やしました。ここに関しては、インスタンスがPawoo限定になっていたので、それをいろんなクライアント、mstdn.jpやほかのところでもできるようにしたのがアクション周りです。僕らが普通に使っていて楽しそうなことを、まず始めに実験したかったので、そこからやっていこうと。
それをどんどん社内に中途半端な状態でも配布していって、とりあえず使ってもらうことにしました。バグはもちろん「こうしたほうがいいんじゃない?」といった意見も含めて、フィードバックのために、早めに配布の準備をしました。それがDeployGateの整備っていう話ですね。
その上で、4日目もいきなり増やしました。プッシュ通知や、ほかにもできる作業と人を増やして、もういろんな細かいブラッシュアップも含めてできたので、さらに人を増やしてやってみました。
実際4日目には4名でやっていました。こんな感じです。タイムラインできれいに表示できて、ユーザーページも見ることができて、アクションもできる。一通りザックリ雑に揃ったかなと。
5日目に関しては、ほかのメインの体験とはちょっと違いましたね。通知一覧やFav一覧、翻訳リソース、トゥートがいろいろできたりといったことをやっていました。
6日目は、本当にバグ修正というか、ブラッシュアップの時間を取っていました。あとは、プレスリリースの準備として文言を確定させたりみたいなことをやっていました。
で、最終的にリリースされました。
弊社のアプリでも4名というのは、社内でも相当リソースを割いてやっています。iOS・Androidも1名1名多かったり、pixivのアプリでもAPI含めてAndroid・iOSで2名ずつといったように、Androidの人がAPIをやっているということが多かったので、このたびはハッカソン的なノリで一気に作ったという感じですね。
やはり重要だったのは、1回に全部4人を投入するというよりは、適切な時に適切な人数・人材を投入できたことがよかったと思います。多少バグが残ったり、足りない機能はあったんですけど、それなりに使ってもらえるクオリティにはなったかなと。
また、このPawooについてや、mastodon自体のドメインへの理解みたいなものがけっこうみんなが持っていて、「こうしたほうがいいんじゃない?」といった意見がジョインしたメンバーからけっこう出ていたのはすごくよかったと思います。結果的にはブラッシュアップにもつながったかなと。アプリとしてどうすべきか、どうしたほうがいいか、どうすれば楽しいかなど、そうした話をみんなでできました。
でも、やっぱり正直6日間もやると、ハッカソンをずっとやっているみたいな感じだったので、相当きついです(笑)。
(会場笑)
これに関しては、みんなも最後のほうは消耗していましたね。僕もさっきまでというか、もう今もずっと作っているという感じです。
これからは複数のインスタンスの対応。Googleなどはアカウント切替が簡単にできますので、やっぱりそこは必須かなと。
あとは、今バグ取りをすごいやっていますし、まだ足りない機能もたくさんあります。今さっき出したのはアカウント検索とタグ検索みたいなやつですね。このあたりはフィードバックもどんどん来てるので、その対応をしていきたいと思っています。
現状のアプリに関しては、ほかのmastodonクライアントとそこまで変わらないか、もしくはまだ劣っている部分もあると思います。しかし、Pawoo独自の機能でいうと、昨日出した「メディアタイムライン」というPawooの画像だけが出てくるタイムラインがあるんですけど、そちらもAndroid版で採用して昨日の深夜に出しています。
このように、Pawoo独自の機能という部分に追従してくるのが、僕らのクライアントとしてはPawooが使いやすい、だけどほかのところもけっこうできるよといった感じで結果的にはPawooにも認知してもらったり、使ってもらえたらという意図でやっています。
最後に、スタッフ募集中ですと。ぜひよろしくお願いします。ありがとうございました。
(会場拍手)
司会者:ありがとうございました。質問を2つほど受けられそうですが、どなたかいらっしゃいますか?
質問者1:公式のPawooのプッシュ通知についてお願いします。僕の知識がないだけかもしれないんですけど、基本mastodonってプッシュサーバの仕組みをどうしていたのかなと思いまして。どうやって実装しているのかなというのと。
もう1個は、複数インスタンスのプッシュ通知の対応はされるのでしょうか。もしやるとしたら、どういったかたちで実装される予定なのかお聞きしたいです。
三津山:まず、通知に関しては若干バグっておりまして。さきほどのリリース文言にも「通知バグってるからちょっと待ってね」と書いてあるんですけど(笑)。
(会場笑)
もう言い訳のように書いてあるんですけど。以降の修正で通知のバグを……はい、何度も来ちゃうみたいなんですけど。基本的には、JobSchedulerというものでやっています。Androidの5からサポートしているものです。
Androidの4から対応したいということであれば、Firebaseのほうで、4.0……まあ4.0以降どころかもっと前から使えるのですが、バックポートしたものがありますので、それを使ってもらえれば。
ちょっと頻度は言いづらいんですけど、5分に1回ほどバックグラウンドサービスでフェッチしてきているので、それで差分があった場合はプッシュ通知を送っています。今はその処理にバグがありますので、明日修正してリリースするという段階ですね。
mastodon以外のものという話になると、ちょっとこれはユーザー的に……さっき言った、結局サービスで動かしおり、そのインスタンスの通知API一覧を叩いているだけなので、負荷的にもユーザーのバッテリー的にもよろしくありません。だから、選択しているアカウントみたいなものがある程度無難なのかなと思っています。
プッシュサーバをうちで用意するみたいなのはあるんですけど、ちょっと時間がかかり過ぎちゃうというので、スピード感とのトレードオフで、これを選択しているという感じです。
質問者1:ありがとうございます。
司会者:それでは、chocomelonさん、ありがとうございました。
三津山:ありがとうございました。
(会場拍手)
2024.12.12
会議で発言しやすくなる「心理的安全性」を高めるには ファシリテーションがうまい人の3つの条件
2024.12.19
12万通りの「資格の組み合わせ」の中で厳選された60の項目 532の資格を持つ林雄次氏の新刊『資格のかけ算』の見所
2024.12.16
32歳で成績最下位から1年でトップ営業になれた理由 売るテクニックよりも大事な「あり方」
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
2024.12.13
ファシリテーターは「しゃべらないほうがいい」理由 入山章栄氏が語る、心理的安全性の高い場を作るポイント
PR | 2024.12.20
モンスター化したExcelが、ある日突然崩壊 昭和のガス工事会社を生まれ変わらせた、起死回生のノーコード活用術
2024.12.18
「社長以外みんな儲かる給与設計」にした理由 経営者たちが語る、優秀な人材集め・会社を発展させるためのヒント
2024.12.12
今までとこれからで、エンジニアに求められる「スキル」の違い AI時代のエンジニアの未来と生存戦略のカギとは
PR | 2024.11.26
なぜ電話営業はなくならない?その要因は「属人化」 通話内容をデータ化するZoomのクラウドサービス活用術
Climbers Startup JAPAN EXPO 2024 - 秋 -
2024.11.20 - 2024.11.21
『主体的なキャリア形成』を考える~資格のかけ算について〜
2024.12.07 - 2024.12.07
Startup CTO of the year 2024
2024.11.19 - 2024.11.19
社員の力を引き出す経営戦略〜ひとり一人が自ら成長する組織づくり〜
2024.11.20 - 2024.11.20
「確率思考」で未来を見通す 事業を成功に導く意思決定 ~エビデンス・ベースド・マーケティング思考の調査分析で事業に有効な予測手法とは~
2024.11.05 - 2024.11.05