Eight iOS/Android開発の裏側

37
> Eight iOS/Android開発の裏側 2015.03.26

Transcript of Eight iOS/Android開発の裏側

> Eight iOS/Android開発の裏側

2015.03.26

Copyright © Sansan, Inc. All rights reserved.

>はじめに

1

Copyright © Sansan, Inc. All rights reserved.

> About Me

- Name:桑田 健太

- twitter:@gazyu

- facebook:kenta.kuwata

- Eight端末チームのリーダー&Android主開発

- Eightチームには2012/04にIn

- 趣味で3DプリンタやったりUnity触ったりOculus触ったり

2

Copyright © Sansan, Inc. All rights reserved.

> アジェンダ

- 僕らのサービスについて

- Eightの開発体制

- 実際の開発の流れ

- まとめ

3

Copyright © Sansan, Inc. All rights reserved.

> Eight

4

5

Copyright © Sansan, Inc. All rights reserved.

> Eightとは?

名刺管理ベースのSNS

2012/2/28リリース

6

Copyright © Sansan, Inc. All rights reserved.

Copyright © Sansan, Inc. All rights reserved.

1)ためる:

データ化

•名刺の山とおさらば!

•スキャン計画で支援

2)使う:

すべての名刺を

持ち歩く

•出先で地図を

•急ぎの連絡も

3)応用

•異動情報が

出会いのきっかけに

•“企業のニュース”で

商談をスムーズに

•ダウンロードして年賀状、

DM送付

4)その先の世界

•ビジネスインフラ

•新たな人との出会い

> Eightが目指す世界

「名刺をビジネスの”つながり”に変える」をコンセプトにした無料名刺管理アプリです。

Copyright © Sansan, Inc. All rights reserved. 9

> 2014年Google Playベストアプリ

Copyright © Sansan, Inc. All rights reserved. 10

> Eightの歴史

PhoneGapベースのハイブリットアプリ

ネイティブアプリガラケーブラウザアプリ

Copyright © Sansan, Inc. All rights reserved.

> Eightプレベータリリース

- 2013年8月ごろまで

- 社内リリース

- 端末アプリは存在しない

11

Copyright © Sansan, Inc. All rights reserved.

> Eightリリース

- 2012/2/28リリース

- 当初はiOSのみのリリース

- アプリの実装はPhoneGapベースのマルチプラットフォーム

12

Copyright © Sansan, Inc. All rights reserved.

> Eightリニューリリース

- 2013/6/23リリース

- iOS/Android同時リリース

- 完全ネイティブアプリとしてフルリベース

- 現在のベース

13

Copyright © Sansan, Inc. All rights reserved.

>開発について

14

Copyright © Sansan, Inc. All rights reserved.

> Eightの開発体制

- Eightメンバー

プロダクトオーナー

プロダクトマネージャー

モバイルアプリ開発チーム(3)

Webアプリ開発チーム(8) 12名→開発チーム

インフラ

デザインチーム(2)

企画

データアナリスト 6名→フロントチーム

サポート

マーケティング

15

Copyright © Sansan, Inc. All rights reserved.

> 開発の種類

プロダクト開発

技術開発

16

Copyright © Sansan, Inc. All rights reserved.

> プロダクト開発

- プロダクトを進めていくための開発

- グロースハック

- マーケティング

- サポート

- バグ対応、etc….

- フロントチームキックが多い

- サイクルは短め

- 効果がわかりやすい

17

Copyright © Sansan, Inc. All rights reserved.

> 技術開発

- アプリを進めていくための開発

- 新技術の検証/導入

- 新しいプラットフォームの対応

- 基本開発チームキック

- サイクルは長い

- 効果はわからない・・・・

18

Copyright © Sansan, Inc. All rights reserved.

> プロダクト開発の流れ

19

フィードバックミーティング 仕様策定ミーティング

分析

効果測定実装・公開

企画・立案Plan

DoCheck

Act

Copyright © Sansan, Inc. All rights reserved.

> 企画・開発管理

20

管理はPivotaltracker

Copyright © Sansan, Inc. All rights reserved.

> 仕様策定

- 開発も仕様策定に参加する

- パワーポイントでの仕様書の作成

- 理由

> 作りやすい、手軽感

> フロントとのやりとりのしやすさ

> ファイルの残しやすさ

- 課題

> バージョン管理、diff

> 共有

21

Copyright © Sansan, Inc. All rights reserved.

> 仕様策定

- Flintoによるデザイン作成

- 理由

> デザイナさんの使いやすさ

> 作る前にすぐわかる

> 修正が簡単

- 課題

> バージョン管理

> 実機との最終的な感覚の違い

22

Copyright © Sansan, Inc. All rights reserved.

> 開発中課題管理

- 基本的にわからないこと不明なことはすぐ質問

- GoogleDocsでのスプレッドシートベース

- 理由

> いろんな人が簡単にすぐ

> どこでも見れる

23

Copyright © Sansan, Inc. All rights reserved.

> 効果測定

- 端末チームではFlurryと独自ロギングシステム

- Flurryは手軽さからの採用

- Flurryで全体的なユーザー動向を、独自ロギングシステムで

Webアプリ側も含めた細かいユーザー動向を

- 独自ロギングはAmazon Redshiftを裏側で使用

- 課題として汎用性とテストしやすさ

24

Copyright © Sansan, Inc. All rights reserved.

> フィードバックミーティング

- 企画に関係するメンバーが全て参加する

- マーケティングが解析した結果を全員に共有

- 得られた知見は企画外のメンバー含めた全チームメンバーに

共有する

25

Copyright © Sansan, Inc. All rights reserved.

> 開発のイテレーション

- モバイル開発

- サイクル:2週間から1ヶ月

- 振り返り:2週間毎

- Webアプリ開発

- サイクル:1周間(2リリース/週)

- 振り返り:2週間毎

26

Copyright © Sansan, Inc. All rights reserved.

> 技術開発の流れ

27

- 企画→実行のシンプルな流れ

- UI変更等が無い限りそこまでcheck actionはしない

- 当然バグとかに対する振り返りはする

Copyright © Sansan, Inc. All rights reserved.

>端末アプリ開発

28

Copyright © Sansan, Inc. All rights reserved.

> Eightのシステム

データ入力システム

Copyright © Sansan, Inc. All rights reserved.

> Eight端末開発の基本的なとこ

- サーバクライアントモデル

- iOS/Androidともに現在はネイティブアプリで

- Git Github

- 暫定Git flow型で

- Qiita Teamでの情報共有

- Pivotalでバグトラック

- JenkinsでCI→もう少しで移行予定

30

Copyright © Sansan, Inc. All rights reserved.

> Androidで使用しているライブラリ

- Volley

- Crashlytics

- Flurry

- FloatingActionButton

- Google-Http-Client

- Jackson

31

Copyright © Sansan, Inc. All rights reserved.

> サーバ側との連携

- サーバクライアントモデル

- サーバはRESTが基本思想

- クライアントの理想レスポンスと対立する部分については話

し合い&調整

32

Copyright © Sansan, Inc. All rights reserved.

テストの思想

33

Copyright © Sansan, Inc. All rights reserved.

開発のサイクル

34

Copyright © Sansan, Inc. All rights reserved.

CIについて

35

Copyright © Sansan, Inc. All rights reserved.

マルチプラットフォーム

の使用

36