旅程前言
在碩二實習的時候,有碰到一次到美國波士頓出差的機會,有礙於那時候還是實習且研究生的身分,並沒有與團隊一起去。要是出國消失一周的話,指導教授大概會震怒吧,說不定就沒機會出現在 Cadence。
在 2016 那時,台灣的團隊才成立約一年,所以旅程的目的在於去學習,基本上就是產品架構的設計細節與概念、產品開發的流程。即使跟著去那兒,英文聽說都很糟糕的我,也只能看著投影片發呆吧。在這兩年中,團隊從四個人到七個人的成長,產品開發的控制越來越多到台灣團隊手上。因此,此行目的便不再是學習,要探討未來的發展和一些議題。
在出發之前,整理近幾個月的開發議題,手上有兩個舊有產品 OrbitIO 和 Allegro,修改了大幅度的效能問題,但舊有設計架構問題導致一些加速算法無法相容,光是想著這些設計問題,就不知道要怎麼與那邊的團隊討論,這些都是改動十幾年前的設計,我想代碼大多都朝著只增不減的方向邁進,這些問題很少人願意去著手,要去改那些需要十足的勇氣。然後,莫名其妙被加入了 Mission BraveHeart (任務代號:勇敢的心),成功便成英雄。
另一個新產品的開發便是這次出發的壓軸,其內容跟公司的 EDM (Engineering Data Management) 產品有著異曲同工之妙,這困擾了我好幾個月,其概念就是強化版的批改娘,最大的不同在於多人協作的平台,要如何做得簡單好用「Simple is Better Than Complex」。
新產品的開發耗時將近一年,途中不斷地有新的工作要做,所以在好幾個產品跳來跳去。在 Java, C, Python, Javascript, HTML 跳來跳去,精神都快要達到臨界點。由於需求調整,一路上重新構造了好幾次架構,不斷地懷疑自己到底能不能把這個產品拉出來。由於公司與 DARPA (Defense Advanced Research Projects Agency, 國防高等研究計劃署)
的合作計畫,加速了這一個產品開發,在九月多時輪廓總算釐清了,目標在一個多月內把產品最低需求完成。
很多 EDA Tools 都經歷了好幾年的開發,如 OrbitIO 和 Allegro 更是幾十年的產品,支線需求直接在平台上開發比較沒什麼壓力。這次則要完全跳離所有依賴關係,團隊成員中沒有系統架構的經驗,而我這種半吊子只寫過一點點的網站,一點點的系統,一次就要走這麼遠,壓力不容小覷,這一段日子裡都不怎麼好睡。
隔了一個多月,我們做到了嗎?做到哪裡?
開發過程中一直想找人來幫忙,面了一些高手,但面試的標準無從根據,導致錄取的進展不斷延後,於是先下定決心自己來吧,網頁後台各種從零開始,著手架構好的後台與前端網頁,試圖完成像 Github 與 git 這等偉大的目標。急急忙忙地切分模組出來給小夥伴開發,過程中又不斷地與其他成員說明系統的架構朝什麼發展,甚至一連開了整天的會議說明方向。
出發前一周仍然在調整各個模組的名稱,好讓介紹時快速切入要領。不得不佩服同事們的合作,介紹這方面的能力從以前開始都倚靠著別人,終於準備好上路了。
啟程須知
給第二次出國的我 (第一次出國在泰國比賽)
礙於研發替代役的角色,出發前到外交部領事事務局申辦護照,不再是以前的三年版本,一次到手十年期限的護照。除了要額外帶著役男身分證外,其餘項目皆與一般申請護照無異,只需要一周的工作天,便可以領取護照。接著拿到新的護照,便向公司的 HR 發出出差申請,附上護照明細與旅途時間,通過後大約在一天左右,就可以從役政署的研發替代役網站列印許可通知書。接著,入境美國申請 ESTA,線上填妥細節繳費,列印好拿著這些就可以入境美國。
若需要國外駕車,可額外申請國際駕照,直接拿汽車駕照去監理站換發就好。不過國外租車的額外駕駛需要額外的保險,加一個額外駕駛就額外多一個費用,原則上對於我這種新手,最後沒有用到。
十一月初的波士頓到了將近攝氏零度的氣候,這一次旅程長達十四天,差不多要帶個六天的衣物,由於這麼冷的天氣基本上也不太需要太多外衣,內衣之類的還是需要帶多一點,直接在旅館內乾洗晾乾就好,大部分時間都有暖氣,所以只需要帶一件足夠厚的外套就行,也因為暖氣會不斷地除溼,保濕乳液之類的必須帶好。這次旅程意外地發現自己並不太怕冷,帶太多衣服穿不到,感覺有點傻了,毛襪不帶也沒關係,穿了反而不帶適應走路的步伐而不舒服。圍巾、手套帶著比較好,一下雪整個寒意就透過去。
波士頓之旅
做了近 20 小時的飛機,終於到了美國波士頓,公司在比較偏遠的郊區 Chelmsford,隔天我們便到波士頓市中心附近的 MIT 和 Harvard 參觀,這時間點在感恩節前兩周,又正值假日,基本上都沒什麼學生。看著別人的生活環境,冷到一個很不舒服的季節。
在市中心晃了好一陣子,傍晚才前往到哈佛大學,然後開始排隊與那個金鞋合照。
工作的第一天,聽著不太明白的產品與客戶發展介紹,第一次與 email 對面的人碰面聊天,上頭的上頭們全都來了,勉勉強強用殘破的英文亂說一通,還好有同事罩著,後面講的介紹一句也不懂,只能東猜猜西猜猜,猜出個什麼來再應付。下午便在討論「勇敢的心」細節,原則上是一個複雜度很難壓低的幾何計算,咱什麼時候變成幾何計算的顧問了?我其實也不算懂啊。
工作的第二天,兵分兩路被拆開到各自的主攻產品討論議題,陸陸續續邀請不同議題的相關成員會面,個人覺得是相當大的陣仗,區區的 Morris 開的議題邀了好幾個不同團隊的成員。由當地的同事主持會議,大多的時間都在聽他們討論,只花了幾分鐘介紹問題的原因、要解決的問題、可能的解決方向,為何需要這麼做?接著的應答就靠神一般同事翻譯。嗚嗚,我好沒用。晚上的時候,波士頓的第一場雪來了。
工作的第三天,新產品決鬥的開始,Made in Taiwan 的武力展示,相當沒有信心去展示那些成果,大部分的架構還不確定能不能發展到那樣子,語言的特性決定發展能力,簡單、好用是否能兩全其美呢,覺得自己的眼界還不夠寬廣,深怕被那些非常非常資深的工程師擊飛,最後倖存!
工作的第四天,趕上公司的三十周年慶,公司租了一台遊艇在波士頓河岸繞了兩個小時,各個同事都在船上閒聊。結果我們台灣的都在玩船外的 table football 而忘了拍團體照 …
工作的第五天,討論要怎麼解決大數據的情況,數據一大只要會動就好,那麼效能就不再重要,但是舊有的操作又不能太慢,毫無用武之地的我,決定來個幻想之旅。最後一晚的聚餐,照片上的兇手替我點了 50 美元的龍蝦,看不懂菜單總是令人宰割。
紐約之旅
在忙完一周的工作後,我們便到了第二周的紐約自由行。老實說,一開始的行程是回台灣休息,但是大部分的人都不在台灣,如果回台灣也處於無同事或目標的狀況,所以就跟著跑去紐約了。如此瘋狂的行程,大概就這一次!