好多個 28 在這個時刻

工作近況

整合

整合產品就麻煩的環境問題,尤其是大型程式開發,現在又同時有併發、平行等需求,其他產品的優化方式非常特別,各自測試都沒有問題,一整合就出事,接著就是一陣暴打如發生以下幾種狀況,不外乎就是連繫到我身上。

  1. 噴了一排錯誤,但第一個警告訊息來自你負責的功能
  2. 許多執行緒的 stackstrace 錯誤,列表第一個的你負責
  3. 負責整體監控系統,註冊了所有錯誤訊號處理,你回報了錯誤
  4. 噴了一個錯誤,stackstrace 貫穿了好幾個函數,而你是最後一個

滿滿地無奈,在這如此大型的程式開發下,沒有多少人能釐清問題所在。分工之細,只能四處找人通靈。

十月過後,工作就滿四年。在這四年間,代碼的提交次數也逼近七千次,登上了第一位。一部分的原因也在於修改的技術面比較通用,只要出現一則鬼故事,就得去調整整體的使用方法,再透過正規表達式去修正所有關聯代碼。但不是那一種單檔修改就一個 commit,數量之多會拖累前測的工作量,再來是 revert 操作可能過於複雜。的確看起來很不軟體工程,無疑是有點特殊狀況。個人佔有如此大的修改比例,很容易引火自焚,瑣碎的小錯誤都只能交付到自己。在緊急狀況下,與其用講的交代下去,不如一肩扛起,工作量便越來越不樂觀。

測試

拖了一年的規劃,總算把 JDI (Java Debug Interface) 掛上了覆蓋率測試,不同於單元測試的覆蓋率。原先的單機框架中,動態分散測試點到不同的 JVM 平行測試,盡可能地達到負載平衡,因此就不知道怎麼搭覆蓋率的套件,最後不得不讚嘆原生的 java agent 和 reflection 機制,偷偷用了一些黑技術才完成。覆蓋率終於由 16% 提升至 36%,以後就更方便知道哪些檔案有測試。

待續

忙了好一陣子的 tcl interface,上層下指令要有些做好 3D Viewer,兩年前規劃的 3D Viewer 恰好派上用場給個交代,那時嘗試做了一個小原型,也未能滿足所有需求。實際做起來問題之多,就像玩了十年的《楓之谷 Maplestory》,突然要求做個 3D 版本一樣,如何操控角色、過場動畫、使用模型、載入模組等問題逐漸浮出,一個人恐怕做不好。跨平台環境的戰爭,肯定在等著我。

生活雜事

Serendipity

交友方式千奇百種,曾經讓朋友在我忙著 coding/論文的時候替我回覆訊息,結果幾年後湊了一對基友。9/15 那日,ptt 上收到來自一個多月前的文章回信,自述「受朋友委託,幫忙在 github 看我曾寫的 source code,感興趣便跑去看部落格文章,追了幾篇文章,其中提到 ptt 文章 … 然後就送信了。」那時我心想是哪一個 source code?卻看到「批改娘」,第一個反應是「學弟是不是用美人計想騙我回實驗室」。

「他們是打算讓我們工作到死啊」《異世界迷宮黑心企業》

某日夜晚

一般來說,在路邊看到漂亮小姊姊能閃則閃,因為十之八九都是推銷,一旦下起雨來,也只能硬著頭皮上了。果真還是被纏上了,甚至跟著撐傘走一大段路

「你們哪間公司的?」正想著甩掉
『O O O O』
「這個我知道,之前有告過你們公司耶」
『那沒事了,謝謝』
朋友普遍表示:「都沒被搭話過,我看起來又窮又宅 … 我不在她的考慮範圍內 …」

「我不在他的考慮範圍內嗎?」《加油吧同期酱 》

某日清晨

朋友普遍可以做到「還沒睡著,天就亮了」、異常的我則是「醒來,天還沒亮」,深刻體會到自己老了。從小就被訓練得很早睡,隨太陽而起。嘗試的那幾次熬夜,隔天都不太像自己。而飛往美國出差的那幾次,調時差的自己就像廢人。

某日正午

高中資訊老師打了通電話聯繫我,這不是第一次,仍然能讓老師們記得,備感榮幸。大學畢業前詢問我要不要回去當老師,那時的我正苦惱無法通過畢業門檻。現在被感覺好像步入正軌,實際上在職場上卻感到力有未逮。這一次,被交付指導小學弟一些程式問題,而那是曾經我出的題目,那時的技術力也不夠成熟,老是被說測試資料不夠好,被指出標準答案的一些漏洞,想起來就是滿滿的黑歷史。

老師隨口一句「現在在哪工作? … 結婚了沒?」不經淚下,在公司合作的老同事,也聊著聊著問道「聽說升了主管,不錯哦。 … 這麼快就吃完飯,在家工作?有結婚?老婆了嗎?」已經回不去那個幼稚的我,也得開始面對人生課題。

二十八

恭喜 morris821028 抵達了 28 歲,老是想小小地抱怨,要是 11 月生,整串就是可以迴文了。海外的小夥伴總是覺得 1982 年生的老傢伙,怎麼這麼活躍。

住址上滿滿的 28 號碼,近期稅單上也正好著 1028,繳費單上也也有不少的 28,就像著「巴德爾邁因霍夫現象 Baader Meinhof Phenomenon」 其中的證實性偏見,巧合般的重複,不斷地在意著。

不同過往的日子,難得在生日那一日,走出房門,體驗著好多沒想過的事。

Read More +

被預告要開始管人的我,今天開始學管理?

「25 歲的年紀、35 歲的外表、45 歲的認知」那便是工程師的最高境界!

在家工作

種花電信

在家工作最痛苦的無非是網路不穩,炎炎夏日更要顧及數據機的穩定。不幸地,卻發生每晚的七、八點固定網路中斷,操起了畢生所學的技術檢修,仍無法理清頭緒。打給中華電信客服的熟練度,在那幾個夜晚裡迅速地提升,對於那一端的《夢中的婚禮》的好感度卻持續下降。檢修技師來了幾次,換了數據機仍然持續斷訊,連帶的 MOD 也跟著中斷。

白天工作 12 個小時用公司筆電都沒事,用個人電腦反倒出了狀況,就像在提醒我該休息了。技師後來也跑累了,

「斷網的時候打電話跟我說,遠端過去檢測」技師這麼說道。難道活在中英夾雜的圈子久了,連基本中文都聽不懂了。
「都斷網了,你要怎麼遠端?」帶有懷疑地口語回覆
「喔,也是」技師恍然大悟地應聲
看來又一個工作累壞的。
「接下來,麻煩斷網的時候您自己扛著筆電去每個中繼節點下指令診斷並紀錄吧」

突然明白,原來我的技術已經成長到可以檢修,後來把 WIFI 小烏龜換了一台,問題就解決了,也許是訊號回沖導致主要的數據機當機,至於為什麼是那個時間點呢?可能跟習慣有點關係,或者是監視器設定的影響。至於,為數據機採購的散熱風扇,就當作促進經濟吧,默默塞回弱電箱。

那些事

最近由於線上購物和種花,還是會忍著接陌生電話 …

「這裡是 XX 銀行,有不錯的投資標的 …」銀行證卷打來
「抱歉,我喜歡現金」 另一端馬上就傳來了嘟嘟聲

「先生您好,我們提供車貸服務 …」來自車貸業務
「抱歉,我都用現金」一瞬間就嘟嘟聲

「您好,這是政府立案單身聯誼 …」來自單身聯誼
「都說了,我用現金」不耐煩地回應

嘟嘟 …,額不是,聽我解釋 …

《小林家的龍女僕》

工作狀況

這幾個月來,又被分配了不少面試候選,有別於先前的實體面談,疫情關係全都改成了線上面談。對我而言,線上面談更能清楚聽懂對方的表達,不受外表因素的影響。不意外地,仍有不少牛鬼蛇神混入其中,對於母校都失去信心。

看著一輪又一輪的自我介紹,對於新人而言,最自豪的大概只剩下碩士論文,變成口試委員的感覺實在不好受。談完都有一種「這樣也研究所畢業?」,而內心則想「資訊領域這麼大,實作算什麼了對吧?這個要進來訓練?」要是我當初這樣做簡報報告,肯定在台上被罵到下台休學。

《小林家的龍女僕》

實在找不到完美合適的人,標準也逐一放寬,結論「原來當年的我,真的是主管所說的『挖到寶藏』」。接下來,不斷地被提醒「如果發覺其他人陷入泥濘,要適時地提醒」,要規劃教學文件,設計 SOP 流程,免得菜鳥們重蹈覆轍。可是名下沒人,說話也不是這麼地有威信,卻又不斷地被說「你要知道,你就是最厲害的,不用這麼謙虛。」但在我經驗裡,更厲害得人可多的呢。接下來,真的要接新人來管,而我才幾歲呢?

《小林家的龍女僕》

新的挑戰

不知道哪根筋不對,突然跑去 O2 版上發文,試試水溫。

沒意外地,來信很熱誠,看到咱的真相卻?就像撲通一聲入水的小石,便也沒有了後續。從相親的那段經歷,體會到若想強行讓兩條線交會,沒有像黑洞那般的吸引力,是無法使其拐彎的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 標題 [徵女] 我要用什麼樣的速度,才能與你相遇。
# 看板 AllTogether
# 時間 Wed Aug 11 22:01:01 2021
-------------------------------------------
# 關於我
1993/172/70 花蓮人 資工碩畢 台北工作 外商RD 有車位/沒車 母胎單 沒貸款
不菸不酒也不帥,宅了不少動畫,就如標題「我要用什麼樣的速度,才能與你相遇」來自
於《秒速5厘米》,日美韓劇都有涉獵,一點點鋼琴,一點點桌球。遊戲只有始終如一的
楓之谷。
基本上在家工作一年多了,也開始自己採買與下廚,不怎麼偏好美食,味覺遲鈍。大部分
的技能點都跑去了專業技能上,距離成熟的社會人還有段距離,最近卻要在職場上煩惱人
與人之間的溝通。
國外出差幾次,目前沒有旅遊愛好。由於工作內容,習慣考慮周詳、思考最壞狀況,一旦
要做就不能做差的處事態度。
目前在林口附近,希望能交些朋友,彼此成長。
# 關於你
* 有專業技能養活自己
* 不菸不酒

影集心得

《火神的眼淚》

台劇 《火神的眼淚》 像個刁民現形記,太過真實不敢直視。劇中許多有理說不清場景,離我們並不遠,應付著普羅大眾眼中的責任外,還得背負那不為人知的壓力。

研究所當助教時,體會只要敲錯一個指令,兩百名學生的成績權益會受到影響,平常提心吊膽處理著伺服器。沒 SOP 流程,也沒相關經驗,只靠過往經驗謹慎行事,每敲一個鍵前都要設下好幾條防線,最後那一刻,手還會抖。

工作也會相同感受,想到能理解接下來的實作正確性的人,估計是沒有了。但又為了交付幾個月前的承諾,這一個方法必須下去,目前看不出問題,不代表上戰場時不會發生問題,猶豫不決,應付客戶的 AE 得收砸出來的爛攤子。反而越接近收尾,決策就越慢 …

《攻敵必救》

《攻敵必救》 (Miss Sloane, 2016)

「有時我們行動不是為自己,而是相信是做對的事。」
「我不知道界線在哪裡,我一直不知道怎麼衡量」
「我寧願有正常生活,也不要這個技巧」

《所以我和黑粉結婚了》

韓劇 《所以我和黑粉結婚了》 ,出戲的配角台詞 「 我有一個新企劃,你沒有興趣一起?

Read More +

疫情下的工作變化

居家工作

去年開始越來越少去公司的我,遇到四月的疫情爆發,便順理成章地不去公司。以前還會偶爾跑一趟台北,完全不用去公司的感覺挺不錯的,但是其他同事可能就無法接受,畢竟租屋或住家並沒有理想的工作環境,沒有相應的螢幕、鍵盤、滑鼠麥克風等配備,筆電雖然五臟俱全,但在開發效率上就顯得不足。

更無法想像的是,除了工作日以外,一般居家都沒有這些基礎配備,這群現充們都在做什麼?實在令人稱羨。反觀,對我而言,那些是維持生命的器材。想著搬離租屋環境,於是下訂了 Dell P2721Q 這款 4K 螢幕來開發,得處理渲染效能與硬體上的問題,就得多一種硬體設備來測試,連帶修整了耳機麥克風,好好地進行整線配置。

公司終究是不屬於我的地方,座位上的雜物一天比一天更空。沒法像其他人,把公司當家,可以堆一大堆用品。在家有自己的小天地,好好投資的感覺相當踏實,至少省去了以後搬走的困擾。

薪資談判

「不對,是能有多少思考本質的能力」—《東大特訓班2》

從去年開始,就不斷跟主管講薪資太低,不管是我的、還是同事的,一直找不到中意的人才,肯定有它的道理在。參加會議的時候,Meet.jobs 公司開薪資起跳就兩百萬,先不論中間有其他額外的契約條件,起碼還是有可談的條件。年底又有一波 Google 大批招人,那時跟主管警示了一次,公司到底要收怎麼樣的人,只在意找人,看起來留人是未來的課題。難道,只想辦法讓台灣分公司突破五百人,還開個慶祝會,不考慮到底是找什麼樣的人嗎?在台北分布的我們,卻感受不出來那個向心力,也沒有什麼實體慶祝會。

不少半導體大廠很賺錢,像 MTK 就不斷地在新聞打廣告,碩士起薪 150 萬、博士起薪 200 萬。我們做了什麼、能做什麼?將這些訊息向上呈報,也不見聲響。早些年,說幫我談有博士資格的起薪,現在回過頭來看,只能算勉強達標吧。

外傳我們部門很挑人,的確有很多人工智慧、機器學習、深度學習的 green hand 被我們刷掉,一開始的確按照 Google 等級的難題在找特殊領域的奇才,根據基礎底子標準來刷掉。現在面試只考一個費波納西數列,牛鬼蛇神馬上現身,leetcode 上的題型背一背是趨勢,那就偏不考那種制式化的題目,沒有明確要怎麼做,就沒有標準答案,就看心中的定見有沒有特色。

的確,這幾個月來陸續有人離開,但仍不想隨便補人,就怕未來鬼故事太多。可能不會有鬼故事,就怕產品原地打轉。換換別人來面試吧,線上面試這種考驗人心的方法,沒辦法預設人性本善,被騙了太多次,最後工作量暴增的我,沒有特別在期限內有特別突出的開發,反倒收拾不少殘局。

工作突破

半導體製程的演進帶動了一堆需求,不只效能要好,還要記憶體用量正常,俗話說一點就是要跑得動。越來越多客戶,開始規劃要將近數億的數量級的資料庫管理,本身早已處於高度壓縮的資料庫設計,但會這樣的設計影響即時的運算效能、開發難度、以及設計彈性。

因此,最近幾篇的技術文章都在探討記憶體的使用,甚至靠這些設計概念,滿足了原先的彈性,去除了雜湊表,效能還提升,內存使用更少,數方雙贏的局面,讓產品走得更久。目前產品已經滿足所有需求下,回歸了正常的 capability。

不知道為什麼,開心不起來。

《86 不存在的戰區》

Read More +

前思後想 新居落成

截至這半年來,人生成就上沒多大的變化,除了工作也沒有其他說得上嘴的娛樂。

前思後想

相親了幾次,過年那段時間,對方趁著女兒回家一趟,就順道提個活動認識一下。但對方還沒大學畢業,大概也想不到那一塊去,而我這個宅宅更不是女性首選清單。活動說要聊一聊,但專心在完全不擅長的活動內容上,讓我比較舒心。畢竟,那些小女孩還有大把的時間過濾清單,又聽女方經常說「XXXX,沒別的意思」此話一落,我就真的沒什麼意思了。

之後在咖啡廳見了一次,在對方家人婚禮也見了一次,被拉去合照,被抓去婚宴台上參與活動。此時,內心滿是焦慮,對方似乎就沒那個意思。在這幾次過程中,感覺都是對方父母滿意,實際上一來一往感受不出任何互動。反倒是,與未曾蒙面的女網友討論相親一事時,互相揶揄相親經驗,這樣算起來比較像朋友。

「交個異性朋友很難吼,之前還笑我 …」
「那我們當初怎麼當朋友的?」
「我也不是很清楚」

「我也不是很清楚」—《悠悠哉哉少女日和 Nonstop》

「相較於幾年前,你也變化得很多,聊起來的感覺差很多。」對方說道

倒是覺得自己沒什麼變化,只是更會搭唱罷了。沒機會收到對方的抱怨或幹話,其他話題可是一竅不通,當然感受不一樣。想想以前的話題,不是玩就是花錢,我完全搭不上邊。

新居落成

今年一月底的時候,決定買了一間小華廈,三房兩廳兩衛含車位。主管不給力的情況下,當然是買不起大台北區,反正也遲遲交不到女友,還是得過自己的生活,老是跟著高中同學在台北合租,每個都帶女友一起生活,日久傷情。過得很簡單,卻稱不上好,找不到一個理由過得更好。縱使街道上車水馬龍,卻無比孤單。從去年夏天一個人運動跌倒,提著半面血痕走了一大段路回租屋處,無法言語傳達的感受,更促使著想離開的心境。

在疫情剛開始的那個時候,便約了房仲看了幾十間,也在盤算手頭上有多少錢,到底要不要貸款,要的話要貸多少?那時看的房子,還無法符合經濟條件,突然間題目馬上難起來。不同於同事們一開始就生活在台北,對地區生活很熟悉,更不需要在外租屋。大多數搬出去的原因都是要跟女友同居,或者想嘗試獨立生活,心生羨慕啊。要是我老家在台北,大概會被罵得連這點錢都不省,有家還不住。

到了一月中,帶著爸媽又跑去看了一輪,馬上就下決定。當天斡旋,隔周簽約,原本預計 45 天內交屋,但中間遇農曆新年,又多拖延了一週。不斷地與房仲、代書接洽相關事宜,在每一個階段跑銀行處理履保帳戶。再跟家人借點錢,畢竟身為一個工程師的貸款利率還是高了點,並且還是浮動利率。此時都在懊悔,要是有一個軍公教的另一半,就不用這麼傷腦筋。

「一直以來,我都是急切地想讓自己一個人解決所有問題」—《無職轉生》

不貸款情況下,再三確定不跑銀行貸款,三催四請提早一周,在三月中交了屋。交屋前一週把網路申請好,交屋當日下午,床櫃子書桌都請家俱行老闆一次服務到位,同樣地,晚上家電冰箱電視洗衣機,全國電子安裝人員一次做好。家裡要求做事要果斷下決定,前幾周跑了不少店家去想要怎麼布置,又跟房仲約了幾次量測房子格局。最後,有幾處稱不上滿意,但以我一個人的人生經驗下這類決定,已經盡力了。

當天就這麼在新家睡了,隔天再跟老爸北上跑一趟,一次把租屋處的雜物全部清空。爬老公寓五樓,真不是鬧著玩的,還得扛著自己大包小包的雜物。很早就設想自己會搬家,租屋就一直不敢買太多東西,但仍然要爬個幾十趟,不意外地,隔天的腿抬不起來。

《悠悠哉哉少女日和 Nonstop》

熟悉 一個人的真生活。一開始倒垃圾時,左鄰右舍都很在意地問「一個人生活還得煮飯倒廚餘?」這一個問題,我也有。沒有台北那樣繁榮,下樓就有得吃,在這裡自己煮點也沒那麼誇張吧?一直都是粗養,美食品味造成影響,心理狀態沒有問題。陸續的幾個月裡,處理一些家俱的毛毛角角,浴室的排水排空清潔,聯絡安裝冷氣與清潔。跑了好幾趟五金行,處理居家生活細節,得全部親自動手做。

開個宴席請公司同事們吃個飯,約離職的大姊姊回來聚聚,其他離職的小夥伴都在美國就有點小難過。再邀邀一些朋友來家裡作客,聊聊一些生活經驗,聽聞學長們只想在台北買,也即將在台北市買房子,突然發現自己也不是做了大決定,都不及學長賺的一半,痛心明白,難怪我還找不到另一半。

當然相親一事尚未結束,偶爾還是有一點風聲,就是一點風聲。就連家俱行老闆都在幫我安排對象,也都是對方父母覺得不錯,而對方不是在學,就是職場菜鳥,自然而然沒什麼反應。以這幾個對象相處的經驗,發現都有一個共通點,儘管當下馬上回覆,都是每天定點定時才會得到訊息,隔天還算好了,有時隔幾周應該是排到深淵去了。

謝謝你,讓我知道我還不夠好。

交接租屋

一月時說要買房子離開原本的租屋處,室友都說至少還要半年,覺得不可能這麼快,似乎都沒打算煩惱。三月一離開,租賃契約的一半都不到,只能麻煩其他室友找新室友來補位,沒想到房東馬上就說要漲房租。直到四月補位,五月底一知道調漲的金額,我想在這個疫情中做這樣的調整,多半不合情理,也許是看我窮都不漲吧。

合租也有不少缺點,儘管自己自發性地打掃,代收信件、繳納水電瓦斯費用、處理網路配備等,公共區域多出來的物品,都不是屬於我的卻一直被嫌很亂,自己用的電器放在房裡電都沒插,都可以被房東罵危險。明明一開始租屋就有的地板污漬,卻一直被指責說是我們搞出來的,自己一個人花一個下午,獨自坐在地板上清潔。室友堆積的雜物,一個人花了好幾天分批爬上爬下拿去垃圾車丟掉。

房東其實沒有說可以長時間養貓,至於室友鑽空子的行為,導致整個生活空間都有貓毛,不少地方被抓破,紗窗被抓破還要我補,你不怕蚊子,我怕啊。就看誰的忍受度低會先掃地,自然也會有自掃門前雪的情境,當然這也算沒什麼生活常識吧,沒有特別的惡意。長時間把濕抹布放在木頭地板上,叫完瓦斯,戶外燈也沒關,紗窗也沒拉上,對其他人可能覺得沒什麼吧。小事情積多,就見仁見智了。

出個遠門

生活距離台北有段路,其實有邀約也很懶得去趟台北。四月底,有人約我去文博會看展覽,想順道吃個飯。遲遲沒有答應,只是因為六日都在處理修繕雜事,不確定還有什麼沒有做。那天一大早,發現事情都忙得差不多了,就起身出發。能約什麼人呢?想著定點才回覆的任務,等到有消息就隔天了,淡定地一個人出發。

有人會很好奇是不是約妹子出門,要說有也算有,但要說沒有,也算沒有。逛完展覽又跑了趟淡水,想著幾個月前一個人跑到了淡水,想著妹子約不出來,一個人去那邊看看房子和生活機能,提前看看餐廳,說不定哪天有機會約人吃飯,打量著很多很多的事項,可惜都派不上用場。而跟一些人一起去淡水,非常簡單地在路上走走,也不需要吃什麼特別的餐廳,隨處逛逛商店聊聊幹話,坐在河畔旁等待,就這麼樸素。

Read More +

二八進展

工作狀況

繼去年十月升職後,得處理的工作難度也更加艱難。開會密度上升了一個層次,工作時間也因為在家辦公而拉長,在本來就沒加班費制度的工作崗位,這些早有心理準備。

工作挑戰到一個懷疑人生的地步,每天可能五、六點起床,七、八點就坐在電腦前工作十二小時,不然抽不出時間寫代碼。開會時間外,得處理不少回信和規劃一些未來架構,著手運行實驗的過程,還得不斷地補教學文件給新手入門。不得不說,不管是電機系還是資工系,著手 EDA 都有不同面向的挑戰,這裡的後端並不像外界所理解的後端,全部都要親自實作,不是像了解用法或原理道理後,單純組合使用的那一類型。

在年底的幾個月中,幾乎每天都開會,從早到晚的會議從前一個星期就開始排到下周,突發會議也再所難免。身為工程師,連續聽一個小時的話就很疲倦,一天至少聽四、五個小時,到最後都是精神渙散。

轉職計畫

因為工作壓力過大,起初很想換工作,請假參加了今年度的 JCConf Taiwan 2020 (Java Community Conference Taiwan),原本想說問能不能報公司帳,問了之後還要寫一堆提交文件申請,不是送件去新竹就是上海,就像寫國科會計畫一樣麻煩,只好自掏腰包去。不意外地,現場有不少媒合工作機會的攤子,如像 meet jobs 發了一張薪資報價單,放眼望去不少資深工程師職位有年薪百萬等級。這時候,就得想一下工作內容的難易程度,畢竟一點也沒有外界所稱的後端經驗,做基礎科學久了,多面向應用層級的後端似乎有挑戰。

之前 Google 和 Synopsys 來找人的時候,感覺就像面試從 104 的狀況一樣,老實說我還挺不喜歡 HR 在不確定實際工作內容的狀況下,諮詢轉換工作意願。自己就面試不少 HR 找來的,大部分都很難適應高強度的工作,而且行為準則也不好評量出來。如果是在公司的小產品中可能還無關緊要,在關鍵第一線產品中,每一個環節都很關鍵,能自我成長和要求才是重要的。不幸地,對大部分的人而言,只不過是為了生活而工作,那可能就不適合做第一線的挑戰,秉持「差不多就好」的心態,卻讓我花了太多時間處理那些瑣事。

想當然耳,更別說被 HR 以這種方式邀約,準備面試的工作相當地耗費精力,而且不知道有沒有稱得上工作,若只是收進去放置,吸引力就不高。主要是別因此造成其他同事的負擔。

另類工作

先前提到的高中生的 APCS 考試,實驗室學長創建了 「松鼠狐狸資訊學院」,也讓我從中接觸了不少外界資訊。在公司工作充其量也是替老闆工作,誰也不會知道那項目你有參與並有重大貢獻。而教職能影響的方位與工作不同,同時也會影響到不少人的一生。

「應該沒有經歷過社會吧」-《咒術迴戰》

那看看現今補習班的狀況,就會感嘆很多老師並沒有實際工作過,也不知道那些知識學來是為了什麼,在這種情況下就像考大學一樣,高中學了不少學科,上了大學全忘記。這全都是因為不知道目標與應用,當然就無法連接所學的知識。

還有更慘的是最厭煩的錯誤,做過助教就明白哪一些錯誤不該發生,身為老師就像大學只學了幾年就出來教人,沒有融會貫通的狀況下,按照書本念很難讓學生啟蒙。

學程式的確可以採 非監督式學習,就像 對抗網路 一樣,因為程式整套是很容易自我反饋和評估的。但前提是程式語言的選擇,C/C++ 和 Java 各有自己的盲區,訓練所需時間差異極大,視野深廣也不同。可謂魚與熊掌不可兼得,才會有補習班這種 監督式學習,大幅度縮短學習成本,才能對整個社會文化的進程加速。

薪水的部分也不亞於公司社畜。但目前社會歷練尚未成熟,還不敢貿然辭去工作。

另類邀約

在中央大學時,與一脈單傳的學長們一起活動,畢業後各奔東西。有次來個全部跨一屆的大學長們聚餐,才知道最終的目標不見得是 Google,也可以為了自己個某些理想或機緣而努力。

隔了幾年後,大學長從大公司離職,跑去做遊戲開發。就我所知,那一行八成產品都難以賺錢,而且橫跨好幾層的美術、物理領域。學長跑來問我對遊戲有沒有興趣,心想在大學做了不少遊戲相關的技術,草創階段的難度和時間壓力跟現在不能比。

對這次的邀約,內心是雀躍的,表示先前的技術和開發經驗有被關注。但在大學課程中卻被老教授抨擊設計不符學術理論,那時對於跟人有關的開發有點動搖,沒有確切理論可以證明方向,必須全靠感覺來抓緊機會。

目前與理念有點差距,心理準備未到。

轉角分支

相親發展

在一個沒有公司內部聯誼機制的環境,找到另一半只能靠自己。如在聯發科 (MTK) 還有一個特殊的交友佈告欄,外界的男女都可以跑上去諮詢,學長在那還可以煩惱要不要寄送好友邀請,Google 也有類似的內部產品。

這些事情很現實,對方要求就是身高、公司行號,這個在高級人肉市場相當常見,突然發現自己身高未達標、公司也沒名氣,連煩惱的機會都沒有。至於竹科到底有多綠,或者哪一方有多現實,也許從一開始就知道了。

在某個周末,家父打電話跟我說朋友的女兒不排斥認識,要我在台北約一約聊一聊。同樣是花蓮教育界的家庭背景,就不用煩惱價值觀差異。仔細思考一番,便覺得有所道理。要在茫茫人海中,找到那麼一個類型的女性是多麼困難。

聊了一陣子後,雙方父母的催促下,才單獨約出去餐廳吃個飯、見個面,如同相同帳號的命名規則,知道對方生日並不是難事。找餐廳的時候,店員順口提及了有沒有要慶生,想了想時間點也對,但對於第一次單獨約人吃飯就走這一險棋,真不知道那天的我在想什麼。

陸陸續續聊到了年底,覺得可能是時間點不對,對方剛入職為了試用期而努力,而自己也因為公司繁重的工作沒什麼特別心思,普通的聊聊就得顧慮太多項目,並不是像大部分的主流商品,能夠樂觀、開放、愛旅遊、健身的全能人才,的確沒什麼吸引力讓對方主動邀約。

時間久了,主動發話就沒了主題,敗給無趣的自己。

參與婚宴

到了這個年紀後,作為賓客被邀約去婚宴的機會更多,不再是被爸媽帶去的情況。不經感嘆,原來我還有朋友會要我去參加,明明那個時候的我是多麼地頹廢,為了挨過那個階段的障礙,表現得一點也不成熟。

畢業後的幾年裡,參加了學弟、大學同學、實驗室同學、及高中同學的婚宴,有的還特別從台北搭車跑到台南參加。每一次婚宴都像久違朋友的大型聚會,大家都不計前嫌地聊著近況,商討著哪裡有更好的工作,自己人生的下一階段目標是什麼。

看到不少認識的朋友帶著男伴、女伴參加,有點後悔自己在讀書階段都沒好好留意身邊的人,現在開始要找個隊友,卻敗給時間成本的疑慮。不時看到各大公司的花邊新聞,就會煩惱要怎麼選擇。

年底飛到台南參與,時至今日,高中畢業已十年,整班三十人,卻有三分之二的出席率。當醫生的都可以坐一桌,有的還在國外發展,有的還在進修博士,形形色色的發展都有,高中班級導師還特地從花蓮趕來,可以說是老同學聚會。如果有機會辦,也能這麼風光嗎?

下個階段

疫情剛開始時,受到親戚的邀約跑去看房子,那時候一個人做不了什麼決定,身上也沒足夠的錢,對於買賣也沒足夠的社會經驗。有幾次在同學聚會中談論到,他自己貸款買了上千萬的透天,跟準新娘一起共同努力的感覺就不一樣。有了目標,眼界與嘗試的機會也有所不同。

時隔一年,大部分時間都在家工作的我,遇上了室友要飛往美國讀書的情況,不經得深思台北省錢合租的生活,充滿了多不穩定的因素。

Read More +

資訊科學的偏科生 面試者篇

前言

從實習一年、正式工作三年,從一般的軟體工程職位軟體工程師 II (Software Enginner II) 開始爬,一年後升到資深工程師 (Senior Software Engineer),第三年升到首席工程師 (Principal Software Engineer),依照正常流程,這樣的躍遷是快的。

在薪水上可能會有點失望,必須了解到能力好與不好之間並沒有太大的差別,也就是說薪水不會有 30% 的差異,同時職位之間的差別也不到 20%。但工作量卻顯著地增加,這社會相當奇怪,這也難怪很多高科技的高手最後反而會想離開大公司的體制,自行創業或者轉行都是會發生的狀況。

從成功嶺出獄的第一天上班,頂著小平頭也參與面試流程,從那開始三年間面試了不少人,也與一些身歷百戰的朋友聊了一下狀況,而我卻沒站在白板上參與真的面試,大部分都是工作直接來找,看到需要繁瑣面試的公司都想直接忽略,畢竟身為一個偏科生,肯定是會被刷掉的,要找通才去找血統純正的學歷吧。

面試狀況

電話面試

最近受到疫情影響,會盡量先以 電話面試 為第一關,通常會從簡單的問答看出端倪,如基礎的時間複雜度分析、程式架構、開發經歷上著手提問。有時會配上線上共享文件撰寫簡單的程式,這對刷 leetcode 準備面試的人都不算難。

通常用解說定義為主,或者可以分享一些使用經驗,對於模糊不清的項目直接表達說知道但是不熟悉,一旦描述錯誤或者是甚至在使用完全錯誤的方向,就會凸顯沒有仔細了解,在錯誤理解下又有大量的錯誤衍生,下場就會非常慘。

雷點如下:

  • 不知道二元樹的定義 (到底是怎麼碩班畢業的?)
  • 不知道遞迴的實際流程 (到底是怎麼大學畢業的?)
  • 要求指定語言的工作條件,卻不知物件導向 (可以不滿足所有應徵條件,但請理解每一項大概是什麼內容再來。)

自我介紹

通過第一階段後,很多人就會來到這個環節,通常要準備三十分鐘自我介紹,我比較喜歡稱作武力展示,但不是像相親那樣的自我介紹,如學歷、出生年月、興趣嗜好都不需要。如果早已遞交履歷,那些訊息不需要提第二次,這些口頭描述就像流水帳,聽起來也很無趣。

對於碩博剛畢業的人而言,大部分都直接拿論文出來講,對於程式能力比較吃重的職位,偏好程度很低,實在是不想當論文口委,畢竟研究領域差太遠,也不能驗證對錯與否。如果用口述方式表達,專有名詞與公式都也無法理解是否具有該實力。

從以前讀過碩班的經驗,很多碩士都是老師放水過關的,也有可能完全不需要寫程式的經驗也能畢業。對於那些跨科系的碩士及學碩學歷差異大的,都需配上其他的實務經驗,才能讓面試官比較有信心。

履歷部分請參考相關文章

在過程中的確有幾個實際發生的項目

  1. 博士學位的面試者容易遇到本公司可能無法讓你發展所才,請另尋他路的勸導
    • 原本想要的,但實在是太高學歷了。
  2. 以 Microsoft Office Word/Excel 出現在技巧描述中
    • 因為大部分的工作工作都是之後再學,像這種被 GUI 固化的工具,很難拓展。
  3. 只有在課堂上寫過程式,完全沒有課堂以外的程式項目或參與專案
    • 課堂以內是可接受的,但需要體現足夠自我挖掘與學習能力
  4. 履歷上的縮排混雜著空白字元和跳脫字元

在其他未提及和重點項目,

  1. 履歷鏈結中出現 ?fbclid=XXX,作為一個從事資訊行業的人會直接出局。
  2. 強調的內容卻用淡色系的文字或其他方式呈現,脫離一般的思考模式。
  3. 個人網站
    • 能提高具有該實力的證明。
    • 展示出資訊整合的高度能力就是寫作,也可以從中看出溝通能力。
    • 因分享教學是最好的學習,請參閱「費曼學習法」。
  4. github/bitbucket 等代碼託管帳號
    • 自行開發的項目架構一覽無遺,直接進行武力展示。
    • 參與的開放項目,展現其求知慾與發現問題並解決的能力。
    • 參與的專案討論,展現其挖掘與辯論分析的能力。

在過程中可以透過白板直接介紹,也可以純口頭表達,亦可以採用簡報的方式,手法不受任何限制,但盡量貼合目標工作內容所需要的技能或是該公司缺少的項目為主軸。千萬別忘記體現自己所做過,拉回自己擅長的領域。

有時面試官突然問個太細節的問題,則需要準備概要和講給不同領域的人能理解的一句話,否則將容易錯失表現機會。畢竟那些項目細節上網搜尋即可,就像論文描述幾十頁,而摘要卻只有幾百個字一樣,唯有充分理解的人,才能做到的能力。千萬別花半個小時去描述需要解決的問題定義,適可而止!

筆試

好的公司是不會有筆試的。若有,則筆試應該只是參考依據。對沒有推薦人或認識的狀況下,筆試都是從嚴審核。反之,就不會佔有太大的比重。

不同類型的公司對筆試的考核方式皆不同。

對於著重實作細節的公司,如指定語言下的語法考試,甚至有一些未定義行為 (undefined behavior) 的項目需要注意,有的還會考以前大學教科書上附錄不想見的問題。這類型因為工作環境和需求,可能會讓新人非常受挫,對於新人的要求會比較高,才剛畢業的人通常要具備在沒有搜尋資源下,也能略知一二的能力。

對於跨領域的公司,會有一些其他領域題型,具有博學能力的人就會特別被選拔出來。像我們 EDA 公司,就有機會看到電子電路的題目,實際上答不出來也很正常,不用太沮喪,導致下一個階段表現不好。

對於應用方面,題目描述的手法也不一定像學校所學的非一即二的要求。若看到含糊不清的描述,那表示接下來的工作環境就是那種含糊不清的需求,則在答題上要自己以自身經驗去約束和討論問題,才能符合需求,原則上是以申論題的模式作答。

雷點如下:

  • 沒有檢查輸入、輸出的定義
    • 那個不是已知的條件,不能假設,常理上是絕對不行的啦。
  • 不完整的程式片段
    • 到底要回傳什麼,記得寫。
  • 不完整的上下文描述
  • 沒有計算過程的答案
    • 直接迸出一個數值。如果答錯,是完全沒有轉圜的餘地的。畢竟不知道你是不是費馬,還是把過程列出來吧。
  • 全然忘卻高中數學
    • 如為什麼 $\sin \theta$$\frac{a}{c}$
  • 相關題目的邏輯矛盾
    • 如在前一題答說 A 是缺點,卻在下一題答 A 是優點
  • 履歷中有提及此項目,卻無法以此作答
    • 履歷上的項目看起來只是掛名的對吧?像是上百人團隊的工作項目。
  • 論述內容呈現大學必修科目沒有學好
    • 如說雜湊的整體空間複雜度是 $\mathcal{O}(1)$
  • 在行為準則考題中,連演都不演的真性格
    • Q: 能不能與同事合作 A: 完全無法

同時,在撰寫的代碼中很容易展現出經驗差距,容易出錯的寫法雖然沒錯,卻間接告訴面試官有經驗不足的缺點。

白板題

解決只刷 leetcode 的假工程師的回合 (與考驗同事的時候)。

每題作答 30 分鐘,採用白板討論構思方向與實作細節。通常考三題,答題過快會有第四個防破台題目出現,題目對於以前打比賽的都是水題,基本上都會在十分鐘內解決。

類型通常都是教科書上每一章節的經典算法,答不出來或者構思錯誤,多半都會被刷掉。即使答出來,討論實務經驗時,也會從中觀察出是否有足夠的學習基礎,以及對所學的概念應用的能力。那些培訓班出來的假高手通常會在變化題型受挫,分析相關問題時無法應答,及缺少實務相關經驗。

後話

不太選用從短程培訓班出來的,風險相當大,因為太多沒有實戰或者過時技術的老師在外頭開補習班。試想過,為什麼能力好卻不從事開發工作,卻跑來當老師的原因嗎?再者,程式補習班老師多半沒有學過教育學程,跟教授一樣不需要,那麼教學品質很難有所保證。

現在又有大學入學程式考試 APCS (Advanced Placement Computer Science),自稱老師的越來越多,家長又瘋狂地看著老師的名號去選擇,而不知道科技業每一個職位與工作時間是有很大的差異,就像工作沒幾年就轉戰的 youtuber ,的確是高學歷也很聰明,但對於整體知識的養成與發展概念,通常都還沒沒達到融會貫通,只有問 A 答 B 的快速反應,缺少對 A 的定義及其他種非正規的可應用解的能力。

如何了解、觀察、解決、應用問題,適當地啟蒙學生才是老師要引導的。若像大學教授一樣教學生,九成的大學生畢業之後都不到八成內容。只是要知道問題的解決方法,可能還贏不了 Google,看看複製貼上的工程師就明白了。

有一些認識的學長,也開始從事家教和補習班老師,希望能遏止這種劣質的教學環境,就看看近期有沒有發展吧。

藉此,了解到不少學校的學生都找家教當槍手,學歷似乎也不能證明任何能力,家長資助和選對槍手才是當代的生存之道。面對欺瞞的文化,不行就說不行,請不要裝作很行,在面試過程中試出來,公司可是會記錄評價的。

Read More +