自行開發或從外導入:建立即時通訊系統時的選擇
- 2022 年 04 月 07 日
根據我們過去服務客戶的經驗,直接在企業自家 App 內建立與使用者對談的管道或是能讓消費者間互動的情境,皆能提升 App 的開啟率與用戶留存率。
商業場景中的對談(conversation),跟社群平台中的閒聊(chat)是不同價值的。商業場景中的每一個訊息,代表的是一個潛在客戶獲得、一次服務順利交付、一個用戶留存機會,沒有人會想讓這重要的互動機會,跳轉到不同 App 而流逝掉。這些珍貴的對談資料,也是 AI 數據時代最重要的基石。
那麼,究竟應該自行開發即時通訊系統,或者是整合第三方的即時通訊 SDK 呢?
一個決策案例:金融客戶
再往下探討這個問題前,我們先分享一個金融客戶的決策案例。
這個金融客戶的需求是想在 iOS 與 Android App 產品中導入即時通訊,讓用戶間可彼此互加好友、開啟聊天、在聊天室中完成發紅包與轉帳交易。目標是提高 App 的開啟率,也因轉帳交易的方便性提升,進而提升交易量。
這裡,我們採用軟體採購常用的整體擁有成本(Total Cost of Ownership,TCO)作為決策依據。
首先,開發一個即時通訊系統,在研發上至少需要四位後端工程師、兩位前端平台工程師(iOS & Android),加上產品經理、系統架構師、兩位測試工程師,大概是十人左右的產品團隊,這還不包括後續使用者人數上升後,還需要至少一位專職 DevOps 工程師去處理流量與伺服器相關問題。
這個團隊預估至少要 6 個月的時間去完成基礎即時通訊功能,然後再花 2 個月去完成接近社群即時通訊的用戶體驗,值得注意的是,這並不包含實際上線時所需的營運(Operation)工程經驗的積累。
人力資源成本依照各個國家的薪資水平會有些波動。以台灣來說,如果客戶選擇自行開發即時通訊,
至少需要花一年 NT$ 600 萬去完成,如果這個金融客戶在美國,則會上升到一年 NT$ 1800 萬。
最終這個金融客戶選擇了 IMKIT 方案,除了降低總體擁有成本之外,專案從實際進行到完成首次上線只花不到 2 個月的整合時間。
三個評估關鍵:成本、風險與產品核心
對某些企業來說,自行開發也是一種選擇,這邊我們從三個面向來評估自行開發與從外導入即時通訊 SDK 的優劣:分別是成本、風險與產品核心。
1. 被低估的總體擁有成本
如果目前的研發團隊本身就有即時通訊產品的經驗,總體擁有成本的估算會相對精確。不然研發團隊涉足新領域時,通常會帶來額外的探索成本,延伸的結果甚至會推遲到產品的上線時間。
根據我們的經驗,即時通訊產品的概念驗證(Proof of Concept,PoC),大約要前面提及的人力配置下花費 1 至 1.5 個月(4 至 6 週),額外還要加上與現有產品整合的產品團隊資源,才能完成。
對一個集團或大公司而言,如果這個即時通訊系統還想去滿足多產品線的配合,則需要更多的資源去處理需求分析、團隊協作,以至於最終可以支援不同使用情境。常見的結果,就是打亂原本的主要產品開發週期,並且排擠內部研發資源。系統完成後,後續還要跟著 iOS、Android 與瀏覽器的升級跟著調整,需要有相對應的資源去即時配合,以避免你的服務暫停。爾後隨著經營的成功,使用者上升後對於系統架構的流量規劃與自動擴展性,則又是另一個重大課題需要被解決。我們的建議通常會是,如果你沒有一群有即時通訊開發經驗的研發團隊,又希望產品或專案的時程與預算可控,建議直接採用第三方即時通訊 SDK 服務。
2. 被忽略的風險
這邊提到的風險,包括商業策略風險、上線時間、資安風險、產品/專案資源。
讓我們試圖想想幾個問題,就可以理解自行開發需要承擔哪些額外的風險。
Q: 新的產品方案需要多快上線,才能夠保有市場性爭利?
Q: 如果市場反饋需要快速迭代,研發團隊是否能夠有彈性的處理即時通訊相關需求?
Q: 開發的目標是快速讓你的用戶在服務中享受即時通訊?還是想要建立一個所有人都想使用或購買的即時通訊軟體?
Q: 研發團隊對於即時通訊資訊安全的經驗是否足夠?包括訊息加解密、通訊安全等等?
Q: 如果即時通訊中產生 bug,研發團隊可以多快完成修復,並避免負面用戶體驗?
這些風險沒有事先評估,在自行開後中後其往往會帶來災難性的結果。
3. 企業的產品核心是什麼?
如果評估可以承受上述的成本與風險問題,最後就是面對最核心的問題:公司的產品核心是什麼?
第三方即時通訊 SDK,提供的不只是在一對一或群聊環境下丟丟訊息,更多的是包括已讀/未讀、多媒體檔案傳輸、網址預覽、聊天機器人支援、企業服務 API 整合等深度服務。在過去多年的社群即時通訊市場教育下,用戶的胃口已經變得相當巨大,導致即時通訊變成一個非常複雜的獨立專業產品。
「即時通訊是一個產品,而不是一個功能。」
在現有企業資源都是有限之下,使用資源去滿足這些對標社群即時通訊體驗的用戶?還是使用現有第三方即時通訊 SDK 快速地去做市場驗證,並整合公司產品與服務去創造超乎用戶期待的體驗?如果即時通訊不是企業的產品核心,資源怎麼使用?是否是試圖專心在產品核心,以提升市場競爭力?
就算是一個擁有資源的大型跨國企業,如同前面討論的,又是否準備好編列長年的預算,來維持這個即時通訊產品團隊的運作呢?
關於我們的產品 IMKIT
從 2016 年以來,我們的團隊專注在提供企業即時通訊解決方案 IMKIT,提供包括 iOS、Android、Web SDK,也提供 API 與企業服務進行整合,以用戶體驗導向的 UI/UX 設計,為企業帶來收益與創造價值。
前面所提到自行開發與從外導入的論證,是我們一次又一次與企業客戶訪談及經歷各種專案導入所堆疊出來的經驗。面對企業的產品經理、技術負責人、工程師,甚至是企業決策者,我們可以理解不同角色面對的關鍵問題或決策角度不同,無論是成本控制、風險評估、專案時程壓力、產品迭代效率、市場反應速度、客製化功能彈性等等,
從外導入的方案需要完整解決上述面向,才能在導入過程順利並且有效。
IMKIT 的產品設計就是要來解決不同行業與情境的難題,等同社群即時通訊的 UI/UX 體驗、跨平台的支援、資安考量的私有化部署 Docker 方案、 UI 基礎套件的隨裝即用,甚至是符合企業服務需求的各種 API,我們就是要成為企業的夥伴。