Funliday 新創生活甘苦談
Kewang
Kewang
● 王慕羣 Kewang
● Java / JavaScript
● HBase / PostgreSQL / MongoDB / ElasticSearch
● Git / DevOps
●
熱愛開源
Linkedin
Linkedin kewangtw
kewangtw
SlideShare
SlideShare kewang
kewang
Gmail
Gmail cpckewang
cpckewang
Facebook
Facebook Kewang 的資訊進化論
Kewang 的資訊進化論
devopsday taipei
devopsday taipei '17
'17
hadoopcon
hadoopcon '14 '15
'14 '15
jcconf
jcconf '16 '17 '18
'16 '17 '18
modernweb
modernweb '18 '19 '20
'18 '19 '20
GitHub
GitHub kewang
kewang
Funliday
Funliday kewang
kewang
coscup
coscup '20
'20
mopcon
mopcon '14 '20
'14 '20
4
看一下我平常的工作環境
看 log
監控機器
寫 code
21 個 project
VSCode 愈跑愈慢
13
先來介紹一下團隊成員
14
團隊成員 (13 位 )
● Designer * 1
● PM * 1
● QA * 1
● iOS * 1
● SRE * 1
● Android * 1
● 企劃 * 1
● BD * 1
● 小編 * 1
● Backend * 1
● 行銷 * 1
● Web * 1
● 客服 * 1
15
團隊成員 (13 位 )
● Designer * 1
● PM * 1
● QA * 1
● iOS * 1
● SRE * 1
● Android * 1
● 企劃 * 1
● BD * 1
● 小編 * 1
● Backend * 1
● 行銷 * 1
● Web * 1
● 客服 * 1
16
真.團隊成員 (5 位 )
● Designer * 1
● PM * 1
● QA * 1
● iOS * 1
● SRE * 1
● Android * 1
● 企劃 * 1
● BD * 1
● 小編 * 1
● Backend * 1
● 行銷 * 1
● Web * 1
● 客服 * 1
17
18
真.團隊成員 (5 位 )
● Designer * 1
● PM * 1
● QA * 1
● iOS * 1
● SRE * 1
● Android * 1
● 企劃 * 1
● BD * 1
● 小編 * 1
● Backend * 1
● 行銷 * 1
● Web * 1
● 客服 * 1
19
再來介紹一下五大功能
20
景點瀏覽
21
●
第一個開發的功能
景點瀏覽
22
●
第一個開發的功能
● OpenStreetMap
景點瀏覽
23
●
第一個開發的功能
● OpenStreetMap
● PostgreSQL (PostGIS)
景點瀏覽
24
●
第一個開發的功能
● OpenStreetMap
● PostgreSQL (PostGIS)
● 各種快取策略 (Redis, DB)
景點瀏覽
25
●
第一個開發的功能
● OpenStreetMap
● PostgreSQL (PostGIS)
● 各種快取策略 (Redis, DB)
● Autocomplete
景點瀏覽
26
●
第一個開發的功能
● OpenStreetMap
● PostgreSQL (PostGIS)
● 各種快取策略 (Redis, DB)
● Autocomplete
● Elasticsearch
景點瀏覽
27
●
第一個開發的功能
● OpenStreetMap
● PostgreSQL (PostGIS)
● 各種快取策略 (Redis, DB)
● Autocomplete
● Elasticsearch
– 中文斷詞
景點瀏覽
28
●
第一個開發的功能
● OpenStreetMap
● PostgreSQL (PostGIS)
● 各種快取策略 (Redis, DB)
● Autocomplete
● Elasticsearch
– 中文斷詞
– MultiPolygon
景點瀏覽
29
●
第一個開發的功能
● OpenStreetMap
● PostgreSQL (PostGIS)
● 各種快取策略 (Redis, DB)
● Autocomplete
● Elasticsearch
– 中文斷詞
– MultiPolygon
– Function Score
景點瀏覽
30
旅遊回憶
31
●
行程加圖片
旅遊回憶
32
●
行程加圖片
●
使用者原創內容
旅遊回憶
33
●
行程加圖片
●
使用者原創內容
●
圖片處理
旅遊回憶
34
●
行程加圖片
●
使用者原創內容
●
圖片處理
– S3, CDN
旅遊回憶
35
●
行程加圖片
●
使用者原創內容
●
圖片處理
– S3, CDN
– Image resize
旅遊回憶
36
●
行程加圖片
●
使用者原創內容
●
圖片處理
– S3, CDN
– Image resize
●
開始加入個人化元素
旅遊回憶
37
●
行程加圖片
●
使用者原創內容
●
圖片處理
– S3, CDN
– Image resize
●
開始加入個人化元素
● Social friendly
旅遊回憶
38
●
行程加圖片
●
使用者原創內容
●
圖片處理
– S3, CDN
– Image resize
●
開始加入個人化元素
● Social friendly
– Unified URL
旅遊回憶
39
●
行程加圖片
●
使用者原創內容
●
圖片處理
– S3, CDN
– Image resize
●
開始加入個人化元素
● Social friendly
– Unified URL
– Open Graph
旅遊回憶
40
●
行程加圖片
●
使用者原創內容
●
圖片處理
– S3, CDN
– Image resize
●
開始加入個人化元素
●
Social friendly
– Unified URL
– Open Graph
– Schema.org
旅遊回憶
41
行程編輯
42
● Funliday 的核心功能
行程編輯
43
● Funliday 的核心功能
●
一年後才接手
行程編輯
44
● Funliday 的核心功能
●
一年後才接手
●
花了整整一年重構
行程編輯
45
● Funliday 的核心功能
●
一年後才接手
●
花了整整一年重構
●
重構很重要
行程編輯
46
● Funliday 的核心功能
●
一年後才接手
●
花了整整一年重構
●
重構很重要
●
兩個例子
行程編輯
47
● Funliday 的核心功能
●
一年後才接手
●
花了整整一年重構
●
重構很重要
●
兩個例子
– Notification
行程編輯
48
● Funliday 的核心功能
●
一年後才接手
●
花了整整一年重構
●
重構很重要
●
兩個例子
– Notification
– Middleware
行程編輯
49
探索
50
●
第一版開發上稿非常不靈活
探索
51
●
第一版開發上稿非常不靈活
●
半年後花了一個月打掉重練
探索
52
●
第一版開發上稿非常不靈活
●
半年後花了一個月打掉重練
●
過了六年總算成為首頁
探索
53
●
第一版開發上稿非常不靈活
●
半年後花了一個月打掉重練
●
過了六年總算成為首頁
●
建構各種社群基本元素
探索
54
●
第一版開發上稿非常不靈活
●
半年後花了一個月打掉重練
●
過了六年總算成為首頁
●
建構各種社群基本元素
– 留言
探索
55
●
第一版開發上稿非常不靈活
●
半年後花了一個月打掉重練
●
過了六年總算成為首頁
●
建構各種社群基本元素
– 留言
– 按讚
探索
56
●
第一版開發上稿非常不靈活
●
半年後花了一個月打掉重練
●
過了六年總算成為首頁
●
建構各種社群基本元素
– 留言
– 按讚
– 分享
探索
57
●
第一版開發上稿非常不靈活
●
半年後花了一個月打掉重練
●
過了六年總算成為首頁
●
建構各種社群基本元素
– 留言
– 按讚
– 分享
– 開啟小鈴鐺
探索
58
在地體驗
59
●
開始進入銷售
在地體驗
60
●
開始進入銷售
●
購買後可以加到行程
在地體驗
61
●
開始進入銷售
●
購買後可以加到行程
●
金流串接
在地體驗
62
Summary
63
Summary
●
勇於接受挑戰
64
Summary
●
勇於接受挑戰
●
快速迭代
65
Summary
●
勇於接受挑戰
●
快速迭代
●
每天都是假日,每天也都是平日
66
Summary
●
勇於接受挑戰
●
快速迭代
●
每天都是假日,每天也都是平日
●
技術是為商業所服務
67

Funliday 新創生活甘苦談