[心得]轉職之路道阻且長

Tiny_Murky
Sep 30, 2023

--

瑞士少女峰,希望有一天我可以再來這個地方

Hello大家好我是Murky,撰寫這篇文章的當下我剛從Alpha Camp畢業,想簡單分享一下我到目前為止的轉職心路歷程。

緣起

我大學和研究所都是讀會計系,也通過會計師國考,但是我從高中開始就對寫程式有一些興趣。還記得高一的時候我參加資訊科展的課程,用Virtuel Basic寫一個很爛的五子棋遊戲,班上其他人都用C++寫他們的專題。大學時因為各種原因沒有選擇資工系而是會計系,到現在我還是對這個決定感到很後悔。在大學和研究所這段期間我繼續嘗試學習寫程式,我修了程式設計、資料結構、演算法等課程,當時以為這樣就算是會寫程式,結果就很自不量力的去修機器學習,結果就是整堂課都聽不懂,加上我沒有數學基礎,最後就覺得很挫折。

考過會計師國考之後我開始在會計師事務所工作,我是在電腦審計部門,當初很蠢的認為應該可以邊工作邊學程式設計,結果我的主要業務是內部控制專案審查。內部控制專案審查目的是輔導公司上櫃,然而內部控制審查有許多部份需要 ”專業判斷”,也就是說沒有白紙黑字的SOP(寫SOP就是我們的工作),設計制度的標準很不明確,這讓我很不適應,很多時候我沒有任何標準可以參考,主管機關的指導也常常只有一、兩段的法條。工作一年後的公司尾牙上,我在尾牙上剛好有機會看到Alpha Camp畢業學長姐的轉職直播,當下就決定要轉職,於是我報名Alpha Camp後就從提出離職,從2月到現在專心準備轉職。

選擇Alpha Camp

在選擇Boots Camp當下並沒有想太多,只是希望可以趕快轉換跑道,但是實際在Alpha Camp開始學習之後,體驗到Alpha Camp在課程設計上的巧思。

在大學中學習資訊工程的時候,學校會用科學/工程的角度切入,學習資料結構與演算法等,課程內容主要是在討論如何讓程式跑得更快更省資源,但是比較少教導如何寫一支App或網站。

Alpha Camp則反過來,在學期1與2–1教我們基本的JavaScript的操作與特性之後,就進入前端的HTML與CSS操作,並在2–2開始學習如何在前端呼叫API,並於2–3時學習後端nodejs + express框架,並串接到非關聯式資料庫MongoDB,從而直接打造出一支餐廳論壇的網站。Alpha Camp以先實做為主,並在實做的過程提醒我們要如何才能寫出效能更高的程式碼。並且在課程中穿插大量的作業,需要自己設計並撰寫網站後交給助教批改。

Alpha Camp另外有兩個很大的優點分別是:

  1. Discord社群
    由於Alpha Camp是採取線上學習的方式,因此Alpha Camp開設有官方的Discord社群,平時上面可以聊天與分享各種資訊。每天在早中晚也都會有「飛航學習室」的語音平到,大家可以加入然後一起讀書,讀書的時候開靜音模式,當時間到最後30分鐘時大家會互相分享剛剛的時間裡在讀什麼,常常可以接受到很多陌生的關鍵字,幫助自己日後的學習。
    在Discord群裡面也會主辦特定的讀書會,大家會一起研究某個主題,例如一起學習如何使用AWS 的Elastic Beanstalk 部署自己的網站(現在這部份被整合進課程內了),讓我除了heroku以外又學會一個部署網站的地方。
  2. 助教批改作業
    如果平常有在Udemy地方購買課程就會知道,網站上的課程都是直接把錄好的課程給你觀看,如果你有問題就需要自己去他們的課程Discord裡面詢問,並且也沒有人會幫你看作業。
    在Alpha Camp則是每個星期都要在時間內繳交作業,並有專門的助教批改並提供建議,我可以按照建議修改程式碼後再題交給助教審查,如此往復直到寫出好的程式碼。在大學的程式設計課程中,由於學生人數眾多,評分常常需要依靠批改娘(Judge Girl)等自動批改的程式,看到的只有結果,助教們不會對程式碼提供建議(除非抓作弊)。而Alpha Camp的助教們則會直接閱讀程式碼並提供修改建議,我從中學到很多。

在AC中學到什麼

現在Alpha Camp的教材已經改版了,可能與以下介紹的略有不同

學期1

這個學期在試水溫,先是簡單的JavaScript介紹如If/Else、迴圈,以及簡單的html與css的組合。

學期2–1

2–1帶著我們用Bootstrap快速搭建前端畫面,並使用JavaScript操作DOM與事件處理。

學期2–2

2–2作業:Social Media

這個學期會學到如何使用Ajax從前端呼叫API,並使用前面學會的各項能力做出一個簡單的Social Media網站,它可以展現所有的User並可儲存按下愛心的朋友。

學期2–3 後端

2–3作業:短網址生產器

這個學期區分為前端與後端,我選擇後端,這個學期的難度直線上升。這個學期教我們如何用nodejs、express框架handlebars做由伺服器渲染的餐廳論壇,並要串接非關連式資料庫MongoDB並部署到雲端如heroku或是AWS。

在2–3期末作業需要從台開始自己架一個短網址生產器,上圖為我最後的成果。

學期3 後端

畢業團體作業:Simple Twitter

在學期3需要使用ORM 如Sequelize去串連關聯式資料庫如MySQL。在這個學期要完成兩個主要作業:

  1. 記帳網站-我的私房錢
  2. 團體作業:Simple Twitter

在Simple Twitter團體作業中由3個人組成全端開發小組(或是2個前端、2個後端)並在兩個星期內依照設定好的User Story與畫面設計稿從頭刻出一個簡單的社交網站。這個專案需要以前所學的所有技術,如Nodejs、Sequelize(ORM)、MySQL等並部署於AWS雲端。

遇到的困難

覺得自己很廢

我花了好多時間和努力才考過會計師國考,但是只做了一年就把工作辭掉準備轉職。我會回到大學的圖書館讀書(用校友證),然後每次作業做不出來的時候就會開始懷疑人生,反思自己人生中各種糟糕的決定。

做Simple Twitter專案時我們組的Mentor Oscar就鼓勵我說,要拿出一點自信,我現在的技術比他當時在轉職時更好了。並且鼓勵我們在Title不要掛Junior Developer而是可以直接寫Developer,這樣在面試的時候可以得到更多的磨練,並進步更快。他還告訴我們在經過9個月的學習下,我們已經可以使用Developer這個稱號了,要有自信。

時間不夠用

在轉職的路上有好多東西要學,像是除了Alpha Camp的作業之外,還要再打LeetCode、學前端框架等等,到目前為止時間感覺還是很不夠用。另外我讀書時常常很不專心,我目前採用蕃茄鐘的方法想辦法維持我的專注力,但目前不是很成功,這個部份還需要很大的努力。

結語與給自己勉勵的話

我希望自己不要放棄,並在兩個月內完成個人專案並找到工作,我相信這9個越來的努力不會背叛自己,我一定可以成功。

--

--