SlideShare uma empresa Scribd logo
1 de 48
Baixar para ler offline
株式会社リクルートテクノロジーズ
ITマネジメント統括部
ITマネジメント2部
スマートデバイスグループ
樋口 勝彦
リクルートにおけるFirefox OS
アプリへの取り組み
~0.8人月で出来るアプリ!?~
2015/4/14
関東 Firefox OS 勉強会 10th
2
樋口 勝彦(ひぐち かつひこ)
株式会社リクルートテクノロジーズ
ITマネジメント統括部
ITマネジメント2部
スマートデバイスグループ
自己紹介
(C) Recruit Technologies Co.,Ltd. All rights reserved.
Pusna-RSについては
デブサミ2015にてお話ししました
2013年5月リクルートテクノロジーズに中途入社
- OS Tizen,Windows8,Firefox OS
-
Pusna-RS,
- iOS,Android
職歴
リクルートテクノロジーズ スマートデバイスGは
リクルートグループのネイティブアプリ・新OS領域
における開発/ビジネスを牽引する横断組織
プラットフォーマーとの密な
リレーション構築・情報収集
アプリ戦略の
実現
3(C) Recruit Technologies Co.,Ltd. All rights reserved.
スマートデバイスグループとは?
R-tech
スマートデバイスG
もちろん、
Mozilla様とも!
4(C) Recruit Technologies Co.,Ltd. All rights reserved.
本日話すこと
リクルートがFirefox OSアプリを
作成した背景/目的と、
アプリ作成時の工夫・苦労
したポイントについて
0.8人月でアプリが作れるとは??
5(C) Recruit Technologies Co.,Ltd. All rights reserved.
目次
1. リクルートにおける新OSへの取り組み目的
2. 第3OS対応
3. Firefox OS対応
4. まとめ
6(C) Recruit Technologies Co.,Ltd. All rights reserved.
目次
1. リクルートにおける新OSへの取り組み目的
2. 第3OS対応
3. Firefox OS対応
4. まとめ
7
話は遡ること2008年
リクルートはiOS/Androidアプリの
対応で競合に対して遅れをとっていました
(C) Recruit Technologies Co.,Ltd. All rights reserved.
8
この出遅れを教訓に、
Windows 8が登場した際には
いち早く対応を行いました。
(C) Recruit Technologies Co.,Ltd. All rights reserved.
事実:iOS/Androidでは全社的に競合に先行された
懸念:新プラットフォームが出ても同様に先行されてしまうのでは
課題感
9
アプリの流通機会を最優先とする方針
(C) Recruit Technologies Co.,Ltd. All rights reserved.
対競合に先んじて対応を実施することで
マーケットを押さえにいく!
取組目的
プラットフォームが流行ってから
対応するのでは遅い!
10(C) Recruit Technologies Co.,Ltd. All rights reserved.
13アプリ(ロンチ時9アプリ)を開発!
Windows 8対応の結果
11(C) Recruit Technologies Co.,Ltd. All rights reserved.
13アプリ(ロンチ時9アプリ)を開発!
Windows 8対応の結果
12(C) Recruit Technologies Co.,Ltd. All rights reserved.
目次
1. リクルートにおける新OSへの取り組み目的
2. 第3OS対応
3. FirefoxOS対応
4. まとめ
13(C) Recruit Technologies Co.,Ltd. All rights reserved.
Windows 8対応が終わったころ、
「第3OS」というワードを耳にするように!
14
iOS,Androidに続くモバイルOSに位置付けられるプラットフォーム
(C) Recruit Technologies Co.,Ltd. All rights reserved.
第3OSとは?
既存のモバイルOS HTML5準拠の新OS
15(C) Recruit Technologies Co.,Ltd. All rights reserved.
アプリはHTML5 + javascriptによる開発が前提
AndroidiOS Tizen Firefox OS ubuntu
開発言語
対応
(キャリア・メーカー)
※2013年当時
• Objective-C • JAVA • HTML5
+javascript
• HTML5
+javascript
• HTML5
+javascript
• Apple • Sumsung、LG、
Huawei、Sony、
ZTE etc….
• 6キャリア
• 6メーカー
• Intel
• 18キャリア
• 6メーカー
• Qualcom
• 未定
App Market • AppStore • Google Play • TizenStore
• Firefox
MarketPlace
• 独自マーケットも可能
• Ubuntu
Software Centre
主導企業 Apple Google Samsung Mozilla Canonical
国内:国内: 国内:
未定
・C++
各OS比較表
16(C) Recruit Technologies Co.,Ltd. All rights reserved.
2013年夏、Tizen端末がdocomoから
発売されるとアナウンスあり!
Windows8の対応時と同様の目的で
いち早く取り組むことを決定!
マーケットを押さえに行く!
17(C) Recruit Technologies Co.,Ltd. All rights reserved.
新OS対応方針
Tizen Firefox OS ubuntu
開発言語
対応
(キャリア・メーカー)
※2013年当時
• HTML5
+javascript
• HTML5
+javascript
• HTML5
+javascript
• 6キャリア
• 6メーカー
• Intel
• 18キャリア
• 6メーカー
• Qualcom
• 未定
App Market • TizenStore
• Firefox
MarketPlace
• 独自マーケットも可能
• Ubuntu
Software Centre
主導企業
Samsung Mozilla Canonical
国内:国内: 国内:
未定
・C++
ここに注目
18(C) Recruit Technologies Co.,Ltd. All rights reserved.
※「新規投資範囲」とは各OSのプロジェクト雛形が異なっていたり、各OS個別のAPIを使用する部分のこと
Web技術(HTML5/JavaScript等)でアプリ開発を実施し、
ワンリソースを複数OSで使い回せている状態を実現。
共通ロジック
新規投資範囲 新規投資範囲 新規投資範囲
ワンリソース
開発範囲
iOS Android Firefox OSTIZEN Ubuntu
既存OS系 新OS系
OS名
OS分類
1. プラットフォーム数増加に強いアプリ開発方式の確立
【狙い】
既存投資範囲 既存投資範囲
2. WEB技術を採用することで容易にエンジニア確保ができる
3. 新OSのシェア動向が未知数の状況下でも最低限の投資でアプリを作成可能
19(C) Recruit Technologies Co.,Ltd. All rights reserved.
Tizen開発について
対応アプリ
体制
要件
エンジニア7人、デザイナ2人、テスター3人
※エンジニアはポンパレ1人、その他2人体制で開発
当時のAndroid版アプリと同じ画面構成
機能は検索・一覧・詳細+αの最小限対応
※平均1アプリ17画面
開発期間 2013年6月-7月の約2か月
※合計で18人月ほど
20(C) Recruit Technologies Co.,Ltd. All rights reserved.
採用技術
CSSメタ言語
より柔軟に、分かりやすく書けるためデザイナーの
工数削減ができる
※2013年6月時点のもの
テンプレート
エンジン
MVC
フレームワーク
CUI
ライブラリ
less
Handlebars v1.0.0
Backbone v1.0.0
RequireJS v2.1.8
jQuery v2.0.0
underscore v1.4.4
Backbone.localStorage v1.1.0
Grunt
社内実績があったため採用
MVCフレームワークのデファクトスタンダード
それぞれ代表的なjsライブラリを使用
データの保存にはlocalStorageを使用
less・handlebars・RequireJSのコンパイル、
javascript構文チェック(jshint)を実施
21(C) Recruit Technologies Co.,Ltd. All rights reserved.
ソース管理
SVNのexternalsを利用し、Tizenのソースフォルダへ紐づけ
../JalanSpWeb/src/main/webapp/css css
../JalanSpWeb/src/main/webapp/images images
../JalanSpWeb/src/main/webapp/js js
../JalanSpWeb/src/main/webapp/less less
../JalanSpWeb/src/main/webapp/page page
22(C) Recruit Technologies Co.,Ltd. All rights reserved.
Tizenアプリ開発時は様々な
問題がありましたが本日はスキップ!
結局端末が日本で発売されず。。
23(C) Recruit Technologies Co.,Ltd. All rights reserved.
目次
1. リクルートにおける新OSへの取り組み目的
2. 第3OS対応
3. Firefox OS対応
4. まとめ
24(C) Recruit Technologies Co.,Ltd. All rights reserved.
2013年10月
国内でのFirefox OS端末発売の噂あり
この時期に初めてMozilla浅井さん
(@dynamitter)と
お会いさせていただきました
25(C) Recruit Technologies Co.,Ltd. All rights reserved.
もちろん
リクルートとしても取り組むことに
26(C) Recruit Technologies Co.,Ltd. All rights reserved.
MozillaとFirefox OSの
普及に向けて協働を開始
2014/2/24
27(C) Recruit Technologies Co.,Ltd. All rights reserved.
いち早くcameranアプリを
グローバルマーケットへ導入
2015/3/27時点で
平均評価4点を獲得
当時写真を加工できる
WEBアプリは珍しく、
ご好評をいただきました。
28(C) Recruit Technologies Co.,Ltd. All rights reserved.
そうこうしている内に
29(C) Recruit Technologies Co.,Ltd. All rights reserved.
2014年10月
KDDIよりクリスマスシーズンでの
端末発売を発表
30(C) Recruit Technologies Co.,Ltd. All rights reserved.
よし!国内サービスも対応だ!
31(C) Recruit Technologies Co.,Ltd. All rights reserved.
しかし端末発売まで2か月弱!
間に合うのか?
32(C) Recruit Technologies Co.,Ltd. All rights reserved.
ソース管理(再掲)
SVNのexternalsを利用し、Firefox OS用のソースフォルダへ紐づけ
../JalanSpWeb/src/main/webapp/css css
../JalanSpWeb/src/main/webapp/images images
../JalanSpWeb/src/main/webapp/js js
../JalanSpWeb/src/main/webapp/less less
../JalanSpWeb/src/main/webapp/page page
JalanSpWeb配下で開発したリソースを
JalanTizen, JalanFirefoxOSにリンク
33(C) Recruit Technologies Co.,Ltd. All rights reserved.
出来ました!
34(C) Recruit Technologies Co.,Ltd. All rights reserved.
共通リソース管理の仕組みにより
開発工数0.6人月、テスト工数0.2人月で
3アプリの対応が完了!
体制 エンジニア2人、テスター1人
開発期間 2014年11月下旬から12月頭の約2週間
工夫点
35(C) Recruit Technologies Co.,Ltd. All rights reserved.
Firefox OS対応として何をしたか
・Flame端末を使用してのデザイン崩れ対応
・すべての機能をスルーテスト
・テストで検出された不具合対応
Tizen対応の時にも動作は担保していたため
最小限の工数で対応可能に!
36(C) Recruit Technologies Co.,Ltd. All rights reserved.
普段の開発はWEBブラウザ経由で、
詳細なデザインチェックはFlame端末にて実施
※アプリ転送はWEB IDEを使用して。
アプリの動作確認はWEBブラウザ経由で
確認を行うことで高速開発
(ビルドは常にGruntが行う)
実機がなくとも
シミュレータにて確認可能
37(C) Recruit Technologies Co.,Ltd. All rights reserved.
じゃらんアプリにおいてCSP対応が発生!
苦労点
CSP(Content Security Policy)とは?
XSSやデータインジェクションなどの攻撃を
検出して軽減するセキュリティ追加レイヤーのこと。
詳細:https://developer.mozilla.org/ja/docs/Security/CSP
38(C) Recruit Technologies Co.,Ltd. All rights reserved.
具体的にアプリに対して以下の制限がかかった
CSPの事象
・リモートスクリプトの禁止
└リモートスクリプト(Google Mapなど)の読み込みができない
・インラインスクリプトの禁止
└html要素にonclickやonloadなど記述できない
制限がかかった実装のままアプリは申請できない
39(C) Recruit Technologies Co.,Ltd. All rights reserved.
じゃらんのAPIレスポンスがXML形式となっており
systemXHRを使った結果、特権アプリ扱いになったため
Why CSP?
特権アプリではCSPの適用が強制される!
※セキュリティ観点でもちろん必要なこと
40(C) Recruit Technologies Co.,Ltd. All rights reserved.
対応策
・リモートスクリプトの禁止
└GoogleMapの表示処理をブラウザ表示へ(window.open使用)
・インラインスクリプトの禁止
└onclick処理を全てBackboneのViewの処理に移動
問 題 解 決
41(C) Recruit Technologies Co.,Ltd. All rights reserved.
目次
1. リクルートにおける新OSへの取り組み目的
2. 第3OS対応
3. Firefox OS対応
4. まとめ
42
1. 国内端末発売時に3アプリ公開
2. KDDIのオススメアプリにフィーチャーされる
3. 国内企業での対応アプリ数TOP(5アプリ)
(C) Recruit Technologies Co.,Ltd. All rights reserved.
成果
端末発売当日の
KDDIおすすめページ
43(C) Recruit Technologies Co.,Ltd. All rights reserved.
44(C) Recruit Technologies Co.,Ltd. All rights reserved.
WEBアプリに可能性を感じた!
45
ワンリソースを複数OSで使いまわすことによって
新OSが登場した際にも爆速対応可能!
(C) Recruit Technologies Co.,Ltd. All rights reserved.
0.8人月のからくり
共通ロジック
新規投資範囲 新規投資範囲 新規投資範囲
Firefox OSTIZEN Ubuntu
新OS系
46(C) Recruit Technologies Co.,Ltd. All rights reserved.
みなさんもFirefox OSアプリ
作りませんか?
47(C) Recruit Technologies Co.,Ltd. All rights reserved.
48
ご清聴ありがとうございました!
(C) Recruit Technologies Co.,Ltd. All rights reserved.

Mais conteúdo relacionado

Mais procurados

リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたかリクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたかRecruit Technologies
 
リクルートのWebサービスを支える「RAFTEL」
リクルートのWebサービスを支える「RAFTEL」リクルートのWebサービスを支える「RAFTEL」
リクルートのWebサービスを支える「RAFTEL」Recruit Technologies
 
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアルリクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアルRecruit Technologies
 
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~Recruit Technologies
 
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~Recruit Technologies
 
リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介Recruit Technologies
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例Recruit Technologies
 
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介Recruit Technologies
 
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...DataWorks Summit/Hadoop Summit
 
リクルートのWebサービスを支える共通インフラ「RAFTEL」
リクルートのWebサービスを支える共通インフラ「RAFTEL」リクルートのWebサービスを支える共通インフラ「RAFTEL」
リクルートのWebサービスを支える共通インフラ「RAFTEL」Recruit Technologies
 
リクルートにおける画像解析事例紹介と周辺技術紹介
リクルートにおける画像解析事例紹介と周辺技術紹介リクルートにおける画像解析事例紹介と周辺技術紹介
リクルートにおける画像解析事例紹介と周辺技術紹介Recruit Technologies
 
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-Recruit Technologies
 
DataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズDataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズRecruit Technologies
 
リクルートを支える横断データ基盤と機械学習の適用事例
リクルートを支える横断データ基盤と機械学習の適用事例リクルートを支える横断データ基盤と機械学習の適用事例
リクルートを支える横断データ基盤と機械学習の適用事例Tetsutaro Watanabe
 
エヌビディアのディープラーニング戦略
エヌビディアのディープラーニング戦略エヌビディアのディープラーニング戦略
エヌビディアのディープラーニング戦略NVIDIA Japan
 
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016Yota Ishida
 
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~Recruit Technologies
 

Mais procurados (20)

20150625 cloudera
20150625 cloudera20150625 cloudera
20150625 cloudera
 
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたかリクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
リクルートはいかにして、ディープラーニング(深層学習)の導入を成功させたか
 
リクルートのWebサービスを支える「RAFTEL」
リクルートのWebサービスを支える「RAFTEL」リクルートのWebサービスを支える「RAFTEL」
リクルートのWebサービスを支える「RAFTEL」
 
RANCHERを使ったDev(Ops)
RANCHERを使ったDev(Ops)RANCHERを使ったDev(Ops)
RANCHERを使ったDev(Ops)
 
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアルリクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
 
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
3万人が利用するリクルートのワイヤレス環境 ~リアクティブからプロアクティブへ~
 
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
運用で泣かないアーキテクチャで動く原稿作成支援システム ~リクルートにおけるDeepLearning活用事例~
 
リクルート式AIの活用法
リクルート式AIの活用法リクルート式AIの活用法
リクルート式AIの活用法
 
リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介リクルートにおける画像解析事例紹介
リクルートにおける画像解析事例紹介
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例
 
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
 
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
 
リクルートのWebサービスを支える共通インフラ「RAFTEL」
リクルートのWebサービスを支える共通インフラ「RAFTEL」リクルートのWebサービスを支える共通インフラ「RAFTEL」
リクルートのWebサービスを支える共通インフラ「RAFTEL」
 
リクルートにおける画像解析事例紹介と周辺技術紹介
リクルートにおける画像解析事例紹介と周辺技術紹介リクルートにおける画像解析事例紹介と周辺技術紹介
リクルートにおける画像解析事例紹介と周辺技術紹介
 
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
 
DataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズDataRobot活用状況@リクルートテクノロジーズ
DataRobot活用状況@リクルートテクノロジーズ
 
リクルートを支える横断データ基盤と機械学習の適用事例
リクルートを支える横断データ基盤と機械学習の適用事例リクルートを支える横断データ基盤と機械学習の適用事例
リクルートを支える横断データ基盤と機械学習の適用事例
 
エヌビディアのディープラーニング戦略
エヌビディアのディープラーニング戦略エヌビディアのディープラーニング戦略
エヌビディアのディープラーニング戦略
 
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
ディープラーニングでおそ松さんの6つ子は見分けられるのか? FIT2016
 
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
 

Semelhante a リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~

[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組みRecruit Technologies
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用de:code 2017
 
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指してAkira Inoue
 
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬日本マイクロソフト株式会社
 
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェストIssei Hiraoka
 
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformJSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformTakahiro Fujii
 
Istio, Kubernetes and Cloud Foundry
Istio, Kubernetes and Cloud FoundryIstio, Kubernetes and Cloud Foundry
Istio, Kubernetes and Cloud FoundryKazuto Kusama
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについてMasahito Zembutsu
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルVisual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルAkira Inoue
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解Monaca
 
Servcie Fabric and Cloud Design Pattern
Servcie Fabric and Cloud Design PatternServcie Fabric and Cloud Design Pattern
Servcie Fabric and Cloud Design PatternTakekazu Omi
 
ニフティクラウドC4SA_ご紹介資料ver.1.1
ニフティクラウドC4SA_ご紹介資料ver.1.1ニフティクラウドC4SA_ご紹介資料ver.1.1
ニフティクラウドC4SA_ご紹介資料ver.1.1Satoshi Ueno
 
インフラチームとCCoEの関係.pptx
インフラチームとCCoEの関係.pptxインフラチームとCCoEの関係.pptx
インフラチームとCCoEの関係.pptxssuser5c7ee4
 
Building a Flutter Development Environment with VSCode and Useful Extensions
Building a Flutter Development Environment with VSCode and Useful ExtensionsBuilding a Flutter Development Environment with VSCode and Useful Extensions
Building a Flutter Development Environment with VSCode and Useful ExtensionsShotaro Suzuki
 

Semelhante a リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~ (20)

[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
 
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
[TL04] .NET 15 周年の今こそ考えるクラウドネイティブ アプリケーションと .NET の活用
 
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
 
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
 
デバイス時代の Web UI コンポーネント活用
デバイス時代の Web UI コンポーネント活用デバイス時代の Web UI コンポーネント活用
デバイス時代の Web UI コンポーネント活用
 
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
2021/02/19 Alterbooth 多忙なアーキテクトのためのクラウド導入フレームワーク (CAF) ダイジェスト
 
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformJSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
 
Istio, Kubernetes and Cloud Foundry
Istio, Kubernetes and Cloud FoundryIstio, Kubernetes and Cloud Foundry
Istio, Kubernetes and Cloud Foundry
 
Ms retail update ra 20191030
Ms retail update ra 20191030Ms retail update ra 20191030
Ms retail update ra 20191030
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 
[Japan Tech summit 2017] APP 001
[Japan Tech summit 2017] APP 001[Japan Tech summit 2017] APP 001
[Japan Tech summit 2017] APP 001
 
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイルVisual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
Visual Studio 2019 GA ! ~ 最新情報 & これからの開発スタイル
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
 
ニフクラ mobile backend チームのCIツール活用事例紹介
ニフクラ mobile backend チームのCIツール活用事例紹介ニフクラ mobile backend チームのCIツール活用事例紹介
ニフクラ mobile backend チームのCIツール活用事例紹介
 
Servcie Fabric and Cloud Design Pattern
Servcie Fabric and Cloud Design PatternServcie Fabric and Cloud Design Pattern
Servcie Fabric and Cloud Design Pattern
 
ニフティクラウドC4SA_ご紹介資料ver.1.1
ニフティクラウドC4SA_ご紹介資料ver.1.1ニフティクラウドC4SA_ご紹介資料ver.1.1
ニフティクラウドC4SA_ご紹介資料ver.1.1
 
インフラチームとCCoEの関係.pptx
インフラチームとCCoEの関係.pptxインフラチームとCCoEの関係.pptx
インフラチームとCCoEの関係.pptx
 
Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.Case study of DevOps for Hadoop in Recruit.
Case study of DevOps for Hadoop in Recruit.
 
Building a Flutter Development Environment with VSCode and Useful Extensions
Building a Flutter Development Environment with VSCode and Useful ExtensionsBuilding a Flutter Development Environment with VSCode and Useful Extensions
Building a Flutter Development Environment with VSCode and Useful Extensions
 

Mais de Recruit Technologies

新卒2年目が鍛えられたコードレビュー道場
新卒2年目が鍛えられたコードレビュー道場新卒2年目が鍛えられたコードレビュー道場
新卒2年目が鍛えられたコードレビュー道場Recruit Technologies
 
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学びカーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学びRecruit Technologies
 
HadoopをBQにマイグレしようとしてる話
HadoopをBQにマイグレしようとしてる話HadoopをBQにマイグレしようとしてる話
HadoopをBQにマイグレしようとしてる話Recruit Technologies
 
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所Recruit Technologies
 
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...Recruit Technologies
 
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイントユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイントRecruit Technologies
 
ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後Recruit Technologies
 
EMRでスポットインスタンスの自動入札ツールを作成する
EMRでスポットインスタンスの自動入札ツールを作成するEMRでスポットインスタンスの自動入札ツールを作成する
EMRでスポットインスタンスの自動入札ツールを作成するRecruit Technologies
 
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイントリクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイントRecruit Technologies
 
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイントユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイントRecruit Technologies
 
「リクルートデータセット」 ~公開までの道のりとこれから~
「リクルートデータセット」 ~公開までの道のりとこれから~「リクルートデータセット」 ~公開までの道のりとこれから~
「リクルートデータセット」 ~公開までの道のりとこれから~Recruit Technologies
 
Struggle against cross-domain data complexity in Recruit group
Struggle against cross-domain data complexity in Recruit groupStruggle against cross-domain data complexity in Recruit group
Struggle against cross-domain data complexity in Recruit groupRecruit Technologies
 
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...Recruit Technologies
 
Hadoop’s Impact on Recruit Company
Hadoop’s Impact on Recruit CompanyHadoop’s Impact on Recruit Company
Hadoop’s Impact on Recruit CompanyRecruit Technologies
 
リクルートにおけるデータのインフラ化への取組
リクルートにおけるデータのインフラ化への取組リクルートにおけるデータのインフラ化への取組
リクルートにおけるデータのインフラ化への取組Recruit Technologies
 

Mais de Recruit Technologies (17)

新卒2年目が鍛えられたコードレビュー道場
新卒2年目が鍛えられたコードレビュー道場新卒2年目が鍛えられたコードレビュー道場
新卒2年目が鍛えられたコードレビュー道場
 
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学びカーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
 
Tableau活用4年の軌跡
Tableau活用4年の軌跡Tableau活用4年の軌跡
Tableau活用4年の軌跡
 
HadoopをBQにマイグレしようとしてる話
HadoopをBQにマイグレしようとしてる話HadoopをBQにマイグレしようとしてる話
HadoopをBQにマイグレしようとしてる話
 
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
 
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
 
銀行ロビーアシスタント
銀行ロビーアシスタント銀行ロビーアシスタント
銀行ロビーアシスタント
 
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイントユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイント
 
ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後
 
EMRでスポットインスタンスの自動入札ツールを作成する
EMRでスポットインスタンスの自動入札ツールを作成するEMRでスポットインスタンスの自動入札ツールを作成する
EMRでスポットインスタンスの自動入札ツールを作成する
 
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイントリクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
 
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイントユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイント
 
「リクルートデータセット」 ~公開までの道のりとこれから~
「リクルートデータセット」 ~公開までの道のりとこれから~「リクルートデータセット」 ~公開までの道のりとこれから~
「リクルートデータセット」 ~公開までの道のりとこれから~
 
Struggle against cross-domain data complexity in Recruit group
Struggle against cross-domain data complexity in Recruit groupStruggle against cross-domain data complexity in Recruit group
Struggle against cross-domain data complexity in Recruit group
 
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
 
Hadoop’s Impact on Recruit Company
Hadoop’s Impact on Recruit CompanyHadoop’s Impact on Recruit Company
Hadoop’s Impact on Recruit Company
 
リクルートにおけるデータのインフラ化への取組
リクルートにおけるデータのインフラ化への取組リクルートにおけるデータのインフラ化への取組
リクルートにおけるデータのインフラ化への取組
 

リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~

  • 2. 2 樋口 勝彦(ひぐち かつひこ) 株式会社リクルートテクノロジーズ ITマネジメント統括部 ITマネジメント2部 スマートデバイスグループ 自己紹介 (C) Recruit Technologies Co.,Ltd. All rights reserved. Pusna-RSについては デブサミ2015にてお話ししました 2013年5月リクルートテクノロジーズに中途入社 - OS Tizen,Windows8,Firefox OS - Pusna-RS, - iOS,Android 職歴
  • 4. 4(C) Recruit Technologies Co.,Ltd. All rights reserved. 本日話すこと リクルートがFirefox OSアプリを 作成した背景/目的と、 アプリ作成時の工夫・苦労 したポイントについて 0.8人月でアプリが作れるとは??
  • 5. 5(C) Recruit Technologies Co.,Ltd. All rights reserved. 目次 1. リクルートにおける新OSへの取り組み目的 2. 第3OS対応 3. Firefox OS対応 4. まとめ
  • 6. 6(C) Recruit Technologies Co.,Ltd. All rights reserved. 目次 1. リクルートにおける新OSへの取り組み目的 2. 第3OS対応 3. Firefox OS対応 4. まとめ
  • 8. 8 この出遅れを教訓に、 Windows 8が登場した際には いち早く対応を行いました。 (C) Recruit Technologies Co.,Ltd. All rights reserved. 事実:iOS/Androidでは全社的に競合に先行された 懸念:新プラットフォームが出ても同様に先行されてしまうのでは 課題感
  • 9. 9 アプリの流通機会を最優先とする方針 (C) Recruit Technologies Co.,Ltd. All rights reserved. 対競合に先んじて対応を実施することで マーケットを押さえにいく! 取組目的 プラットフォームが流行ってから 対応するのでは遅い!
  • 10. 10(C) Recruit Technologies Co.,Ltd. All rights reserved. 13アプリ(ロンチ時9アプリ)を開発! Windows 8対応の結果
  • 11. 11(C) Recruit Technologies Co.,Ltd. All rights reserved. 13アプリ(ロンチ時9アプリ)を開発! Windows 8対応の結果
  • 12. 12(C) Recruit Technologies Co.,Ltd. All rights reserved. 目次 1. リクルートにおける新OSへの取り組み目的 2. 第3OS対応 3. FirefoxOS対応 4. まとめ
  • 13. 13(C) Recruit Technologies Co.,Ltd. All rights reserved. Windows 8対応が終わったころ、 「第3OS」というワードを耳にするように!
  • 14. 14 iOS,Androidに続くモバイルOSに位置付けられるプラットフォーム (C) Recruit Technologies Co.,Ltd. All rights reserved. 第3OSとは? 既存のモバイルOS HTML5準拠の新OS
  • 15. 15(C) Recruit Technologies Co.,Ltd. All rights reserved. アプリはHTML5 + javascriptによる開発が前提 AndroidiOS Tizen Firefox OS ubuntu 開発言語 対応 (キャリア・メーカー) ※2013年当時 • Objective-C • JAVA • HTML5 +javascript • HTML5 +javascript • HTML5 +javascript • Apple • Sumsung、LG、 Huawei、Sony、 ZTE etc…. • 6キャリア • 6メーカー • Intel • 18キャリア • 6メーカー • Qualcom • 未定 App Market • AppStore • Google Play • TizenStore • Firefox MarketPlace • 独自マーケットも可能 • Ubuntu Software Centre 主導企業 Apple Google Samsung Mozilla Canonical 国内:国内: 国内: 未定 ・C++ 各OS比較表
  • 16. 16(C) Recruit Technologies Co.,Ltd. All rights reserved. 2013年夏、Tizen端末がdocomoから 発売されるとアナウンスあり! Windows8の対応時と同様の目的で いち早く取り組むことを決定! マーケットを押さえに行く!
  • 17. 17(C) Recruit Technologies Co.,Ltd. All rights reserved. 新OS対応方針 Tizen Firefox OS ubuntu 開発言語 対応 (キャリア・メーカー) ※2013年当時 • HTML5 +javascript • HTML5 +javascript • HTML5 +javascript • 6キャリア • 6メーカー • Intel • 18キャリア • 6メーカー • Qualcom • 未定 App Market • TizenStore • Firefox MarketPlace • 独自マーケットも可能 • Ubuntu Software Centre 主導企業 Samsung Mozilla Canonical 国内:国内: 国内: 未定 ・C++ ここに注目
  • 18. 18(C) Recruit Technologies Co.,Ltd. All rights reserved. ※「新規投資範囲」とは各OSのプロジェクト雛形が異なっていたり、各OS個別のAPIを使用する部分のこと Web技術(HTML5/JavaScript等)でアプリ開発を実施し、 ワンリソースを複数OSで使い回せている状態を実現。 共通ロジック 新規投資範囲 新規投資範囲 新規投資範囲 ワンリソース 開発範囲 iOS Android Firefox OSTIZEN Ubuntu 既存OS系 新OS系 OS名 OS分類 1. プラットフォーム数増加に強いアプリ開発方式の確立 【狙い】 既存投資範囲 既存投資範囲 2. WEB技術を採用することで容易にエンジニア確保ができる 3. 新OSのシェア動向が未知数の状況下でも最低限の投資でアプリを作成可能
  • 19. 19(C) Recruit Technologies Co.,Ltd. All rights reserved. Tizen開発について 対応アプリ 体制 要件 エンジニア7人、デザイナ2人、テスター3人 ※エンジニアはポンパレ1人、その他2人体制で開発 当時のAndroid版アプリと同じ画面構成 機能は検索・一覧・詳細+αの最小限対応 ※平均1アプリ17画面 開発期間 2013年6月-7月の約2か月 ※合計で18人月ほど
  • 20. 20(C) Recruit Technologies Co.,Ltd. All rights reserved. 採用技術 CSSメタ言語 より柔軟に、分かりやすく書けるためデザイナーの 工数削減ができる ※2013年6月時点のもの テンプレート エンジン MVC フレームワーク CUI ライブラリ less Handlebars v1.0.0 Backbone v1.0.0 RequireJS v2.1.8 jQuery v2.0.0 underscore v1.4.4 Backbone.localStorage v1.1.0 Grunt 社内実績があったため採用 MVCフレームワークのデファクトスタンダード それぞれ代表的なjsライブラリを使用 データの保存にはlocalStorageを使用 less・handlebars・RequireJSのコンパイル、 javascript構文チェック(jshint)を実施
  • 21. 21(C) Recruit Technologies Co.,Ltd. All rights reserved. ソース管理 SVNのexternalsを利用し、Tizenのソースフォルダへ紐づけ ../JalanSpWeb/src/main/webapp/css css ../JalanSpWeb/src/main/webapp/images images ../JalanSpWeb/src/main/webapp/js js ../JalanSpWeb/src/main/webapp/less less ../JalanSpWeb/src/main/webapp/page page
  • 22. 22(C) Recruit Technologies Co.,Ltd. All rights reserved. Tizenアプリ開発時は様々な 問題がありましたが本日はスキップ! 結局端末が日本で発売されず。。
  • 23. 23(C) Recruit Technologies Co.,Ltd. All rights reserved. 目次 1. リクルートにおける新OSへの取り組み目的 2. 第3OS対応 3. Firefox OS対応 4. まとめ
  • 24. 24(C) Recruit Technologies Co.,Ltd. All rights reserved. 2013年10月 国内でのFirefox OS端末発売の噂あり この時期に初めてMozilla浅井さん (@dynamitter)と お会いさせていただきました
  • 25. 25(C) Recruit Technologies Co.,Ltd. All rights reserved. もちろん リクルートとしても取り組むことに
  • 26. 26(C) Recruit Technologies Co.,Ltd. All rights reserved. MozillaとFirefox OSの 普及に向けて協働を開始 2014/2/24
  • 27. 27(C) Recruit Technologies Co.,Ltd. All rights reserved. いち早くcameranアプリを グローバルマーケットへ導入 2015/3/27時点で 平均評価4点を獲得 当時写真を加工できる WEBアプリは珍しく、 ご好評をいただきました。
  • 28. 28(C) Recruit Technologies Co.,Ltd. All rights reserved. そうこうしている内に
  • 29. 29(C) Recruit Technologies Co.,Ltd. All rights reserved. 2014年10月 KDDIよりクリスマスシーズンでの 端末発売を発表
  • 30. 30(C) Recruit Technologies Co.,Ltd. All rights reserved. よし!国内サービスも対応だ!
  • 31. 31(C) Recruit Technologies Co.,Ltd. All rights reserved. しかし端末発売まで2か月弱! 間に合うのか?
  • 32. 32(C) Recruit Technologies Co.,Ltd. All rights reserved. ソース管理(再掲) SVNのexternalsを利用し、Firefox OS用のソースフォルダへ紐づけ ../JalanSpWeb/src/main/webapp/css css ../JalanSpWeb/src/main/webapp/images images ../JalanSpWeb/src/main/webapp/js js ../JalanSpWeb/src/main/webapp/less less ../JalanSpWeb/src/main/webapp/page page JalanSpWeb配下で開発したリソースを JalanTizen, JalanFirefoxOSにリンク
  • 33. 33(C) Recruit Technologies Co.,Ltd. All rights reserved. 出来ました!
  • 34. 34(C) Recruit Technologies Co.,Ltd. All rights reserved. 共通リソース管理の仕組みにより 開発工数0.6人月、テスト工数0.2人月で 3アプリの対応が完了! 体制 エンジニア2人、テスター1人 開発期間 2014年11月下旬から12月頭の約2週間 工夫点
  • 35. 35(C) Recruit Technologies Co.,Ltd. All rights reserved. Firefox OS対応として何をしたか ・Flame端末を使用してのデザイン崩れ対応 ・すべての機能をスルーテスト ・テストで検出された不具合対応 Tizen対応の時にも動作は担保していたため 最小限の工数で対応可能に!
  • 36. 36(C) Recruit Technologies Co.,Ltd. All rights reserved. 普段の開発はWEBブラウザ経由で、 詳細なデザインチェックはFlame端末にて実施 ※アプリ転送はWEB IDEを使用して。 アプリの動作確認はWEBブラウザ経由で 確認を行うことで高速開発 (ビルドは常にGruntが行う) 実機がなくとも シミュレータにて確認可能
  • 37. 37(C) Recruit Technologies Co.,Ltd. All rights reserved. じゃらんアプリにおいてCSP対応が発生! 苦労点 CSP(Content Security Policy)とは? XSSやデータインジェクションなどの攻撃を 検出して軽減するセキュリティ追加レイヤーのこと。 詳細:https://developer.mozilla.org/ja/docs/Security/CSP
  • 38. 38(C) Recruit Technologies Co.,Ltd. All rights reserved. 具体的にアプリに対して以下の制限がかかった CSPの事象 ・リモートスクリプトの禁止 └リモートスクリプト(Google Mapなど)の読み込みができない ・インラインスクリプトの禁止 └html要素にonclickやonloadなど記述できない 制限がかかった実装のままアプリは申請できない
  • 39. 39(C) Recruit Technologies Co.,Ltd. All rights reserved. じゃらんのAPIレスポンスがXML形式となっており systemXHRを使った結果、特権アプリ扱いになったため Why CSP? 特権アプリではCSPの適用が強制される! ※セキュリティ観点でもちろん必要なこと
  • 40. 40(C) Recruit Technologies Co.,Ltd. All rights reserved. 対応策 ・リモートスクリプトの禁止 └GoogleMapの表示処理をブラウザ表示へ(window.open使用) ・インラインスクリプトの禁止 └onclick処理を全てBackboneのViewの処理に移動 問 題 解 決
  • 41. 41(C) Recruit Technologies Co.,Ltd. All rights reserved. 目次 1. リクルートにおける新OSへの取り組み目的 2. 第3OS対応 3. Firefox OS対応 4. まとめ
  • 42. 42 1. 国内端末発売時に3アプリ公開 2. KDDIのオススメアプリにフィーチャーされる 3. 国内企業での対応アプリ数TOP(5アプリ) (C) Recruit Technologies Co.,Ltd. All rights reserved. 成果 端末発売当日の KDDIおすすめページ
  • 43. 43(C) Recruit Technologies Co.,Ltd. All rights reserved.
  • 44. 44(C) Recruit Technologies Co.,Ltd. All rights reserved. WEBアプリに可能性を感じた!
  • 45. 45 ワンリソースを複数OSで使いまわすことによって 新OSが登場した際にも爆速対応可能! (C) Recruit Technologies Co.,Ltd. All rights reserved. 0.8人月のからくり 共通ロジック 新規投資範囲 新規投資範囲 新規投資範囲 Firefox OSTIZEN Ubuntu 新OS系
  • 46. 46(C) Recruit Technologies Co.,Ltd. All rights reserved. みなさんもFirefox OSアプリ 作りませんか?
  • 47. 47(C) Recruit Technologies Co.,Ltd. All rights reserved.