2013年10月30日水曜日

さらに速く!開発者が語るチャットワークアプリバージョンアップ秘話

  • このエントリーをはてなブックマークに追加


新しくなったチャットワークiPhoneアプリはもうお使いになりましたか?
(バージョンが2.5.3になっていれば最新です、まだの方は今すぐアップデートを!)

今回はアップデートの注目点や今後の動向などを、開発者インタビューとともにお届けしたいと思います



さらにパワーアップしたモバイルアプリチーム


── 新しいメンバーが加わったという事で、改めて自己紹介をお願いします

上野: 技術部モバイルアプリチームリーダーの上野です。
開発はもちろんですが、チーム全体のマネジメントと、開発効率を上げるための仕組み作り、テストの自動化などを担当しました。

川村: 技術部モバイルアプリチームの川村です。
今回のプロジェクトで使うためのAPIの開発など、開発全般を担当しました。

宮下: 技術部モバイルアプリチームの宮下です。
今年の5月に入社したばかりで、今回が初のプロジェクトになります。
フレームワークの整備や設計など、アプリのコアになる部分を担当しました。

藤原: 技術部インフラチームの藤原です。
主に認証関連の開発や、テストアプリ配布・アプリ申請の自動化処理の開発を担当しました。

西口: デザイン部の西口です。
今回初めてモバイルアプリチームに加わり、画面設計やアイコンなどの画像作成を担当しました。



キーワードは高速化と安定化


── 今回のアップデートの注目点は何でしょうか?


上野: 細かな機能追加はありますが、一番は何と言っても「高速化&安定化」です。
前回のプロジェクト「Fujiyama」である程度の安定化ができたので、今回は高速化を特に意識しました。

重い動作を洗い出し、設計も全部見直して改善をしています。
特にコンタクト数やグループチャット数が多い人ほど、今までのアプリとの速さの違いを体感できると思います。

あとは細かい点ですが、ストレスなく操作できるようにUIの改善もおこないました。タスク管理画面等が変わっていますので、ぜひチェックしてみてください。



富士山よりも高く!


── 今回のプロジェクトのコードネームは何でしょうか?


川村: iPhoneアプリのコードネームには毎回山の名前をつけることになっており、前回は日本一高い山「Fujiyama」でした。
そして今回は、さらに高い山を目指して「Robson」(ロブソン)と名付けています。

あまり有名ではないと思うのですが、カナディアンロッキーの中で一番高い山で、富士山よりも数百M高いです。
標高で言うとほんのちょっとだけしか高くないのですが(笑)、実際のアプリはコードを全て見直すなど、大胆な改善をして大きく変わっています。



相反するものを両立させることの難しさ


── 今回のプロジェクトで苦労した点を教えてください


宮下: 今回のアップデートのポイントである「高速化」と「安定化」の両立にはかなり苦労しました。

高速化を目指すとなると、無駄な処理を削っていかに動作を速くするかを考えるのですが、そうなると安定化がおろそかになりがちです。
かといって安定ばかりを考えていると、どうしても処理の量が多くなり動作が重くなってしまいます。

色々試行錯誤しながら、どちらもバランス良く両立させるために改良に改良を加えていきました。
結果的には満足できる出来になったと思います。


・旧バージョン(Fujiyama)と新バージョン(Robson)の比較動画
(コンタクト数5、グループチャット数20のアカウントでの実行例)





デザイナーにやさしい開発ツール


── 開発で困った点はありますか?


西口: 私はチーム内で唯一のデザイナーです。今回はじめてTitanium mobileやGitなどのエンジニア向けのツールを使うことになり、慣れるまでは戸惑いもありました。

開発で一番お世話になったのはTishadowというツールです。
通常はコードを修正した後にビルド作業が必要で、確認するのに時間がかかってしまいます。
Tishadowを使えばブラウザ上で瞬時に修正を反映させることができ、作業効率化という面で本当に助かりました。デザイナーの方はぜひ使ってみてください。



膨大なテストを効率良く実施


── 今回のプロジェクトで工夫した点はありますか?


藤原: チャットワークアプリのテスト項目は膨大な量になります。
それをいかに効率的に実施するかがキーポイントでしたね。
今回はJavaScript用テスティングフレームワークのJamsineを使って、ある程度テストの自動化ができたのが良かったです。

あとは、Fujiyamaの時から導入していますがTestFlightも相変わらず活躍しています。 今回もTestFlightを使って全社員に評価用のアプリを配布し、たくさんのフィードバックをもらって改善に役立てました。

また、作業効率アップのためにはチャットワークと各種ツールの連携も欠かせませんね。Gitのコミット通知はチャットワーク上に自動で飛ぶようにしています。
APIが公開されると皆さんもこういったことができるようになりますので、ご期待ください。



アップデートはまだまだ続く


── 今後の展望を教えてください

上野: まだまだやりたいことは山ほどあります。ビデオ通話機能の組み込みなど、機能面の拡張はもちろん、さらなる高速化・安定化を目指して日々改善をしていきたいと思っています。

UIに関してもまだまだ改善できる所があると思っています。これからGoodpatchさんとタッグを組んで改善していく事になり、とても楽しみにしています。

そして今後のさらなる成長のためにも開発メンバーがもっと必要です。世界に誇れるアプリを作りたい!という方のご応募お待ちしています。
チャットワークiOS/Androidアプリケーションエンジニア採用情報

ダウンロード数10万突破!チャットワークiPhone/iPadアプリのダウンロードはこちら。
チャットワーク - iPhone/iPad版ダウンロード
  • このエントリーをはてなブックマークに追加

チャットワークご存知ですか?

チャットワークは、業務の効率化と会社の成長を目的とした、メール・電話・会議に代わるコミュニケーションツールです。

このブログでは、チャットワークの便利な使い方から、お得なキャンペーンやイベントまで、旬の情報を発信しています。

ChatWorkを試してみる