iOS 菜鳥工程師面試 3

在幡然醒悟之後,面試居然還沒結束。

因為我國泰世華的作業還沒做完。


1.國泰世華

我沒有進到面試,交付作業後收到了感謝信 (⁎⁍̴̛ᴗ⁍̴̛⁎)
作業是一個朋友列表的三個狀態:無朋友資料 / 有朋友資料 / 有朋友及邀請資料。
需使用國泰提供的api去撈資料、並依據 Zeplin 刻畫面。
看到 Zeplin 我好興奮,我第一次以工程師的角度看 Zeplin 耶!這會是新常態嗎?我好興奮!

因應需求嘗試了很多結業專題未使用到的技術:
• TableView 的搜尋
• Background Thread下載(我用Task)
• firstIndex(where: (Friend) throws -> Bool) 去合併撈下來的資料
• enumerated().filter 去過濾出 status == 2的資料,成為邀請資料
• Codable
• string formate:使用 CodingKeys + init(from decoder: Decoder),修改日期格式
• 客制 segmentButton
• 實體化 xib:在繼承的class 中使用 initFromNib()

總結來說,超有收穫的🥺
在用constraint時也遇到不知為何無法起作用的constraint
雖然沒有有通過試題進到面試,但做完才知道原來程式可以達成這麼多的事,超級開心🥺
也列下了待學習的目標,例如熟悉高階函數、背景執行


2. 自然互動

專案公司,兩大案源電信公司子公司、銀行業的App,也會做活動類的App,如果有行銷活動就需要更新App。


3. 華芸科技

華碩子公司,主要產品是NAS機器,App範疇圍繞與NAS相關應用,包括照片、影片、音樂的儲存及顯示。當初看到是硬體廠還擔心該不會又是韌體,結果前面筆試中規中矩的考了swift和OC,內容都不算太難,但我現在答題還是回浮浮的(試題中也不斷出現我不懂的KVO

第一次遇到同時和兩位面試官面試,我先介紹了結業專題製作的App,接續是面試官問我技術相關的問題,記憶比較深刻是URLSession的使用我回答不出來(大敗筆),為了展示有串接api的能力還展示了國泰作業,殊不知國泰是提供json直接讓我打,完全沒用到URLSession。

關於華芸科技:

• 使用的語言是OC,沒有改版為Swift計畫,因為code有上萬行

• 需求來自客戶、PM的產品優化

• 請面試官介紹公司的App Team 業務內容,反被問說不知道公司是做什麼就來面試?(很嗆喔,你們是我面試裡唯一不跟我介紹業務內容的面試官)

在面試的過程,可以感受到防衛心。問題結束後,面試官結束面試請我稍待後,我以為接下來還有什麼流程,結果沒有,面試的妹妹進來說我可以離開了。沒有結語、事後沒有感謝信,一切嘎然而止。

因為此次面試,我回來開始看非同步機制跟網路串接,菜鳥要不像菜鳥,除了繼續讀書沒有其他法子。


4. 智勤網路

看著職位需求寫著3年資歷,地點在要轉兩次捷運的橋和站,坐一趟車比內湖還遠,我告訴自己:我拿個試題就回來。

從北投到橋和站,大概要1.5個小時,出站後還迷路,走了10分鐘到達商業大樓。(中和特有廢棄工業風。想當年設計師面試時,去土城面了一間做車聯網的,真的是廢棄大樓。)

終於!拿到試題,但我80%都不會寫,剩下20%模模糊糊的寫🥲

在我寫完筆試後,想說可以簡單聊一下趕快回家,又出現了上 • 機 • 考,看到iMac時,我腦袋一片空白。考試題目要我用WebSocket串接他們的資料(ㄍㄍㄍ,我連RESTful都不熟,你叫我用WebSocket !?)一邊思忖要不要直接出去跟接待妹妹說我放棄考試,一邊想說要不要堅持一下下。然後我就堅持一下下。

感謝這篇文章讓我串通了WebSocket。拿到資料後,開始煩惱要如何把資料存成物件(為什麼你不是標準的JSON物件,嗚嗚嗚),後來用jsonSerialization轉成JSON,取出對應的值後,終於可以存成物件顯示在TableView上了。


堅持一下下之後的結果 


幸好我有堅持一下下。

程式對我來說是個過於不確定、未知、沒把握、沒有安全感的領域。然後我又賊沒自信🥲

做出這個畫面讓我知道,凡是嘗試一下,沒有想像中的困難,而恐懼會遮蔽雙眼,信念建立在每天做的事情上(不斷練習,直至沒有恐懼)。

最後面試官是B,氣質有點像是之前的同事A,看起來經驗豐富。B 一進來我就坦承試題我不會,上機考我盡力了😂,最後快速閒聊,摘錄如下:

• 智勤網路是一間新創,主要做加密貨幣的買賣,藉由Ai自動買賣,為使用者賺錢,在從中抽取收益

• App叫RoyalQ,主要客群是歐美。

• 交易所和交易App的不同,智勤是做少見的加密貨幣交易App。交易所 Ex.幣安

• 談了一下為何從UI轉成iOS的緣由,似乎被聽出無奈(笑

能與資深者對談,從中獲得什麼,一直是面試的樂趣。


5. KKBOX

菜鳥UI設計時的夢想公司,秉持著:就投呀,有什麼好怕的,就投了。

然後ㄍ、ㄍ、ㄍ 試題操他媽超難,要在Codility上面寫,KKBOX還很細心的提供練習連結。練習連結是演算法,被歸類為Easy的第一題:FirstUnique 我花了一整個下午(當初還跟HR說:試題發給我,我今天下午寫一寫,根本智障)

FirstUnique 

在一組Int陣列中會有重複的Int ,例如陣列 A

A: [Int] = [4, 10, 5, 4, 2, 10]

找出第一個沒有重複的Int:

4 重複 

10 重複 

5 沒有重複,他是位置序列最小沒有重複的數字,答案就是 5

而陣列A中的Int值介於 1 ~ 100,000之間,A的 elemetn 數介於 0 ~ 1,000,000,000 之間

FirstUnique是唯一我自己寫的,剩下都Google。

如果想回味一下Codility連結在這裡。

我從星期五開始寫,星期六順便跟 J 吵了一架,因為我看不懂二元樹的題目(TreeHeight),所以 J 解釋給我聽,但說明依然模糊,就吵架了。最後為了合好去水龜伯吃冰,結果隔天腸胃炎,從星期日不舒服到星期一,星期日晚上順便做了一個演算法的惡夢,最後在星期一開啟KKBOX試題,發現跟演算法一點毛關係都沒有。

不過我連題目都看不懂,如果不用Xcode連code都看不懂 🥲

三大題目:第一階段:選擇題10題、第二階段:對String做轉換的Class 和 Struct、第三階段:包含collectionVIew的實做,限時140分鐘。

除了第一階段有寫之外,二三階段連題目都看不懂(英文),超級痛苦。

失敗的嘗試本來就該出現 


是時候面對自己的恐懼(跟J說星期五幫我看KKBOX的試題,恐懼外包)

留言

這個網誌中的熱門文章

排菜單 Privacy Policy

台灣直播商的客群分析