現今全球手機用戶已接近 50 億人口 (> 全球人口 60%),其中智慧型手機更佔了超過 70% 的比例 (約 35 億人)。近 10 年來手機市場迅速發展,市占率已於 2016 年底超越個人電腦。手機的崛起除了歸功於技術的進步,由於手機較電腦於價格上相對容易負擔,開發中國家如中國、印度等國對於近幾年的成長也有不少的貢獻。

從搜尋流量來看,根據 Google 官方數據,在 2019 年有超過一半的搜尋流量是來自於手機裝置,而其中更有 40% 的網路使用者只透過手機進行搜尋;為因應越來越多人透過行動裝置來獲取資訊的趨勢,Google 甚至於 2015 年底推出 AMP (Accelerated Mobile Page,行動加速網頁) 技術,就是為了提升行動裝置用戶的線上體驗。

龐大且仍不斷增加的手機用戶反映了潛在的需求和商機,統計結果顯示,人們於使用手機時,有接近 90% 的時間花在 APPs (應用程式) 上,而應用程式更是有較一般網頁 (及經優化過的手機版網頁) 高出 1 - 3 倍的轉換率。此外,2020 年上半全球手機應用程式 (APPs) 收入高達 500 億美元,除了受到疫情因素的影響,也可以看出手機應用程式的成長趨勢。

手機應用程式的成長同時也意味著 APP 開發相關人才需求的提升。究竟在物聯網 (IoT)、5G、智慧型穿戴式裝置等技術/產品的普及下,應用程式及相關開發人才需求會有甚麼樣的成長及值得注意的趨勢呢?

CakeResume 求職平台提供豐富、優質的網路科技業職缺,其中平台上的求職者更有超過 30% 為軟體工程師。由於長期以來蒐集許多有關於各類軟體工程師找工作的提問,因此推出一整系列軟體工程師 (前端 / 後端 / 全端 / DevOps / APP) 找工作的文章,內容包含薪資情報、熱門職缺、面試準備等關鍵資訊,身為軟體工程師的你千萬不要錯過!

APP 工程師薪水及人才需求

由作業系統來看,Google 的 Android 及 Apple 的 iOS 擁有 98% 的全球市佔率,因此本篇將以 Android 工程師及 iOS 工程師為主軸。

軟體工程師的人才供給及招募需求

從前言可以看到,人們使用手機的頻率及時間於近十年快速成長,甚至有超過使用電腦的趨勢,近年來蓬勃的 APP 開發工程師培訓課程也讓相關人才的供給大大提升。從 CakeResume 平台上約 12,000 位軟體工程人才的專業進行分析,約有 20% 擁有 APP (應用程式) 軟體開發相關的技能;從需求端來看,CakeResume 平台上約 2,000 筆軟體工程師職缺中,約有 21% 在尋找 APP 開發人才。

軟體開發的人才供給 (CakeResume 數據)
軟體開發的招募需求 (CakeResume 數據)

再進一步分析 APP 開發人才的供給與需求,可以看到企業端對擁有 React Native 開發經驗的人才有不小的需求,然而要注意的是,多數企業仍會要求 React Native 人才需至少了解一種 APP 原生語言 (如:Swift, Objective-C, Java, Kotlin),或擁有 iOS / Android 原生開發的經驗。



APP 工程師人才的招募需求 (依語言)

接下來針對於 CakeResume 求職平台上約 350 筆 APP 開發工程師 (APP developers) 職缺做統計 (已過濾薪資範圍> 1.5 倍的職缺,以減少誤差)。從下圖可以看到約 51% 的職缺要求應徵者需有 Android 應用程式開發的能力 (Java or Kotlin),而約 42% 的職缺要求 iOS 應用程式開發的能力 (Objective-C or Swift),Android 工程師的需求高於 iOS 工程師的約 10%。

從開發的程式語言來看,Android 工程師職缺中 Java 占了 80%,雖說 Kotlin 成長快速,然而不少大型企業由於轉換系統的成本考量,仍選擇持續使用 Java,Kotlin 職缺則多見於新創公司;iOS 工程師職缺中 Swift 較 Objective-C 佔比多了約 15%,可見兼顧開發速度及執行效能,且容易上手的 Swift 已漸成為公司開發 iOS APP 的主要選擇。

APP 開發人才的招募需求 - 依語言 (CakeResume 數據)


iOS 工程師 / Android 工程師 薪水統計 (依語言及資歷)

CakeResume 平台上初階 APP 工程師的起薪約落在 53,400 元新台幣 (/月),中高階 APP 開發工程師的年薪則接近 970,000 元新台幣。

APP 工程師薪水統計 - 依資歷 (CakeResume 數據)

iOS 工程師薪水和 Android 工程師薪水從開發的程式語言做分類,月薪以 Swift 最高,約落在 64,000 元新台幣;從年薪來看,Android 工程師則高出 iOS 工程師約 10 萬元新台幣,推估因 CakeResume 平台上以年薪做為待遇標準的 Android 職缺多為招募中高階及主管資歷的人才。

此外,下圖從年薪的部分可以看到,較新的語言 Swift 及 Kotlin 分別高出 Objective-C 和 Java 約 10 萬元新台幣,可見於台灣經歷能稱得上資深的相關人才仍相對匱乏。

APP 工程師薪水統計 - 依語言 (CakeResume 數據)

熱門 APP 工程師職缺統整

iOS 工程師職缺

【初階】

徵才企業招募職缺薪資待遇
資拓宏宇行動銀行 iOS 開發工程師55K ~ 90K TWD/月
保利智能
iOS Engineer60K ~ 100K TWD/月
Snapask TaiwaniOS Engineer660K ~ 1.2M TWD/年
Garmin Garmin Asia 研發中心 -
軟體工程師 (Mobile Apps)
1M ~ 1.5M TWD/年
Oursky Web / Mobile App Developer 軟體工程師900K ~ 1.6M TWD/年
群暉科技 Synology Product Developer (行動應用軟體開發)1M ~ 2.5M TWD/年

【中高階】

徵才企業招募職缺薪資待遇
PicCollage 拼貼趣iOS Developer900K ~ 1.5M TWD/年
Tomofun Sr. iOS Developer 資深 iOS 工程師900K ~ 1.6M TWD/年
iKala 愛卡拉Senior iOS Engineer 資深 iOS 工程師1.2M ~ 1.6M TWD/年
SWAGSenior iOS Developer / iOS Team Lead1.3M+ TWD/年
天堂遊戲Sr. iOS Engineer1M ~ 2M TWD/年
GrindrSenior iOS Engineer1M ~ 2.5M TWD/年


Android 工程師職缺

【初階】

徵才企業招募職缺薪資待遇
WeMo ScooterAndroid / Embedded Software Engineer700K ~ 1M TWD/年
SWAGAndroid Developer700K ~ 1.1M TWD/年
MixerBox【新鮮人月薪 10 萬起】人才培訓計劃:
Android Engineer
100K ~ 100K TWD/月
Snapask Taiwan Android Engineer660K ~ 1.2M TWD/年
PicCollage 拼貼趣Android Developer900K ~ 1.4M TWD/年
訊真科技Android 軟體工程師 (SystemUI)1M ~ 1.8M TWD/年

【中高階】

徵才企業招募職缺薪資待遇
Dcard 狄卡Senior Android Developer800K ~ 1.3M TWD/年
香港商錢匯(Senior) Android App Developer1M ~ 1.3M TWD/年
OpenNet 開網Android Engineer - Android 工程師650K ~ 1.5M TWD/年
時刻科技Android 軟體工程師900K ~ 1.5M TWD/年
ROEHLAndroid Developer/Sr. Android Developer800K ~ 2.4M TWD/年
GrindrSenior Android Engineer1M ~ 2.5M TWD/年

APP 工程師履歷撰寫技巧

  • 若你已經不是初入職場的新鮮人,建議可以移除自傳、大學社團經驗等相關性較低的內容,並多著墨於目前職務主要負責的項目及運用的專業技能。
  • 於履歷中加入作品集,包含工作上負責過的專案或在業餘時間進行的 side projects。切記在履歷送出前再三檢查連結是否仍有效及內容是否有嚴重錯誤或不適合公開的資訊。
  • 納入可以為你加分的項目!不論你是對開源專案或社群有貢獻、擁有 UI/UX 能力、擅於團隊合作等等,只要與應徵的職缺和公司文化相符,並且搭配具體事蹟,這些經歷都有機會幫助你脫穎而出!


iOS / Android 工程師面試攻略

iOS 工程師和 Android 工程師職缺的面試流程主要可以分為技術測驗面試提問

技術測驗的內容主要涵蓋三大部分:

  • 作業系統 (iOS / Android) 相關
    e.g. iOS / Android 函式庫 (library)、架構、設計規範、測試、開發工具 ...
  • 程式語言相關
    e.g. iOS: Objective-C、Swift;Android: Java、Kotlin
  • 資料結構及演算法

iOS 工程師面試題庫 - GitHubToptal
Android 工程師面試題庫 - GitHubToptal

由於技術測驗的題目於網路上已十分齊全,本文將不再贅述。

以下羅列 5 道 APP 工程師常遇到的面試提問:

  1. 請問你是如何學習 iOS/Android 開發的?
  2. 請問你是透過甚麼資源/管道獲取相關科技、技術的資訊?近期有看到什麼有趣的技術和討論嗎?
  3. 請問你最近一次於手機上下載的 APP (應用程式) 是什麼?請分享你最喜歡的 APP,並分析其架構。
  4. 請問在先前的 APP 專案中,你負責的部分為哪些?請分享過程中遇到最困難的問題,及後續的解決方法。
  5. 請問先前有使用過哪些第三方 Library/套件?請分享你管理第三方套件的經驗。

最後,也記住要把握面試中一定會出現的題目 – 「請問你有什麼問題想提問嗎?」。

面試問什麼問題?

面試是一個雙向評量的過程,在公司審核你是否具備足夠的技術、能力以勝任該職缺的同時,你也要把握機會釐清這個工作環境是否能夠帶給你足夠的成長動力。

以下提供幾點評估方向給求職中的 APP 開發工程師做參考:

  • 團隊中是否有能力相仿或甚至更厲害的夥伴能夠相互激勵和支援?
  • 團隊的技術討論風氣興盛嗎?有沒有共同學習、成長的目標?
  • 公司是否重視軟體品質,落實 CI/CD 及寫單元測試?
  • 公司的開發流程為何?是否存在顯著的問題?
  • 公司近期是否有新的產品計畫或經營目標?

應用程式 (APP) 的 5 大未來趨勢

  1. 5G 科技
    今年 (2020) 7 月 5G 於台灣正式上線。5G 技術能夠大大地提升傳輸速率 (上傳/下載速度),同時降低延遲 (回應時間)。隨著 5G 的普及,可以預期行動裝置 APP 功能的提升,此外開發者也得以在不影響應用程式表現的情況下新增功能;同時,5G 網路的速度也能夠提升 App 軟體工程師開發及測試的效率。
  2. 物聯網 (IoT)
    隨著物聯網的興起及相關技術的成熟,日常生活中的相關應用也變得廣泛,如智慧交通、智慧醫療等。在越來越多實體物品與網路串連的同時,其中也有不少是透過與行動裝置的應用程式做整合,來達到方便性的提升及控制的自動化。
    IoT 的普及可以預期將會有更多與應用程式 (APP) 做整合的案例,最常見的如智慧家居,透過手機應用程式來操控家中的電器用品,達到生活便利化的目的。
  3. 智慧型穿戴式裝置
    作為上一點 IoT 的延伸,穿戴式裝置的興起也為應用程式 (APP) 帶來更多的發展空間和機會,智慧手錶、智慧手環、智慧眼鏡、智慧耳機等各式穿戴式裝置不斷湧現,兩大科技巨頭 Google 和 Apple 甚至早在 2014、2015 年分別推出智慧型手錶的作業系統 Wear OS 及 watchOS。
    現今的穿戴式裝置市場仍有需多發展潛力和空間,在 2019 WWDC 大會上,Apple 發表了Apple Watch 的新作業系統 – watchOS 6,允許 iOS 工程師開發獨立的 Apple Watch 應用程式,使用者可直接於裝置上進行下載。此舉可預期未來穿戴式裝置對智慧型手機的依賴性將降低,開發人員也得以針對裝置研發更適用的應用程式。
  4. 人工智慧 (AI)
    AI 對於行動裝置 APP 的影響可以粗略地分為產品開發的層面及應用程式功能的層面。
    從產品開發的角度來看,AI 除了可以讓開發的流程更加自動化,在軟體推出後也可以幫助開發者更有效地追蹤、分析使用者行為;從應用程式功能的角度來看,AI 可以應用於生物辨識 (人臉辨識、語音辨識)、翻譯、文字與圖像分類等功能,擴大開發人員的想像空間。
  5. Beacon 技術
    Beacon 技術能運用於各式行動裝置,包含智慧型手機、平板電腦、穿戴式裝置等等,透過低功耗的藍牙在一定的實體範圍內建立一個資訊網絡,常應用於訊息的推播及室內導航/定位。Beacon 技術現今已被應用於多項產業,如零售、醫療、旅遊業等。雖早在 2013 年推出,Beacon 技術在近幾年因 IoT 、行動裝置等技術的進步,已發展出更進階的應用,尤其是在行銷領域。

《軟體工程師找工作》系列文章