跳到主要內容

你所不知道的 foodpanda

 

image

2020 左右,隨著新冠疫情流行,台灣也逐漸流行起一股懶人旋風。懶懶躺在沙發上,動動手指滑滑螢幕,生鮮或美食就能快速又安全地由可愛的粉紅色熊貓外送員送達您門口。多數人知道 foodpanda 是台灣最大生鮮美食外送平台,也不少人知道 foodpanda 在台灣不斷擴張業務範圍,但 foodpanda 也有許多台灣科技圈所不知道的事。

例如,foodpanda 其實並非台灣本土廠商,也非只專注在亞洲區域。foodpanda 隸屬於德國 Delivery Hero 集團,業務橫跨歐洲、亞洲、美洲及北非,旗下更有十多個生鮮美食外送品牌。除此之外,foodpanda 於 2021 年時也在台灣正式成立全球第三個 Tech Hub。做為四大產品 RD 研發中心之一,台灣與德國柏林、新加坡及土耳其伊斯坦堡的人才緊密地合作,專注於打造 end-to-end 的顧客體驗。諸如月費方案 Panda Pro、外帶自取、餐廳內用 (目前仍未在台灣上市) 等功能。期待能持續吸收優秀人才、與其它三個跨國研發中心合作,打造後疫情時代新的成長引擎。

事實上,台灣的 foodpanda 研發團隊並不僅止於打造台灣本土產品。反之,我們所建立的平台及產品,已成功於近 20 個國家、10 個品牌上市。要在快速的步調下,打造持續進步且符合不同國家文化客戶需求的產品,我們依靠的是

  1. 專案團隊成員一條龍組合
    從 Product Manager、Engineering Manager、iOS/Android/Web/Backend developer、QA、Product Designer、Product Analyst 全都在同一個 product line squad。讓相同產品的團隊成員能緊密合作、第一手快速了解市場、滿足需求。
    image

  2. 國際專業團隊緊密合作
    foodpanda 的 iOS/Android/Web/Backend 等專業工程師,都各自設有其跨 squad 的 chapter 組織。讓工程師能在專案團隊以外,有跨國跨團隊專業能力交流的機會。在 chapter 中,相同技術域領的專家們,會一起制定共同的實作標準、分享在專案中遇到類似的挑戰,並且找出可能的應對方案。因此,在 foodpanda 我們不只打產品專案團隊的速度戰、還打整個集團的整合能力團體戰,讓德國、新加坡、台灣、伊斯坦堡的工程師們用最有效率的方式縝密整合、攻城略地。
    image

  3. 關注個人成長
    foodpanda 的面試關卡極具挑戰性,能夠通過面試進到 foodpanda 的工程師通常都具備獨立作業的能力、有優秀的工程技術、以及良好的溝通和英文能力。除此之外,由於工作性質需開發跨國上市產品、密切與其它國家工程師合作,我們期待能幫助每位成員都能持續成長以面對接踵而來的挑戰。制度設計上的每週 1:1 和主管聊工作中的規劃與挑戰、甚至是中長期的生涯成長規劃,以及各式各樣的學習機會、跨組織連結創造個人及團隊成績,都是 foodpanda 成長文化中不可或缺的一部份。

  4. 致力於建立尊重多元意見的開放團隊
    在 foodpanda 工作,每天都需要與不同國籍、不同專業背景、不同文化的同事合作。我們不斷在組織設計、溝通制度及核心文化上進行精進,期許在 foodpanda 中的每個成員,都能充分表達自己的意見、有了解彼此的管道,更重要的是能彼此包容創造出 1 加 1 大於 2 的效果。
    image

Backend Solution 簡要分享

foodpanda 平台相關集團的品牌在全球多個國家運行,同時,我們的訂單數量也每年高速在增長,至今每月已有數千萬張訂單。為了同時面對高流量的挑戰,且保持系統的可擴充性 (Scalability),我們主要使用 Golang 建置完善的微服務架構 (Microservices),搭配 AWS 服務 (SNS/SQS, DynamoDB 等) 和開源的部署工具 (Kubernetes, Terraform) 來應對這些挑戰。
後端平常再開發時也很常會使用到開源軟體以增進開發效率。舉例來說當我們的微服務想要加入斷路器模式 (Circuit Breaker Pattern) 時,就有使用到 Netflix 的 Hystrix 套件。

Web Frontend Solution 簡要分享

微服務 (Microservices) 對大家來說一定不陌生,隨著容器化技術的成熟,我們可以將原本複雜的龐大架構根據商業邏輯拆分為多個服務。除了有獨立維護的方便性外,擴展和部屬也不會受其他服務限制。而在前端的世界裡,也有著所謂 microfrontend 的架構。

我們使用 react 將視覺組件按組織需求分成不同區塊,讓不同團隊間能夠一起協作。組織上除了解決業務問題,也在跨組織間有密切跨國跨團隊的合作,例如技術債的更新。除了日常任務,我們也會透過 cypress 等自動測試功能導入開發流程,讓新功能引入時,能夠儘快的知道有沒有問題產生。我們也鼓勵大家互相審查交付的程式碼,每次將程式碼推上 github 後,除了進行一連串的單元測試,風格檢查,還會要求跨團隊的的交互審查。這些審查除了幫助我們避免實作的問題之外,也讓不同團隊能夠即時的交流。

以 foodpanda 網頁為例,無論是餐廳列表、菜單,亦或是結帳頁,均是由一個獨立的 squad 來負責開發及維護,並且能做到指定國家/區域的部署。而台灣的外帶自取 squad、餐廳內用 squad 等則負責 end-to-end 組合各獨立元件並添加業務所需要的變化。

這也是 foodpanda 如何在龐大的 codebase 與組織架構下,能順暢地進行跨國跨團隊多人協作的原因。搭配完整的 CI/CD 流程與 Github Actions 快速產生出各個 microfrontend 的 Docker image,也許在你閱讀這篇文章時,我們德國的同事們也正在發佈新版本呢。

除此之外,我們也實作了一套通用的 feature flag system。有 iOS/Android 開發經驗的人都知道,審查過程是如此繁複且冗長,萬一不小心送出了有問題的代碼,很容易造成大災難。

因此有經驗的企業在功能設計都會用 feature flag 來控制功能的啟閉,甚至提供商業維運團隊以A/B Test 進行市場實驗,找出最佳功能、業務組合。而我們的 flag system 除了有直覺的介面外,還能夠設定許多條件,如平台、版本、國家、甚至是特定帳號。重要的是,這些都不必由工程師親自操作,非技術人員也能無礙的進行操作與設定,這也是為什麼我們能簡單的在多個國家多個品牌下實現客製化的原因之一。

給期待挑戰、與世界各地高手們併肩作戰的你

目前 foodpanda Taiwan tech hub,在 squad 中需要的每個角色諸如 QA、Product Analyst、Product Designer、iOS/Android/Backend (golang)/Frontend (react) engineer、Product Manager、Engineering Manager 都有在徵才喔!

如果想了解更多,請參考職缺網頁

Post Credit : Andrew Wu, Derek Tzeng, Hector Yang, Nelson Lin (依字母排序)

留言

這個網誌中的熱門文章

為什麼電視直播比賽總是比網路快?看低延遲串流如何搶秒數

  大多時候,你在網路上看的 Live 直播串流,其實不是與現實世界完全同步的即時轉播,先看看以下這些場景,相信對你來說並不陌生。 NBA 冠軍賽才正看到精彩處,隔壁鄰居卻突然爆出一陣歡呼,原來,用電視觀賞同一場比賽的他們,比你早 30 秒歡呼慶祝三分球入網,不小心點開社群媒體,更發現朋友們早已發文熱烈討論比賽結果。 就像電影被暴雷一樣,少了即時參與的驚喜感、提早知道結局,觀看直播活動的樂趣頓時大打折扣。 或是,收看跨年演唱會時,正當你興高采烈倒數最後 30 秒時,才發現,窗外的慶祝煙火已經此起彼落,大家都已經跨入新的一年,只有你還停留在前一年。 雖然從絕對時間來看,這些狀況都僅有延遲短短幾秒鐘,但在體感上,觀賞體驗卻大受影響,用「失之毫釐,差之千里」來形容再恰當不過。 使用直播串流時,為什麼你的世界總是比別人慢幾秒?原因正是「串流延遲」。 從攝影機到觀眾螢幕的層層關卡 串流延遲,指的是攝影機拍到影像後,直到觀眾端螢幕出現畫面的時間差。 一般來說,有線電視直播約延遲 5 到 10 秒,而 YouTube、LINE、Twitch 等多數 OTT 平台,延遲大多介於 15 秒至 30 秒,距離延遲秒數低於 3 秒的「超低延遲」(Ultra Low Latency)標準,還有一大段距離,這也讓現有直播內容的互動效果有限。 但想克服延遲並不容易,光是一段畫面要從現場攝影機,傳到電腦和手機螢幕,中間所需流程多到難以想像。 KKStream 執行副總李卓軒 Kevin C.H. Lee 解釋,這流程大致包含一開始的攝影機收取影音訊號,接著需轉換訊號、傳輸、上傳雲端、加密、備份,傳到終端裝置後再解碼,最後才是播放。 這整段「螢幕到螢幕」的過程,就像是將包裹從A點運送到B點,只要中間有幾個環節耽誤,就會讓整體運送時間不斷疊加。「每個步驟都要優化,只要有個點延遲很高,加總起來就無法達到超低延遲的標準,這需要很強的技術掌控力。」Kevin 說。 另一個挑戰則在於,由於各大終端裝置原廠(如Apple、Google)雖然有提供低延遲串流相對應的規範,但並未說明實際的執行細節,因此串流技術業者只能自己摸索。 受限於技術瓶頸,目前大多數的直播串流服務,只能在延遲、直播規模和影像品質三者間取捨。例如,常見的視訊會議軟體,像是 Zoom、Google Meet,雖然延遲相對低,但參與人數上...

COSCUP x UbuCon Asia 2026 錄取攤位公告/Full List of Accepted Community Booths at COSCUP x UbuCon Asia 2026

Full List of Accepted Community Booths at COSCUP x UbuCon Asia 2026 COSCUP x UbuCon Asia 2026 Booth now release. See which community you can meet on COSCUP x UbuCon Asia 2026. No. Community Introduction 01 UbuCon Asia HackMD 02 Ubuntu Community & Ubuntu-TW HackMD 03 Cloud Native Taiwan User Group x WasmEdge HackMD 04 Automotive Grade Linux HackMD 05 Ruby Taiwan HackMD 06 Wikimedia Movement in AI Era HackMD 07 t2linux HackMD 08 Twinkle AI HackMD 09 Taiwan JVM team HackMD 10 Interledger Foundation HackMD 11 SITCON Student Information Technology Conference HackMD 12 OpenEverest HackMD 13 WordPress Taiwan Community HackMD 14 OSPN (Open Source People Network) Japan HackMD 15 GolangTW HackMD 16 opencocon distribution HackMD 17 Open Culture Foundation HackMD 18 GDG TW (Google Developers Groups Taiwan) HackMD 19 FediDev KR & FediLUG (Japan) HackMD 20 Blockchain and Distributed Ledger HackMD 21 Open-EP (E-Paper) Community HackMD 22 FOSS for All HackMD 23 ...

你的程式碼,你的硬體,你的 AI。掌握你的晶片未來。Your code, your hardware, your AI. Own your silicon future.

在 Tenstorrent,我們從晶片設計的最底層開始打造一切。我們不只採用 RISC-V,更將我們的擴充指令集規格全數公開。指令集架構 (ISA) 與硬體架構也完全開源。整個軟體堆疊,從韌體 (firmware)、運算核心 (compute kernels) 到編譯器,全都放在 GitHub 上,並採用你真正能用的授權條款 (Apache 2.0 / GPL)。我們的下一代晶片 Blackhole,旨在掃除傳統設計的低效率,讓你直接掌控資料流 (dataflow),實現更高的速度與電源效率。 Blackhole p150 (單晶片,次世代架構): 32G 記憶體,512GB/s 頻寬 387 TFLOPS (BFP8) / 774 TFLOPS (FP8) 大規模可程式化 RISC-V 核心陣列 算子函式庫、編譯器,整個軟體堆疊 — 全部開源 (OSS) 以原生 CCL 達成真正的多卡擴充,拒絕使用 PCIe workaround $1399 Wormhole n300 (雙晶片,經市場驗證的成熟架構): 24G 記憶體,576GB/s 頻寬 262 TFLOPS (BFP8) / 466 TFLOPS (FP8) 大規模可程式化 RISC-V 核心陣列 算子函式庫、編譯器,整個軟體堆疊 — 全部開源 (OSS) 以原生 CCL 達成真正的多卡擴充,拒絕使用 PCIe 土炮 $1499 現已上市。 立即在官網購買運算卡,或在我們的雲端平台上體驗。 如果你受夠了嚴苛的 EULA (使用者授權合約) 或處處受限的記憶體;又或者,你一直想親自動手,深入探索驅動你類神經網路的 C++ 程式碼;甚至想挑戰組合語言,親眼見證它...