最近幾年線上課程滿夯的,除了那些主流的課程平台之外,也有些人會想選擇自己弄一個自己的平台,少了一些限制,也能夠免除掉跟平台的分成,一些優缺點我在《把 Hahow 的課程下架之後,我的下一步是什麼?》都有提過了。

而如果想要自己弄一個平台的話,最多人選的大概就是 ThinkificTeachable 了。因為我自己的整個平台 Lidemy 鋰學院都是用 Teachable 建的,所以偶爾會收到一些信件來問我使用狀況跟心得,想說每次都個別回答的話有點沒效率,索性就寫了這篇。

底下就來談談各個 Teachable 的功能以及我個人的使用心得。

費用

我剛使用 Teachable 的時候它其實有四個方案,Free、Basic、Pro、Business,現在只剩下後三個。

原本的免費方案我記得沒什麼限制,就功能比 …


如果有看過我之前寫的《2020 資深前端工程師面試心得(4y, 100k+)》,應該會知道我後來去了一間叫做 OneDegree 的公司,我是 5 月11 號進去的,到現在大概半年多了,是個很適合寫心得的時間點。

不過這篇心得不是普通的心得,因為除了個人心得之外還會有一些公司介紹的部分,所以嚴格來說就是半公司介紹半工作心得,一來想說這樣可以讓大家閱讀文章時更融入(?),二來也是我會在文章尾巴順便幫公司工商一下,如果看完公司介紹跟這篇心得之後對 OneDegree 有興趣然後剛好有適合的職缺,歡迎來投履歷,希望未來有機會能當同事。

就讓我先來介紹一下我們公司到底在做什麼好了。

OneDegree 在幹嘛?

先用簡單一句話來講,可以把我們公司想成:

拿到了香港純網路保險執照的科技公司

上面這一句就兩個重點,一是保險,二是科技公司。

在產品面上公司在做的事情有三塊,分別是 …


Image for post
Image for post
Photo by Marten Bjork on Unsplash,放這張只是因為我最近很想出國

四年前是我人生中第一次求職,抱持著「之後應該不會海投了」的心態,一口氣面試了快要二十間公司,在求職的時候也有了許多心得,因此那時候寫了一篇:我心目中的理想面試流程

前陣子也進行了人生中第二次大規模求職,對於面試流程的想法跟四年前一樣,所以也沒什麼好寫的,不過這次倒是多了一些有關於徵才文的感想。剛好之前有給了我們公司 HR 一些徵才文的建議,寫了一封落落長的信,想說那不如直接寫成一篇文章好了。

一直以來我都覺得有許多公司太低估徵才這件事情了,他們在看這件事情時只有想到「要找到人」這個目標而已,可是真實情況是可能有十個人來面試,卻只有一個錄取,那沒有錄取的那九個怎麼辦?許多公司就不管了,管他的,沒有錄取就沒有錄取。

但我覺得沒有錄取的那九個人也十分重要,因為他們會影響潛在求職者,增加或是減少他們想 …


其實這一篇應該在更早一點的時間點就開始寫的,但最近要做的事情有點多,就不小心拖到現在了。

每次課程結束以後,最開心的就是下一期又可以再繼續優化,把之前想做的事情一件一件慢慢付諸實現。之前在《華麗謝幕:程式導師實驗計畫第三期成果以及未來走向》裡面就有提過一些方向,後來有些真的開始做了,有些還放在 backlog 裡面。

目前是程式導師實驗計畫第四期的第十六週,課程進行了 100 多天,已經進行一半了。先給幾個數字:

  • 這一期一共 121 位同學
  • 有 1 位在第一週時退出,另 1 位在第八週時退出,還有 9 位於課程試用期結束時(第八週)退出
  • 因此,課程正式開始後剩下 110 位同學,其中 77 人選擇 A 求職方案,剩餘 33 人選擇 B 買斷方案
  • 目前進行到第十六週,只淘汰掉 1 人,剩餘 A …


一年前,我在 Medium 上面發布了這篇文章:

內容主要是我想當 mentor 所以在找 mentee,可以指導的範圍大概是:

  1. 特定主題研究及技術文章撰寫
  2. 技術相關小遊戲製作
  3. 做 side project 並且開源
  4. 其他技術問題
  5. 職涯相關問題

過了一年,該是時候跟大家報告結果了(雖然標題已經有了就是了)。在報告結果之前,我們先跟著時間回顧一下這個計畫吧。

計畫初期(2019 年 8 月)

這個計畫大約 46 個人報名,一共有 22 位錄取。

計畫開始的時候我先把大家拉到了 slack 群組裡面,並且寫了一份計畫的說明:https://github.com/aszx87410/mentorship-program

之後花了大概兩週的時間跟大多數人語音通話過,主要就是溝通一下對這個計畫的期待,以及確認我可以幫忙的地方,也花了些時間跟每一個人確認之後想要做的主題,有些人會想做一個小專案,有些人則是寫文章之類的。

接著有關於這個計畫進行的方式,當初的流程是這樣:

  1. 根據自己訂的進度做出東西
  2. 碰到問題找我討論,把問題寫成文字丟給我(沒問題可跳過此步驟)
  3. 我會找時間回覆你,為了避免多次 round-trip,請把問題寫清楚
  4. 寫進度報告 po issue,說明討論內容以及當前進度跟下週進度
  5. 回到第 1 步

基本上每週都會要求要有一些進度,然後簡單寫一下自己的進度,有問題就可以跑來問我找我討論,沒問題的話就繼續跟著自己進度走就好。

就這樣子試跑了一個月以後,我發現成效不彰,效果還滿差的。

我自己猜測的原因有幾個,第一個是想像跟現實是兩回事。很多人在報名之前,可能只有想到好的那一面,想說自己可以成長多少,但是卻忘記了要付出的時間與精力。

因為每一個學生都是有正職工作的,所以可以利用的時間基本上就是下班後還有假日。有些人其實之前並沒有利用這些時間進修過,所以真的體驗過才知道那是多困難的一件事,並沒有想像中的簡單。

再來,我在開這計畫之前,我以為大家缺的是一個導師,是一個能讓人發問以及討論問題的人。但我後來發現對其中一部分的人來說並不是如此,他們缺的是一個可以督促他們的人。

在兩者有什麼不同?如果你要找一個跟你討論問題的人,你必須先準備好問題,必須先碰到過問題;要碰到問題,就必須自己動手去做過。但如果什麼東西都還沒開始做,是沒有問題可以問的。

而有些人就是處在這個狀態,因為還沒開始,所以沒問題可以問,也不知道該討論什麼。因此後來我有改變了一下做法,試著當那個督促的人,看能不能幫大家多少增加一些動力。

計畫中期

之後有八成左右的互動,都是這樣發展的:

  1. 學生提了要做某個東西,我看過之後說 ok 沒問題,進度自己抓一下就好
  2. 一週過後,在實作上碰到問題就會來找我討論,如果沒有的話就是自己 po 說做了些什麼,然後我會看一下
  3. 一週又過去了,繼續來找我討論進度跟問問題
  4. 然後某一週,就不見了

大概從這個時候開始,整個計畫就差不多可以宣告失敗了。

雖然說是為期一年的計畫,但大概過了兩三個月之後,參與的人就只剩 4, 5 個了。一年過後,只剩下 2 個完整跟完的。

計畫後期

跟中期其實差不多,還是維持一樣的模式,就是你要先準備好東西來找我討論,否則我也不會主動去找你。

跟中期的差別就是人數愈來愈少。

Image for post
Image for post
圖片來源:https://www.maxlist.xyz/2020/09/21/huli-mentor/

失敗原因

我自己覺得這個計畫最失敗的點,就是我自己可能也還沒想得很清楚我要做什麼。當初的想法就只是,好像自己可以提供一些資源來做些什麼,能夠解惑一些疑難雜症之類的。

但實際跑過之後才知道,並不是每個人都有這麼多問題需要被幫忙。對很多人來說,問題都只是非常短暫的。例如說剛好要換工作所以有問題,或者是工作上剛好這邊有問題,但除了這幾個時間點以外,其他時候都是沒有什麼問題的。

因此,如果只是想提供這種顧問諮詢服務,之前的請我吃飯企劃其實效益還比較大,一頓飯就可以解決了。

再來還有個問題我覺得跟我的個性有關,因為通常在看學生的一些專案進度時,我最常說的就是:「這個不錯」或是「這個 ok,沒什麼問題」,因為我就真的覺得沒什麼問題。

我就會覺得你現在這樣寫也不錯,換個寫法也 ok,換個切入點也可以。只要在技術上的描述沒有什麼明顯的錯誤,你的寫作風格要怎麼寫我不會干涉。可以是那種百科全書式的筆記文章,也可以是充滿一堆 meme 跟電影台詞的幽默文章,也可以是被技術文章耽誤的輕小說家,把技術文當小說來寫。

因為我真的覺得都可以。

但或許也是因為這樣,可能有些人覺得並沒有得到什麼特別的收穫。

最後,這個計畫最失敗的點,就是兩敗俱傷。因為我覺得我沒做到什麼,然後一開始來參加的那些學生也覺得自己沒做到事情,然後可能還會對淡出這個計畫感到有點抱歉。

所以沒有人從中獲益,他們沒有,我也沒有。

不過有跟完的兩個學生應該是有得到一些東西的,底下是他們的心得:

學生心得 #1

好快,『前端引路人計畫』已經快一年了,一年前我希望多學習前端的技能,剛好 Huli 有這樣的計畫,在報名的當下,我明瞭 Huli 的教法是適合我的,大大的教學理念我也認同,所以沒有太多的猶豫就報名了這個計畫。

計畫進行的方式:
1. 每週報告進度
每週報告的方式我覺得蠻好的,因為平日要上班,每週報告壓力不會太大,也不會太放鬆,淺意識我會記得我在參加一個計畫

2. 自己定目標
自己定目標,也是一個學習,每個禮拜日確認自己訂的每週目標是否有達成,如果沒有,下次要怎麼避免(我通常就是把每週的進度減少),找出一個自己可以執行的學習計畫。

3. 有問題就直接留言問大大
Huli 大大一如往常給了許多好的學習建議,非常謝謝

建議:
如果真的有什麼建議,或許是可以固定一段時間,例如兩個月或三個月,有一個比較正式,直接的交換意見,但其實我也不是很確定,因為文字訊息一樣可以達到溝通的目的,所以不是太確定這樣的行為,可以帶來什麼效益

心得收穫:
因為把計畫的百分之七十時間,用來追程式導師線上課程,這堂課本來就有很好的課程安排,所以大部分的主題,並不需要自己花時間找資料,這或許也幫忙了我把心思放在安排課程進度與學習上。最近又開始通車看大大的文章,再次看到大大提到的,如果你想某個技能變厲害,就必須付出時間去練習。參與這個計畫,真的必須付出相當多的時間,有時 delay 我會工作請假把課程補起來,總的來說,我是覺得時間很不夠,假日我都待在家追進度。如果說參與這個計畫最大的收穫是什麼?那應該是認識學習的方法與持續學習的習慣。也再次謝謝大大無私地開了這個計畫。

學生心得 #2

請參考:

結語

經過這次之後,我覺得我暫時不適合這種模式,所以引路人也不會有第二期。我比較適合的可能還是一直有在持續做的教學模式,我來教,你來學,而不是像我原本預期的 mentor 制可以互相討論問題之類的。

所以之後比較有可能走的方向是規劃一些給已經有工作經驗的工程師來上的課,藉由這些課程來提升技術,讓技術能力能有所成長。除了技術能力以外,有什麼其他問題也可以順便問我,以技術為主,其他疑難雜症為輔,或許這是目前比較適合我的。

最後,感謝曾經有報名以及有錄取的前端引路人計劃的學生們。


Image for post
Image for post
Photo by Aaron Burden on Unsplash,我只是希望秋天趕快來所以選了這張

前一陣子收到采實文化的來信,邀請我閱讀並分享一本新書:《下班後1小時的極速學習攻略》,雖然說很久沒有看書了,但第一次收到出版社的邀請滿開心的,就直接答應了下來。

上個週末花了點時間把這本書給看完,覺得讀這本書的時機真是對極了。這是一本在講學習的書,雖然說書名跟作者的背景都會讓人以為這本書是只給上班族看的,但其實裡面提到的東西,就算不是上班族也很受用。

而我會說時機很對,是因為我一直有在帶一個線上的課程:程式導師實驗計畫,從計劃當中可以觀察學生學習的狀況,也可以看到他們所寫的心得,這是第四期的計畫了,從前幾期的累積中,對於「學習」這件事也是有些自己的看法。

底下我將會分享一些看完書以後的心得,也會從書中節錄一些我很有感觸的段落。

學習的訣竅就是:先別急著學習

無論是學習,或者是做其他事情也好,有許多人都忽略了「事前準備」的重要性。什麼 …


Image for post
Image for post
Photo by Duangphorn Wiriya on Unsplash

提問很難,尤其是對初學者來說。

所以我在教學的時候一直在想,除了提問的智慧以外,有沒有什麼文章是可以讓學生看了之後,能夠更快速、更深刻地去體會為什麼他們問的問題不夠好?

舉例應該是最快的,而且不能是假想的例子,因為身為一個已經比較會提問的人,我想出來的例子跟真實的例子應該會差很遠。因此,我特別從學生那邊搜集了一些問題,這樣就可以直接來看這些被真實提出的問題,再來分析它們哪邊不夠好,哪邊可以再改進。

文章的問題皆為真實的提問,而我有把能夠識別出提問者身份的資訊去除,事前也有徵得本人同意。在看這些問題之前,我先講一下我整理出來的提問心法:一大原則,三大要素。

問問題一大原則

這個原則就是:

角色互換

或是你要想成「設身處地」、「將心比心」之類的也可以。

當你把問題寫好要提出來的時候,你要想的第一件事情應該是:「如果我今天被其他人 …


Image for post
Image for post
Photo by Mar Ko on Unsplash

變數是絕大多數的人在學程式的時候,第一個或是第二個會碰到的東西。變數本身的概念不難,許多書上都拿「箱子」來比喻,就是個放東西的箱子而已。可是當後續講到什麼 call by reference 還是 call by value,或者是 C 語言的指標的時候,變數這東西的難度就突然成指數型增加。

而我認為之所會這樣子,就是因為沒有把「變數的儲存模型」建立起來的關係。所以這個模型至關重要,一旦有了這個模型的概念,在思考相關問題時只要能想到這個模型,問題就大概解開一半了。因此這一篇試著用比較淺顯易懂的角度,來講一下這個變數的儲存模型長什麼樣子。

核心概念是:

我們應該要用什麼角度去理解變數,以及變數儲存的東西?

先聲明一下,每種程式語言的儲存模型可能都不太一樣,而這篇也是經過簡化後的版本,實際上可能會複雜許 …


Image for post
Image for post
Photo by Josh Hill on Unsplash

沒錯,標題就是這麼 real,整件事就跟標題說的一樣。

讀了一封封報名信以後,我真的迷惘了,就跟之前求職一樣,有時候你以為接觸愈多就會愈清楚,但事實卻正好相反。

我還跑回去翻了我以前的文章:如何決定錄取與否?對計畫的反思以及對報名信的建議,看一下以前的自己是怎麼想的。

這一次報名最大的問題是:

以前的標準已經不適用了

而背後的原因是:報名人數暴增。

如果只有 50 幾個,那我當然可以根據我以前的標準去篩,先假設可以篩掉個三成好了,然後其他七成(35 個)全部錄取。

但這一期的報名人數大概 200 個,七成就是 140 個,難道我要把 140 個都收進來嗎?不可能,這樣我負荷不來,也顧不了課程品質。

所以之前寫的那些就不管用了。儘管你有強烈轉職意願而且願意付出時間,也不保證能錄取,因為可能有其他 100 多個人都跟你一樣,站在相同的起跑點。

既然是這樣的話,該怎麼決定要收誰?

按照課程初衷,想要證明自己的教學能力的話,當然就是找張白紙,越白的越好,然後能夠付出一定時間,才能試試看我的課程是否也讓他們聽懂,試著幫助他們轉職成功。

前幾期基本上是這樣想的,但這期人數一多以後,就不太一樣了。很多報名的人都有接觸過一點程式,有些也在信中證明了有相當的自學能力,如果按照我上面說的,這些人的順位好像會被排在白紙後面。

咦,怎麼感覺有些奇怪。

這樣的話他們如果沒有被收進來,就是因為他們比較努力。因為比較努力,所以有學過程式有接觸過,也因為這樣,所以順位被排在白紙後面,就被刷掉了。

怎麼聽都覺得有點奇怪,居然是因為比較努力而被刷掉。

以前聽過很多去申請那種有名額限制的免費培訓班的案例,都說錄取門檻很高。我以前只想到有可能是想增加成效,所以要找比較厲害的或是有潛力的人進去。

但或許我想錯了,那只是結果看起來是這樣,可是原因不是的。不是因為想增加成效而找他們,而是因為本來就比較想錄取他們。理由也滿合理的嘛,因為他們在進去前就證明自己有學習能力。

好,那我就從有學習能力也有學過程式的人開始收?

可是,那些白紙怎麼辦?就算了嗎?可是沒有白紙的話,該怎麼驗證自己的教學?不是說想好找白紙的嗎?

所以我迷惘了。

做這個教學做到第四期,似乎變得不太一樣了。但我不確定是我忘了初衷,還是初衷本來就是一個可以變的東西。畢竟現在跟第一期比起來,本來就不一樣了。能收的人變多了,自然就可以考慮更多元的學生組成。

像是第三期,有收一些本來就會寫程式的人進來,也有收一些設計師或是有設計相關背景的,這算是一個新的嘗試,而且成效出乎意料的好。原因是,那些本來就會寫程式的人可以當作領頭羊,在前面領跑,無形之間帶著大家一起往前進。

這不是需要他們主動做的事情,而是他們的作業、他們的進度,甚至是他們的存在本身,就對這個計畫有幫助。

而後面那些白紙可以看到一個接近的 role model 長什麼樣子,以他為目標來邁進,也能看到他們的作業,知道那個程度的人做出來的東西是什麼樣子。這種化學反應是我之前沒有想過的。

而且除了以上兩種,還有另外一種人,就是這一期開的 B 方案,為付不出太多時間卻又想系統性學習程式的人設計的方案。如果開了這個方案結果卻不收人進來也太靠杯。

話說還有一點是很值得思考的,那就是:「你要怎麼知道這些無基礎的人,是真的有心想學習程式?」,報名信上寫說:「我真的好想學程式」就真的是很想學程式嗎?這當然不一定。

那該怎麼證明你真的有心學程式?很簡單,你之前有碰過程式有寫出心得,而且是持續地在寫心得,我就知道你是真的有在接觸而且不間斷,這是最好的證明方法,不要用說的,要做的。可是如果只往這個方向去思考,就會漏掉一些:「沒碰過程式但真的很有心學習」的人(不過問題又來了,我要怎麼知道你是真的很有心?),而這些人也是我想收進來的。

所以呢,到底要收哪一種?白紙還是非白紙?A 方案多還是 B 方案多?

如果是以「驗證教學成效」為主要考量,顯然是白紙 + 方案。如果是以「賺錢」為主要考量,一定就是非白紙 + B 方案,收入可以最大化。

可是一定要這麼極端,這麼二分法嗎?這又不是二值邏輯,只能有 true 跟 false,我可以摻在一起做撒尿牛丸啊(現在的小朋友是不是不懂這句在幹嘛了)!

所以最後決定不要特別控制比例,就按照「我想收進來」的篩選方式去篩,步驟是:

  1. 先按照以前那樣,把那些收到報名信之後就很想錄取的放進一個清單
  2. 如果人數超過預期,再從清單裡面把人挑出來
  3. 如果已經篩到我覺得沒辦法再篩,那就爆人數吧,挑戰極限

這個「我想收進來」就是一個我也不知道該怎麼解釋的標準。

最後的結果是:

202 人報名,120 人錄取,82人淘汰,錄取率大概六成。

我相信最後找進來的人一定會有 false positive,我看你報名信覺得:哇這個人不錯,但實際進來卻跟想像中不一樣。被淘汰的人裡面一定也有 false negative,明明真的很有心而且很有能力卻被淘汰。

但我只能說,這已經是我根據現有的資訊量能做出的最好的決定了,而誤判是一定會發生的。

因此那些被淘汰的朋友們,被刷掉很可能不是你的問題,是我眼光不好,所以千萬不要灰心了。不要因為被我刷掉就覺得一定都是自己的問題。有可能是,也有可能不是。重點是要怎麼把自己變得更好,然後再去迎接下一個挑戰。

最後來講點我覺得以後可以改進的東西。

之前就有稍微提過以後想做的方向了,在這邊整理一下順便跟大家分享,不過先聲明,以下提的東西「都還沒確定要做」,只是有一些雛形而已。

之後我想把程式導師實驗計畫基礎的部分分出來,變成獨立的課程,而且會是免費的(對,我就愛免費)。

基礎指的是:

  1. Command line 基礎
  2. Git 基礎
  3. JavaScript 基礎
  4. HTML + CSS 基礎

既然分出來了,我就可以在課程裡面把這些東西給拿掉,或者是濃縮成兩三週,這樣計劃就有時間可以教一些更深的東西。而以後程式導師實驗計畫的定位也不一樣了,不再是「完全沒有基礎的新手」,而是「修過這些課程的新手」。

為什麼?因為我想把這個視為是一種「工作量證明」(這詞用在這邊不知道會不會怪怪的,但我很想用所以還是用了)。

你要怎麼證明你有心想自學?你要怎麼證明你願意付出時間?

你只要先把我公開出去的那些課程修完,我就認可你是有這個心的,就有資格可以報名下一期的程式導師實驗計畫。那如果沒有呢?沒有的話就去乖乖修完啊,修完再來談。

上面這是一種方向,然後另外一種方向是像 ALPHA Camp 那樣,把課程分成四個學期,第一學期就是我上面說的那些基礎。

分成四個學期的好處是一樣可以有原本計劃中的那些優點,像是社群討論或是改作業之類的,這是前面把課程獨立出來沒有的優點,不過缺點就是我會比較累啦,每次光是處理報名信跟後續加入計畫的事項就花費不少時間了。

兩種方向我還沒有確定是哪一種,只是想先跟大家說之後很有可能會朝這方向邁進。除此之外也有可能開一堂「讓初學者體驗寫程式的樂趣」的課程,這是我以前沒有想過,但現在卻很想做的事。

講到這個,提一下很多人報名信上寫的,那就是原本以為第四期不開了後來卻又開了。有些人可能會覺得這樣很反覆,對,我就反覆。

但這也是沒辦法的事,因為第四期本來就真的不開了,是後來計畫有變才又起了開第四期的念頭。是我沒有想清楚嗎?或許是,也或許不是。畢竟在做決定的當下,我是真的覺得自己想清楚了。

好,最後跟大家總結一下。

  1. 第四期 202 人報名,120 人錄取,82人淘汰
  2. 下一期的程式導師實驗計畫有可能會做些許調整,但方向不確定,總之如果確定了會儘早公告

就是這樣啦,之後有的忙了…


Image for post
Image for post
Photo by Hubert Neufeld on Unsplash

又是一篇收到了一大堆報名信以後的心得。

這次的樣本數變多了(接近兩百封),觀察到的個案也增加了。在這次的報名信裡面,很多人是因為看到各種轉職成功的文章,因而對程式有了興趣,覺得轉職成軟體工程師是一個不錯的選擇,然後才來報名這個課程。

然後有很多人希望以後能夠遠端工作,過著時間上比較自由的生活,或者是當個 Digital nomad,一邊工作一邊到處旅遊之類的。

我沒有說這樣不好,也沒有說你做不到,但我覺得在看一件事情時,如果被大量的、朝某一個方向傾斜的資訊給淹沒了,比較難看到事情的全面,也會讓你對這件事情產生一個可能沒有那麼正確的認知。

這是什麼意思呢?

當初讓你產生興趣的那些文章,你有沒有覺得每篇都很吸引人?許多都是從各行各業,看似跟程式沒什麼關係的背景然後轉職成工程師,上下班時間比較彈性,薪水也不錯,甚至還有出國工作或者是進知名大公司的人。

沒錯,非常吸引人,每一篇都很吸引人。接著過一段時間你或許會發現,咦,怎麼好像想要學程式轉職工程師的人這麼多,可是看到的案例都是那幾篇。

問題來了:

那其他人去哪裡了?現在在做什麼?

我不知道,你也不知道,很多商業導向的培訓班也不會讓你知道。因為對外放出的成功案例的目的之一就是吸引大家去消費,所以當然只會放吸引人的。其他那些學程式學一學發現沒那麼簡單就默默淡出,或者是學完以後發現轉職成工程師沒有那麼美好的人呢?不,他們不會出現在那些文章上。

這就像是什麼,像是開飲料店。

以前看到藝人開飲料店,現在網紅也開飲料店,每隔一段時間就有新的飲料店出現,不免會產生:「哇,開飲料店好像很好賺」的想法。但仔細想了一下,我有看到倒掉的飲料店嗎?有,而且不少。那如果真的很好賺,那些倒掉的是發生了什麼事?

我只看到飲料店一家一家開,卻選擇性地忽略了飲料店也是一家一家倒這件事情。其實開飲料店(或其實做任何事)都沒有想像中的容易,很多時候你以為容易,是因為你接收到、看到的都是成功的案例,少看了很多失敗的。

我覺得目前軟體工程師就是這樣,太多太多轉職成功的文章了。

好,這邊先假設你最後轉職成功了,找到了一份軟體工程師的工作,那大概會過著怎麼樣的生活?進去怎樣的公司?薪水大概是多少?

先假設你沒有任何程式相關背景,沒有任何顯著的學歷,程式也寫得普普通通,沒有特別好。可以參考一下這篇被很多人轉過的文章:【密技】台灣軟體業業界現況詳解、軟體工程師指南

以裡面對公司的區分來說,你去到的很有可能是「傳統大公司」、「做不太起來的新創、假新創、很小的新創」或者是「其他小資型小公司」。

可能上下班也不彈性,偶爾還需要加班,然後工作內容也滿亂的,搞不好沒有設計師也沒有 PM,你要一個人負責所有的需求,code 也一團糟,甚至沒有工程師同事可以一起討論。

薪水的部分,月薪大概 35k~42k 左右,我也不知道這樣的薪水範圍算是好還不好,但根據我以往的觀察,差不多就是這個範圍。

然後如果你有相關背景、學歷或是雖然沒基礎但是是天生武學奇才,寫程式寫得很猛,那薪水當然有可能再上去,就算是非本科轉職,到月薪 60k 也都有可能,但那真的要滿厲害才做得到。

再來我們談談遠端工作,好像滿多人都嚮往這種生活。

我以前也曾經嚮往過,直到我發現自己不適合。

喜歡是一件事,適不適合又是另外一件,如果兩個答案都是正向的,那當然很好,但只要有一個不是就沒辦法。你只想過自己喜歡遠端工作,有想過自己適合遠端工作嗎?有想過遠端工作需要具備什麼能力嗎?還是你只是看到那些遠端工作的文章覺得這樣好棒,其他什麼都沒有想?

建議可以看看這兩篇:想要遠距工作,你準備好了嗎?(上) | 超衝擊的五大難關在 Ticketsolve 跨時區 Remote 一年多的心得,你可能會發現遠端工作跟你想像中的不一樣。

再來,我覺得遠端工作對專業能力的需求,比在辦公室工作還來得高。為什麼?因為遠端工作:

  1. 很吃溝通能力
  2. 需要能獨立作業

在辦公室工作,你可以當個助理工程師,碰到自己解不開的問題就去問 mentor 或是其他同事,反正就坐附近而已,問問題很快。碰到不了解的地方也可以直接當面找人溝通,講不清楚就比手畫腳或是畫圖。

但是遠端工作呢?有可能大家習慣的工作時間或是時區不一樣,你沒辦法及時找到同事,要溝通的時候可能也是以文字為主。更別說如果你是那種私訊只會傳一句:「在嗎?」的人,雖然用的是非同步的工具,腦中卻還是想著要同步來溝通訊息。

還有一點是我覺得最難的,就是遠端工作很吃自制力。

如果哪天我真的要遠端工作,我一定還是會出門,找一個 co-working space 之類的,因為我沒辦法在家工作。這就跟以前念書考試一樣,有些人可以在家裡準備大考,拒絕電視、電腦跟床的誘惑,但有些人就是不行,只好去補習班或者是 K 書中心,換了一個環境才會有想要讀書的念頭。

再來是出國工作,我也不認為這是短期可以達到的事。

公司請一個外國人,需要幫你申請工作簽證,耗時又耗錢,你必須要有那個價值才行。如果你能力不足,只是一個普通的工程師,那為什麼他們不請當地的工程師就好,要花額外的心力來聘你?(這邊補充一下,如果簽證(身份)不是問題的話,在國外工作應該容易許多)

所以我都會跟我學生說,如果你想去國外工作,在台灣工作個兩三年以上再去挑戰,會更有機會一點。至少你有工作經驗,也不是剛進這個行業的新鮮人了。

總結一下,我這篇文章不是在告訴你「你一定做不到」,我不會這樣跟任何一個人講。相反地,我相信轉職軟體工程師是可以做得到的。

我只是想提醒一些你在看那些光鮮亮麗的文章時沒有想到的部分。我怕有些人看了一大堆內容農場轉職文以後覺得「哇感覺好像很簡單,人人都可以轉職」,但實際學了之後發現不是這樣,怎麼進度跟不上,程式碼看不懂。

期望越大,失望也越大,如果一開始就因為偏頗的認知訂下一些比實際困難的目標,說不定在做不到的時候會被期望反噬。但其實不是你做得不好,不是你不夠努力,是目標本來就比你想像中的還要遠。

舉例來說,遠端工作或是出國工作就可以訂在中長期目標,短期目標是轉職為軟體工程師。或如果想要再把目標切小一點,寫出一個網頁也可以是個短期目標。

其實比起訂目標,我覺得更重要的是去思考以下幾個問題:

  1. 在學習寫程式的時候,你真的喜歡這件事情嗎?想要投入在這個技能上,用它來找工作嗎?
  2. 如果學完程式之後找到的工作是我剛講的那樣,薪水 35k~42k,工作內容不特別,沒有什麼同事可以一起討論,要做的事情很多,那你還想要轉職成工程師嗎?
  3. 如果你發現你所想像的出國工作以及遠端工作都沒有那麼容易,可能需要三四年或更久才能達到,你還想做這件事嗎?

然後強調一件事情,「認清現況」跟「訂定目標」可以是兩回事。在我講這麼多之後,你可以認同我說的「無經驗學歷,程式能力普通出來找工作可能就是這樣」,但也可以把目標訂成「不管,我要付出雙倍的努力雙倍的武力,我就是一年後就要去國外工作,然後年薪百萬」。

我只是把我所認知的現況寫在這篇文章,自己的目標該怎麼訂,到底想不想轉職成工程師,這些都是你自己要思考的事情。

話說我前面寫了這麼多,是想要告訴你轉職軟體工程師很困難嗎?不是,我只是告訴你說轉職成功以後會擁有的生活,可能沒有你想像中的美好。但是轉職工程師這件事情,或許比你想的簡單,也或許比你想得難(完了我好像在說廢話,但這的確要看你對轉職的想像為何)。

我前陣子其實有思考過一個問題:

從什麼時候開始,我認為轉職工程師這件事情沒那麼困難?

因為對小時候的我來說,並不是這樣的。雖然說從很久以前就開始寫程式,但一直認為自己離「把寫程式當工作」還有一段距離,還有更多更多東西需要學習。到了大概大學順利找到實習,然後在公司裡面也混得不錯,才覺得自己要成為工程師沒什麼問題。

可是前陣子再想了一次這個問題,發現自己目前的看法是:「只要你願意拿出時間,對程式有興趣願意學習,半年我就可以讓你從零成為工程師」,不一定每個人都可以,但至少有人可以,至少我相信這件事情是辦得到的,而且我也看過以及親手教過做得到的人。

思考了一下原因,或許跟不知道從什麼時候就開始冒出來的一堆工程師培訓班有關。除了工程師以外,當然也有很多其他職業的培訓班,但我覺得軟體工程師不太一樣的原因在於課程不斷在進化,而且越來越完整。畢竟競爭激烈嘛,而且業界的技術本身就一直在進步,課程也要跟著演進才能跟上時代,沒有跟上的就會被淘汰。

然後工程師又是一個很開放而且資源很多的社群,網路上可以找到一堆問題的解答、好用的函式庫以及免費的教學,除了工程師,我還真的不知道哪個職業可以這麼輕易找到這麼多資源(可能部分的媒體吧,隨便抄個 PTT 就一篇報導了)。

工作機會多應該也是一個原因。未來我不知道,但以現況來說,你去 104 搜一下職缺就知道了,真的很多。而且儘管現在想轉工程師的人這麼多,職缺依然還是很多。

總之呢,我自己是認為無論是自學或是透過各種培訓班,要轉職成工程師都不是一件難事,是有機會可以做到的。

但也千萬別把這件事想得那麼容易。如果你以前曾有過自學而且非常努力的經驗(可能學日文啦,學設計啦,學行銷啦,學什麼都可以),那或許就不是那麼難。但如果你以前學什麼都三分鐘熱度,日文只會五十音、背英文單字只會 abandon,說要學很多東西但都還沒開始,那這其實不是「學程式」的問題,而是「學習」的問題了。

話說在這個「轉職工程師並不是那麼困難」的年代,其實有個問題值得大家思考。因為這種轉職的工程師變多了嘛,入行門檻變低,競爭變高,那轉職完以後,要如何繼續生存下去?要如何讓自己不會被淘汰?想不到也沒關係,沒有目標也沒有關係,可以跟我一樣幾乎沒什麼規劃,歡迎加入隨波逐流聯盟。

最後來講講工程師的優點好了,以下幾點是我自己有感受到的:

  1. 薪水(跟上面寫的一樣,對某些產業來說可能算是比較高的了)
  2. 移動力(無論到哪個國家或是哪間公司,都需要差不多的技能)
  3. 工作機會多(去 104 上面搜一大堆職缺,但雷的缺當然也很多)
  4. 升遷(基本上就是實力往上走,薪水就往上走)
  5. 生態圈(可以看到一堆免費資源、技術討論、社群以及技術文章)

我不會覺得每個人都一定要變成工程師,但我的確認為寫程式是一個還不錯的技能,如果擁有的話會很棒。就算沒有想要當工程師,也可以去學個程式,有時候結合自己的領域會有出乎意料的效果。

喔對了,我這個人有時候比較喜歡冷門一點的東西,當一件事情變得太熱門的時候,對我來說就沒那麼酷了。所以在這個人人都想轉職工程師的年代,我幫自己訂下的中期目標是:「不要當工程師」。

我希望五年後的我不是個工程師(沒有在玩文字遊戲,所以也不會是什麼技術主管之類的)。至於會是什麼,我也不知道。

補充:

話說發完這篇文之後,突然想起來自己五年前就已經寫過有點類似的東西了:那些「鹹魚翻身」的文章沒有告訴你的事,那時候的用詞有種好稚嫩(?)的感覺,現在老ㄌ,社會化ㄌ

About

Huli

重度拖延症患者,興趣是光想不做,有很多想做的事,卻一件都沒有執行。無聊的時候喜歡寫文章,發現自己好像有把事情講得比其他人清楚的能力。相信分享與交流可以讓世界更美好。Medium 文章列表請參考:https://aszx87410.github.io/blog/medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store