Profile 03 00@2x 0f8539d7f013fd11030f4f7a7b97caf8c2dc5732bc61cba71764f3365c568794

李威諕

擔任Android工程師資歷六年,其中曾任專案型公司 與 固有產品軟體公司。主流開發語言 Java 與 Kotlin都有接觸過。架構方面曾實作過 MVP 與 MVVM 並搭配Dagger、Retrofit、Clean Architecture框架。也有串接過多種官方 或 第三方API 並在 Material Design 規範下的開發經驗。熟悉自己上架APP流程與懂得Gitflow核心精神。希望這些能夠帶給公司正面的價值!

軟體研發工程師
TNN,TW
[email protected]

經歷

KKBOX,2019 年 5 月 - 2020年 6月

知名影音產品公司

獨立負責KKTIX售票產品開發與維護,過程曾架設Jenkins自動化部署Run相關 GradleTask。

重構Android其中包含JetPack Clean Architecture架構實作RetrofitRoom DB

包含espresso自動化測試腳本規劃撰寫。

導入MVVM,並對於Kotlin coroutines略有涉略。


Kdan Mobile,2015 年 9 月 - 2019年4月

最近完成B輪募資生產力工具公司

負責兩項主力產品開發 與 公司些許外包案處理,

有部份 影音串流google地圖 (Direction api開發經驗)。 

主力產品部分則主要負責NoteLedge 與 Animation Desk開發,

其中維護方面導入MVPMVVM搭配Dagger框架,善於引用第三方程式整合與Kotlin。

新功能方面 曾客製多種不同View,撰寫共用Module,

並且熟悉在google material design規範下開發。

精誠隨想,2014 年 9 月 - 2015 年 8 月

精誠集團經融事業群移動平台子公司

專案性質工作,主要負責銀行專案的開發。熟悉RxJava Rerofit 搭配 Json資料格式處理,常與客戶溝通與需求分析,有自行上架多個APP的經驗,包含基本上架流程認知。

臺灣科技大學

在學期間曾任系學會活動長,有良好的人際與溝通耐心。並且在於一些學生專案製作上有獨立解決問題能力。


Paragraph image 01 00@2x

Google 模式

軟體產品價值在於不同於別人的核心技術,是產品保有競爭力的主要原因。


並且身為一名工程師主動發現與解決問題的能力是很重要,我們要完成不僅僅是任務而是發覺一切對產品有利的事情。


我們也需要常常跳脫自己角色,站在一個能看見產品全貌的角度。收集更多數據,以數據佐證產品走向


同時我覺得處於一個產品小組,小組的公開透明是有利於發展的。期許自己能夠做一個開會能夠常常發言提出建議的人。

專業技能


Kotlin

主要使用koin做Dependency Injection,對於kotlin協程Coroutines略有涉略。其餘包括語言特性像是可空性 、Lamda expression、Extension function都有過使用案例。


Flutter

略有涉略過Flutter Dart Based,主要採用Bloc架構,包括BlocProvider與BlocBuilder應用。基礎部分熟悉Stateless Widget與Stateful Widget。


Paragraph image 01 00@2x

敏捷開發

待過兩個以上採用敏捷開發的團隊,並且有實際將敏捷導入一個團隊經驗


自己對於敏捷看法在產品方面,我認為一個敏捷團隊必須是包括各部門產品相關人員,不僅僅只有工程師。就像Google模式提到的組織透明度


敏捷精神方面TDD、持續整合、重構、文件最小化、自動化測試... 都是我認同的核心精神。


流程方面,我的認知大部分團隊一樣。三個角色(SM、PO、小組成員)、四種會議(Planing Meeting、Stand Up Meeting、Review Meeting、RetroMeeting)、三個物件(Selected Backlog、Sprint Backlog、BurnDown Chart)。

專案


網路銀行

負責主要功能開發像是 查詢存提款資料、台幣/外幣轉帳、ATM位置查詢服務......等等。並再專案後期由個人獨立維護並更新。


NoteLedge

負責主要功能開發 包括檔案系統、會員系統...等等,包含專案維護重構、與整合雲端分析工具(FireBase、Flurry)、部份繪圖模組制作


AnimationDesk

負責主要功能開發 包括首頁卡片、會員系統、音軌、影音編碼...,包含專案維護重構、與整合雲端分析工具(FireBase、Flurry)、部份繪圖模組制作。


PDF Reader

負責網路模組改版,使用Retrofit與RxJava建立雲端Submodule



KKTIX

獨立負責產品自動化測試與重構 

更新相關模組。


移轉Flutter開發經驗。


Paragraph image 01 00@2x

測試

測試方面常見是RD包辦測試 或 純人力測試,

曾任團隊有導入 完整測試 並與交流過程 讓我在自動化測試方面有良好的成長。


流程方面在初期利用心智圖來規劃流程與案例,並且在制定玩後開會與開發工程師確認案例與補充不足部分,有種TDD Pair develop概念。


接著會透過制定好案例撰寫自動化,目前我個人在於Android Espresso方面比較有實際經驗,Flutter尚不夠成熟。


在跑完自動化後產出一個測試報表,載明版本與機型與重現步驟...等等資訊。並且我所認知的回歸測試(Regress Test)是有範圍的。


通過上述測試結束後,會進行多方(開發者、測試者、PO、主管)簽署發布。


工作期望


軟體是一個跨產業別的產業,因此會有很多樣的選擇。


個人對於工作的期待來自於人性共善 與 社交天性的認同感,


希望產品本身與使用者有高度互動並且對於社會存有良好助益。


期待組織為透明且扁平架構,每個人都可以早期參與並提出意見。


並在設計上可以遵循Material Design規範來規劃產品,認同不同平台應具有不同產品特性認知。


在開發時程與規劃上,每個開發週期有明確測試範圍,並且能夠按照共同評估時程驗收。


身為一個工程師純粹寫程式技術固然是重要,同時也覺得對於流程軟體工程理解往往影響產品成敗。


期望能夠找到彼此認同理念之工作