Alpha Camp 畢業心得

為什麼選擇 AC?

故事要從很久很久以前說起...

小時候,因為媽媽工作的關係,公司每年至少會安排三次海外旅遊和會議,每次出去大概都是兩週,地點遍佈世界各國。那時候玩著媽媽帶回來的玩具和紀念品、品嚐異國零食,邊看著照片邊聽他講述旅途中的故事,不知不覺萌生想要在國外生活的想法。

國中的時候讀了作家王文華寫的《史丹佛的銀色子彈》這本書,開始想著長大之後要進 Stanford GSB 讀 MBA。從國中到大學畢業,我都還是把進 GSB 當成自己的目標在努力,清楚知道要進世界頂尖的 MBA 需要有一定的資歷和財力,又不想要家裡幫忙出那麼高額的學費,所以畢業之後必須要工作存錢。

「好的開始是成功的一半」這句話說的一點都不錯,剛畢業的工作踏錯,後面的選擇一步一步都會越走越艱辛,在不是太友善的環境和體制下工作了快三年,漸漸迷失自我,感覺自己離 GSB 越來越遠。重新思考什麼事情才是我喜歡做的,同時又能拿到不錯的薪水?仔細思考後,選擇去考調查局三等特考,因為類組和科目有八成都跟大學所學無關,花了三年的時間讀書,讀的內容不亞於四年的大學課程,學習內容橫跨金融和法律。沒有受過專業法律訓練的我,在經過三年多的考試,終究還是敗在法律科目上,沒能成為一名調查員。

每一年的準備到考試,再到成績出來,一年落榜一次,每一次落榜對身心來說都是巨大的折磨,除了忍受周遭親友的冷嘲熱諷,也要努力支撐著自己的心智不會崩毀,更要控制好情緒,抵抗每一天的壓力。很慶幸我身邊有一直支持我的老公,在我備考的三年多內,每天下班忙於軟體開發和自修精進,從來沒有讓我感覺到獨自一人在努力。也是這三年多的時間裡,每天看著老公在寫程式,我越看越有興趣,開始好奇那些看起來像亂碼的東西在做什麼?

2021 年,我們聽了《MBA,然後呢?》這個 Podcast,第九集的來賓剛好是 AC 校長 Bernard 和總教練 Youchi,從 Podcast 上認識了 Alpha Camp。當時我對 Alpha Camp 沒有太多想法,直到同年年底,我決定如果再次落榜,就要轉換跑道。當知道自己再一次落榜後,馬上報名 Alpha Camp 課程,走出失戀的最好方式就是踏入下一段戀情,同理,走出挫折的最好方式就是投入下一段挑戰。

仍然不想放棄出國工作、讀書和定居的我,在 2021年12月30日放榜,隔天馬上報名 Alpha Camp 課程,2022年開始,我踏上了全新的旅程...

8 個月的精彩旅程

2022年1月1日,六點半左右就起床,從有效學習暖身操開始,為開課做準備,了解一下整體課程架構和自己的學習風格。在閱讀這部分的時候,我就是個躁進的初學者,滿腦子只想著要趕快寫出第一行程式碼,殊不知「學習有效學習的方法」比立刻一頭栽進去學怎麼寫程式更重要!開始第一天,就接受到了深刻的震撼教育。

一開始要把思維轉換成寫程式模式,很不容易,每天都覺得大腦無時無刻全速運轉,開始寫程式前要刻意去拆解步驟,用運算思維、畫流程圖、寫虛擬碼,不覺得特別難的流程,要刻意去拆解步驟,對我來說非常不容易,有時候也會偷懶,沒有認真跑過完整的拆解流程,就動手寫程式。第二週開始的分析設計稿,我就不敢偷懶了,即使只是簡單的頁面,沒有認真分析過設計稿就切版下去,很容易該包的地方沒包好,這邊改一點、那邊改一點,改到最後整份作業要砍掉重寫。就這樣矇矇懂懂過了學期一,這四週讓我體驗過去學習路上從未有過的快樂,絞盡腦汁寫出可以運作的邏輯,切出還算可以動的版,努力看懂很天書的 MDN 技術文件,每一天都很挫折,同時也很有趣。

進到學期 2-1、2-2,有感困難度跟學期一比起來增幅甚大,開始以專案的形式和產品思維寫程式。要理解 JavaScript 的世界中各種資料型別和怎麼傳遞,還要理解 DOM,把 HTML、CSS 結合 JS去操作節點和渲染畫面,同時要使用外部 library Bootstrap 和串接 API 取得資料,很像在玩 overcooked 這個遊戲,同時要兼顧不同面向,這時候也多了超級無敵多的語法。跟著教案實作專案,看過影片後,再看一次文字說明,然後拆解步驟,最後才動手寫程式,每一單元花的時間都是教案上估計時間的三倍以上,常常到週六或週日下午才能完成當周進度,開始感覺到進度壓力,想照校長說的,每個專案動手做過三遍以上,也達不到,頂多只能一個比較不熟的功能,拆解流程、改用自己比較好理解方式命名變數,做個兩次。

學期 2-3 開始進到後端世界,也迎來學習旅程上最大的挑戰。從 JavaScript 原生語法到開始在 Node.js 環境下,用 Express 框架搭配資料庫和 handlebars 開發,除了不熟悉工具以外,一下子要看的官方文件量也暴增好幾倍,時常在交作業時詢問助教問題,但也講不出自己到底哪裡不懂,助教難以就卡關的點給予協助。一週又一週,越來越懷疑自己適不適合成為軟體工程師?是不是學不來?各種自我懷疑的想法不斷冒出,後面兩週挫折到作業都是哭著寫完,也不斷在 ORID 上抒發情緒和寫下各種自我懷疑的想法。

很幸運遇到後面兩週批改我的 ORID 的 Ivan 助教,針對我卡關和感到挫折的地方引導和開導,加上學習教練 Yunju 聽完我闡述自己遇到的問題,分析出適合我的學習方式,我才能跳脫思維上的盲點,稍微有勇氣繼續走下去,踏入學期三這個魔王關。沒有你們,我就不會有勇氣踏入學期三,甚至不會有勇氣走完完整的課程,謝謝你們在我最需要幫助的時候拉我一把(180 度鞠躬 <( )>)。

學期三開始有班級 line 群組和飛航學習室,每天六點多起床,七點半到八點開始在線上跟大家一起學習,學習上的問題也能在群組或學習室內討論,讓我覺得不再是孤單一個人奮鬥。即使課程難度提高很多,每天花超過八小時上課、寫程式,還是只能在星期天晚上交出作業,我也不覺得自己克服不了學習上的挫折,因為我有了很多很多夥伴。

感謝學期三的這八週,帶我的導師 Eugene 助教(180 度鞠躬 <( )>)

每一次的作業,都會給我更多如何做得更好的建議,也會針對我的十萬個為什麼給予很多很多閱讀資料,即便有些地方看不懂,再次詢問助教,助教也會寫範例程式碼幫助我更容易理解。對於邏輯設計和寫法、資料表設計、什麼做法對效能上是不是會有影響、專業的用詞和講法...等,助教都很樂於回答我的問題,也會把自己傾向怎麼做和為什麼這麼做寫下來,甚至會詢問我哪些地方這麼設計的理由和想法是什麼,也不吝嗇給予鼓勵和稱讚。自認自己不是什麼聰明人,也不像其他同學學習速度那麼快,能遇到這麼耐心教導的助教,以及在學期評量中得到助教這麼高的評價,我覺得很感謝也備受激勵。

最後兩週的 Twitter 專案,開發過程中遇到超級多問題,我仍然覺得很感謝有這些問題,遇到問題才會去找解決辦法,從中學習。不論是調適時限壓力、跟導師、教練和組員溝通,或是解決技術問題,到怎麼有效運用工具管理開發流程,每一天、每一個環節都非常精彩,時時刻刻都讓我感覺到自己一直在進步,同時也有更多啟發和開啟更多學習目標。

心得&總結

我一直覺得自己過往的人生很失敗,在學時成績平平,畢業後的工作也不是什麼能搬得上檯面的經歷,準備三年多還考不上特考,無時無刻都想隱藏過去的一切,不想讓人看見那個失敗的自己。在一開始的活動自介上,大家侃侃而談自己過往的經歷,我只想躲到角落,希望沒有人注意到自己。

經歷過這 8 個月,除了從 Alpha Camp 課程中學會寫程式,也學會如何有效學習?怎麼樣問出有品質的好問題?怎麼分析問題和解決問題?我也學會了怎麼好好跟過去的自己和解,不再否定過去的一切,用感謝的心態去面對過去,體會到賈伯斯說的: "connect the dots"。過去的挫折建立了我的韌性,在學習的過程中有更高的抗壓性,因為自己走過很多低潮,因此更能同理他人的感受。原本以為很不怎麼樣的工作經驗,沒想到在 Twitter 專案上居然可派得上用場!架設工作區、管理流程、做出讓組員方便使用的文件,甚至是主動統合小組問題和意見,向班級教練和小組導師彙報。

選擇放棄比堅持下去還要痛苦,放棄就什麼都沒了!事後回想起來,還會後悔自己當初怎麼沒有多努力一點,多前進一步,只要還能撐過去,就代表還沒到極限。

感謝在 Alpha Camp 遇到這麼多貴人(180 度鞠躬 <( )>)

超級忙碌還是在活動上和社群上鼓勵大家的校長 Benard 和總教練 Youchi;很有耐心又默默守護大家的教練們和小精靈;即使剛開始問問題時,還描述不清楚,仍然耐心得解答,還有認真批改作業,回答我寫作業後的十萬個為什麼的助教們;以及友善、幽默、樂意分享和助人的同學們。我會永遠記得每一個幫助過我的人,每一個人溫柔的鼓勵和讚美,期許自己也能成為有能力拉人一把的人!

最後感謝一下親愛的老公,身為軟體工程師卻比 AC 助教們都還嚴格,我明明只是初學階段,卻在我每次問問題時,都被反問「什麼問題?你對問題理解多少?google 查到什麼?你嘗試過什麼?嘗試過哪些解法還是無法解決?.....」,問到我生氣,轉頭自己解決問題 XD。不過也是因為你這麼嚴格,我才能不斷進步和成長。

(一點小 murmur,思考很久,還是把過去的經歷寫出來,面對過去自己比寫不出作業還難受,既然要跟自己和解,就放膽揭開傷疤,好好放下過去)