關於我轉職變成 iOS 開發者這檔事:終

忙碌了一段時間,一直在想間隔有點久的文章到底該來寫些什麼?

那就來寫個歷程吧!

首先,我的求職過程為期 8 個月,不確定這樣算不算是待業很久,26歲碩班畢業,沒有正式工作經驗覺得很可怕,9–12月份,這 3 個月來各處求職投履不同職缺,3 個月 iOS 課程,1個月面試求職,而且我是沒有正職的工作經驗,雖然有經過短短的實習經歷。但是這現實社會中往往只是個看不太上的經歷吧,在這段期間裡,蠻多不順遂畢竟當時面試完都是沒有消息覺得能力不足,所以寫的東西也比較有限。

這篇文章為學生時期畢業後的經歷,可能會和一般的轉職文略有差別,相對的,會在轉職上課過程和進入公司生活的部分來說明,我覺得這部分非常重要。

背景與自介

還是先自介一下,大學畢業於資工系(升大二從通訊轉到資工),沒具備基礎的程式能力,基本的程式概念是略懂,如變數、迴圈、物件導向,大概可以講得出來一些東西,大學生活實際就是上網找資料拚拚貼貼指定的作業能過就好,完全不懂這邏輯為什麼要這麼寫,連二維矩陣怎麼寫都不知道,再來是重要的演算法、編譯器,完全不會就這樣畢業了。就這樣有點厭倦資工的生活(大學念五年),所以決定去嘗試唸不同科系的研究所想找尋一點人生的方向,意外的研究所也應徵上了,念的是玩具與遊戲設計所,研究所又是另一個故事,這邊我就不會多講,不過這年頭科技業是蠻多人也想洗個 CS 四大學歷之類的。

心態調整很重要

  • 求職過程中一定會因各種原因感到焦慮,投遞履歷沒下文、面試很多公司卻都拿不到offer、公司面試意願詢問後卻再也沒下文…等,再加上家人的壓力,存款已見底,我這段時光會非常的痛苦,因此自我心態調整就很重要。
  • 透過面試過程找出一些缺失紀錄起來,除非你有想進去的公司就要想辦法準備好,我會將面試作為訓練自己的機會,還有考官當下考題我會紀錄起來,於回去後去思考搞次好下次面試又有同樣類型的考題,自己在談吐、表達、回答想法等方面要怎樣修正才會更好。
  • 找想做的事情,千萬不要在家執行,因為怠惰力很高,除了每日看看職缺與投遞履歷之外,可以規劃精進自己能力的計畫,每日小專案練習、線上課程、看相關書籍也好。
  • 與同領域的朋友討論溝通現況,強者朋友有作品集可以展示,前後端和 Server 方面實力都不錯但也是待業半年左右才找到工作,可能是他給自己薪水期待標準比較高吧,不過他也跟我說面試到的公司,都不太想採用沒有正職工作經驗的人。

8月底新創實習結束後,開始投遞履歷找尋工作花了 4 個月,面試的有工程助理、IT 、SI、iOS,網管,FAE,反正跟資訊有關的我全都投遞 60 幾家,大約面試快10家不同產業的工作,最後都是無聲卡或是感謝信,自己被洗臉到懷疑人生,看來很多公司不想要白紙一張,加上自己沒有專業技能,發覺到業界不想選擇沒有經驗的新鮮人,在求職這段期間也有線上課程自學,增加自己的能力,但是發覺根本無法達到我要的效果,開始自覺這項下去沒辦法,待業時期加上學生時期的存款快燒光了,最後做出了決定去轉職上課。

關於我轉職變成 iOS 開發者這檔事
不要還沒有去嘗試,就疑惑自己是否能完成。
https://tor-f.idv.tw/blog/transfer-ios-developer/

 

來到 iOS 孤島生活

在這邊上課,讓我在程式的「自學階段」,對於該怎麼做比較好、比較有效率問問題,是相對有想法和具體做法的,一般人如果直接自學想轉職成功,難度可謂非常的高,要有很強的領悟力,簡單講就是自身天賦技能很高。

swiftGO

1月份正式加入了 iOS 小世界實體課程,在這裡我會說明 TinyWorld 小世界的上課風格
整體來說這裡 R 只收 4 個學生,會先跟你對面談過才會看要不要收你,就是一個很有個性的人,這裏不像外面老師一樣手把手帶者你一步一步來做,全都是依據他安排的課綱來自己來按表學習,讓你學會獨立自學找答案的能力。

簡單的說明就是把你丟在孤島上你只能用手邊的工具活下去,然後求生過程中你要自立或跟夥伴討論怎麼活下去,真的快沒命的時候,可以呼叫管理員出來詢問問題,前提你要心理準備被 R 臭罵一頓 😨,當時我就是被罵最慘的那個,懷疑到我沒有寫 code 的天份,對抽象資料流向的概念很差,當下你會承受非常大的壓力,就看你自己能不能撐下去,總之 R 的教學風格就是”罵”

看你能不能自己接受,當然 R 也會看出妳的問題點在哪裡給予你適度的建議,但是要不要做就看你自己。
我舉個例子,當初問題卡住不知道怎麼辦,被罵浪費時間、馬的為什麼你不開口去問你身邊的學長、你為什麼不準時回報今天的進度的、為什麼不敢講出來、你給我自己好好反省 😨

投履歷

為期 3 個月的時間,今年 4 月初結束課程後,自己也上架了 App 作品,開啟求職為期 3 個星期,開始投遞履歷,也有收到許多公司的面試邀請,在104上面總共投了約 50 家,收到 6 個面試邀請,面了 6 家,最後拿到 2 個 offer,選擇了交通比較方便的接案公司,於是 5月份正式上班,新竹產業都是以 IoT 、藍芽和寫 OC 為主,基本上我是不考慮進入這些公司,因為我是寫 Swift 😂。

投遞履歷的技巧,以 Junior 來說不太需要管職缺開出來的要求條件,很多人以為上面要求的條件才可以丟履歷,其實有興趣的就會邀你面試,你不丟就是沒有機會,有丟就是有機會,投履歷的第一階段就是丟你不想進去的公司有面試的機會就是面個經驗,有第一段的經驗後,第二階段就是丟你真正想去的公司為主,因為前面的經驗讓你已經準備好要怎麼面對了。

聽 R 師父講台灣很多專案公司能不去就不要去,要以有自家有產品的公司為優先做選擇。

乍看這些面試數字也沒什麼的過人之處,確實還很低。畢竟以 iOS 市場需求都想要找有經驗的,所以面完後加上時間經濟上的壓力,就直接決定去邀請我面試的那家接案公司,以我得到 offer 的來說,待遇以無經驗轉職的新人而言,我覺得已經很滿足,加上目前在這間公司環境和專案的學習我個人覺得蠻滿意。

畢竟 3 個月學習到的東西有限,就算基礎打得很紮實,讓你通往的戰場路程會比較好上路,不過話說回來,我自認我的的求職過程和上課並不順利,既曲折又費時,所幸最後堅持了下來。這些錯誤與痛苦才是比較值得一提、能對讀者有幫助的,工作後才發覺的自己能力又更不足處理公司的專案。

來到新創公司開始正式工作

目前現有專案 iOS 上只有我一人開發,Leader 為輔助角色,一進到公司開始接觸專案,當初這案子沒有新需求之前算是完成度 50%,,底層架構都有基礎,這裡要求的全用 code 去打造,畫面完全沒有 StoryBoard ,xib 來輔助使用,你要自行想像 UI 畫面 Build 完的話面,layout 有沒有依照設計稿要求達到目標,所以也算是打掉重練一些觀念,前面 3 個月都是在刻 UI 部分居多,再來串接資料是依照 API 規範來用 Promise 處理 callBack 串接資料丟在畫面上,畢竟有寫好的範例可以依樣畫葫蘆去處理,記住要搞懂每一行到底在做什麼事情,千萬不要複製貼上改個參數能取得資料就好,才不會不清楚整個怎麼處理 API 流程,想當初連 Closure 都不知道是什麼 。

貓咪

新手時期在 Controller 常常塞一堆邏輯,對於架構還是很模糊,連 Design Pattern 都不知道是什麼,當出現特定需求變更時,直接變更原本程式碼。除了可能改壞原本程式功能外,

也會增加維護上的麻煩,加上以前沒有架構實作一個 Services 層 Singleton 的概念,導致 code 越寫越不靈活,接觸到專案架構發現,理解到架構模組化彈性的好處,code 寫起來也比較漂亮。

再來工作上遇到的問題,以我目前狀況對資料整個運作流程常常還是想不出來要怎麼處理?這包起來 Services 底下 func 是在處理什麼、要怎麼套用到其他地方,流程該怎麼規劃,

表面上不一樣底下都是做ㄧ樣得事情?以目前能力的不足,導致開發上進度常常很落後,下班後回家還是繼續處理做不完的事情,可以感受到時程的壓力,常常要衝刺,

也感謝 Leader 跟我對談狀況以及提出建議要去怎麼去更進步成長。

對有興趣的範例,就一個一個字跟著敲出來,要去理解每一行在做什麼事情,把它講出來、講給自己聽講到能理解為止;

範例看完後,全部關掉不要參考,自己全部重新再寫出來,如果你做得出來就表示你已經掌握著了!

每個開發者都是這樣走過來的,只是我在錯誤方向留下紀錄再去做修正,畢竟沒有專業是可以速成的,假日要花更多的時間來學習技能上面的不足。

總結在這短短不到一年的職涯上,以我觀察到工程師職場上3個重要的東西為實力、溝通、自信。

實力

在工程師的世界,實力就是一切,技術能力就是工程師的根本,如果沒有持續進步,那就是退步,每年 WWDC 有很多新技術都學不完,再加上工作你不得不把 bug 解掉和開發增加一堆新功能要去處理一堆技術債,我就是一堆技術債😭。

溝通

不只要學會講,也要學會聽,若是講得不清楚,自己是否要理解到你要表達什麼?我很常敘述問題的表示讓 Leader 無法瞬間理解,講到對方理解我問題點在哪裡蠻花時間的。

自信

這是一種心理層面的東西,只能想辦法自己去克服,可以找個心靈雞湯或書籍來看看去實踐,或者找個高手電一電可能會激勵自己當然你也可能會更挫折很想逃避。

做到現在自身還在懷疑我在這領域沒有天分以及能不能成為獨當一面的開發者為挑戰。

故事說完了,我知道我的文筆寫出來還是很差,感謝你看完這篇文章,就當做是一個菜鳥的心得文吧!

樸實無華

本文同步於 Medium

您可能也會喜歡…