關於我
大學就讀電子工程學系,剛好系上課程有C++,VB視窗程式設計與組合語言等和程式設計稍微有關係的課程,於是就發現自己在這些課程上的表現似乎遠大於其他課程,因此覺得程式設計也許是一條路,之後也選修了跨系的遊戲設計與作業系統課程,讓自己更了解程式相關的領域。之後的畢業論文也是用C#寫的抓封包小程式。
在當完兵後,雖然去面試了一下電子廠相關的工作,但想想自己應該不適合,於是找上了中壢資策會的App開發全天班上了近半年。在課程中主要是學iOS開發,使用的是Obj-C語言,但其實從一開始的App設計、Icon與prototype設計繪製、基礎網頁前端HTML介紹與後端PHP基礎、就連安著設計都有稍微帶過。也在畢業前發表了一個有關地圖訊息的小專題。在課程後,也對於App開發與程式設計有更多的了解。
後來找到第一份在電影售票平台做外包接案的工作,很幸運裡面已有一位較資深的iOS工程師可以指導,再加上自己買Swift開發App的書輔助下,在此間公司,自己做了第一隻商用App,並在實際開發上有了更多的經驗,尤其是從零開始建構程式的經驗。而後本來是想去做自家App的公司,就去了開發蘋果票卡客製化平台的公司,想不到竟然是要做凱基銀行外包專案,於是在短短半年做完第一階段專案就先離開了,不過也在這邊第一次將自己做的App上架到AppStore。而後到了第三家真的是在做自家App的公司,是主打現金回饋的平台,在這邊真的是第一次自己包辦用戶端App與店家App,雖然店家端主要是已包Web的方式實作,但也處理了大量與Web間溝通的各種坑與技巧。後來來到了FunNow做即時預訂平台的公司,當初會進來其實跟這邊有比較完整編制的PM與UI/UX與另一位iOS工程師有很大的關係,在這邊除了能跟另一位iOS工程師交流學習外,也體驗到了真正跑Sprint是如何,也再後來有了QA測試的環節,可以說是比較完整的軟體開發體驗了。之後來到最近這家全金集成,除了開始接觸近年很夯的區塊鏈相關產品與知識外,也終於在更資深工程師規劃的架構下,開始嘗試學習使用RxSwift+MVVM+DI的開發模式,並因為是冷錢包,需要使用NFC ISO-7816格式與冷錢包卡片溝通,也接觸了大量Bit與Byte操作的有趣之處,當然區塊鏈本身也是滿多此類的操作加上密碼學相關演算法,雖然硬但也滿有趣的。
到目前為止,基本上App開發上的實作基本都碰過了,可能就剩CI/CD與整個App重構架構比較不熟一點,例如MVC轉換到MVVM之類的,或是影音類的就基本沒碰過了,也希望未來能有機會學習實作以上不足之處。
在一般公司開發工作之餘,也持續關注與購買Raywenderlich網站上的內容,也時不時看看FB開發社群(Cocoahead Taipei, iOS Taipei 與 iOS Dev Club...等),了解更新最新開發資訊,當然每年WWDC就不用說了,而最近也才發現有13開發者週報這種每週的mail可以更快的更新圈內事,覺得開心。平常除了iOS開發外,也在得到上持續學習各種領域的知識,如經濟學、哲學、金融學與歷史...等,累積學分來到768,而除了得到外,一直以來幾乎每個月都會在博客來買書,也持續利用通勤時間看了不少各類的書籍。
雖然主要職業是iOS開發,但也一直持續學習各種領域的知識,也許是我還滿喜歡思考各種奇妙的問題,很多大概是一般人不太會去想的問題,也樂在其中,而我是覺得各領域知識是可以互相融會貫通的。