C17-跨平台開發工程師(Cross-Platform Mobile)_軟體工程開發部
Description
【關於團隊】
●我們是雄獅旅遊的軟體產品開發團隊,負責行動應用服務的開發、維護及持續改善。
●行動App是旅客接觸旅遊產品與服務的重要入口。你將與產品經理、產品設計師、後端工程師、測試工程師及其他技術團隊合作,打造能同時穩定運行於iOS與Android的行動應用。
●我們正在尋找一位真正具備雙平台開發能力的工程師。你需要能理解iOS與Android各自的系統特性、建置流程及平台限制,並能使用跨平台技術完成產品開發、原生功能整合、問題排除及雙平台發布。
【你將負責】
1. 使用跨平台技術開發、維護及優化iOS與Android行動應用。
2. 負責功能從技術分析、架構設計、程式實作、測試到雙平台發布的完整流程。
3. 確保相同產品功能能在iOS與Android上維持一致且符合各平台規範的使用體驗。
4. 串接後端API、外部服務及第三方SDK,處理資料交換、身分驗證與異常情境。
5. 處理iOS與Android的原生功能整合,包括推播通知、Deep Link、權限、相機、定位、檔案及其他裝置能力。
6. 處理雙平台的Build、Signing、憑證、套件相依及版本管理問題。
7. 分析並排除雙平台的Crash、效能、相容性及正式環境問題。
8. 建立及維護單元測試、整合測試與必要的UI自動化測試。
9. 參與Code Review,持續改善程式架構、模組化及共用元件。
10.參與App Store及Google Play的測試、上架、版本發布與發布後觀察。
11.建置或改善行動應用的CI/CD、自動建置及自動發布流程。
12.與產品、UX/UI、後端及QA團隊合作,釐清需求、API契約、設計差異與交付風險。
【必要條件】
●具備iOS與Android雙平台的實際開發及維護經驗。
●曾實際完成可同時運行於iOS與Android的行動應用功能。
●熟悉至少一種跨平台開發技術,例如:
・Flutter/Dart
・React Native/TypeScript
・Kotlin Multiplatform
・其他可同時支援iOS與Android的行動應用框架
●能處理跨平台框架與iOS、Android原生模組之間的整合。
●具備下列兩個平台的基本開發及除錯能力:
・iOS:Swift、Xcode、iOS SDK及App生命週期
・Android:Kotlin、Android Studio、Android SDK及App生命週期
●熟悉RESTful API、JSON、身分驗證及網路錯誤處理。
●熟悉Git版本控制、分支管理及團隊協作流程。
●能獨立分析iOS與Android的Build、套件相依、Crash及相容性問題。
●熟悉行動應用狀態管理、非同步處理、畫面生命週期及資料快取。
●具備基本單元測試、整合測試或UI測試經驗。
●了解App Store與Google Play的測試、簽署、上架及版本發布流程。
●能說明跨平台共用與原生實作之間的技術取捨。
【具備以下經驗尤佳】
1. 曾獨立完成iOS與Android雙平台App上架。
2. 具備SwiftUI、UIKit、Jetpack Compose或Android View實務經驗。
3. 具備Flutter Platform Channels、React Native Native Modules或Kotlin Multiplatform原生整合經驗。
4. 具備跨平台App架構設計、模組化或大型專案維護經驗。
5. 熟悉MVVM、Clean Architecture、Repository Pattern或其他行動應用架構。
6. 具備推播通知、Deep Link、Universal Link、App Link或第三方SDK整合經驗。
7. 熟悉Firebase、Crashlytics、App Distribution或其他監控與測試工具。
8. 熟悉Fastlane、GitLab CI/CD、GitHub Actions、Xcode Cloud或其他自動化發布工具。
9. 具備行動應用效能分析、記憶體管理、離線處理及弱網環境優化經驗。
10. 具備Design System、共用元件或多品牌App開發經驗。
11. 具備行動應用資安、敏感資料保護、憑證管理或弱點修補經驗。
12. 具有電商、旅遊、會員、訂單、支付或高流量行動服務開發經驗。
【我們期待你能】
・同時從iOS與Android的角度分析問題,而不是只確認單一平台可以運作。
・判斷哪些功能適合共用程式碼,哪些功能應保留原生實作。
・理解兩個平台在權限、生命週期、UI規範及發布流程上的差異。
・遇到雙平台行為不一致時,能建立重現方式並找出真正原因。
・不只完成畫面,也會考量例外情境、效能、安全性及長期維護成本。
・清楚說明技術方案、替代方案、風險與取捨。
・與產品、設計、後端及QA團隊共同對最終產品成果負責。