『軟體開發人員職涯發展手冊』開發副業專案 (side project)

2024/03/12閱讀時間約 6 分鐘

終於來到這本書的尾聲;盡力完成一件事真的會變成一種「習慣」,也就是作者所說的「生活態度」。

這讓我想到以前看過的日本漫畫「我要高飛 (體操高手)」,裡面有提到所謂的「王牌」,並不是每次都能順利落地成功,而是盡全力「使完成」。

所謂的「使完成」就是想盡辦法做完整的動作,就算有瑕疵但最後還是能完成動作。

作者一直提到要扮演專案終結者,其實就是告訴我們透過這個方式,來培養「使完成」的習慣,進而形成自己的生活態度。

我自己也從做「副業專案」的過程中受益良多,本來不自律且容易幫自己找藉口放棄的壞習慣,在大學進行實務專題時,被磨礪了一番。

應該說人會變成今天的模樣,都是有種種的事件發生串連而成,而這當中的種種「選擇」造就今日的自己。

記得第一個完成的副業專案是實驗室的碩班學長出的一個小題目,我用當時熟悉的 VB 6.0 撰寫了有圖形介面的「彈力發射模擬系統」,其實這沒甚麼特殊意義,當時單純覺得好玩,順便讓自己熟悉程式語言跟 GUI 的設計。

但就是這個小專案,讓我從原先的軌道跳到另外一邊去,負責實驗室的教授看到我有程式設計的能力後,就讓我跟著他學習「機器視覺」的專案開發技術,這真是個巧合,讓人預料不到。

後來就陸續開發了很多副業專案及全國性的競賽,也親身經歷了這些專案「知識變現」的過程,那時候對於程式設計的熱情難以言喻。

這些過程帶給我的,並不是說技術變得高深莫測,現在回頭看當時的自己還只是個沒有太多專業知識的程式菜鳥,重點在於那個時候都「堅持把每個專案完成」,久而久之變成一種態度,也惠及我後續唸碩士班、博士班及創業的過程。

當我在演算法上無法突破想放棄、說好用英文撰寫碩論的目標快要無法達成、出國唸書語言檢定卡關、博士論文換題目覺得自己無法畢業、創業中遇到的種種困難與抉擇,以及幾年前決定在職去唸 MBA等,每一個事件都像是一個關卡在考驗著我的判斷與行動。

而在這些過程中,都還是有持續不間斷的副業專案,彷彿在告訴我「要堅持下去並想辦法完成它」。

現在講的很輕鬆,但大腦馬上聯想到會列出來的事件,都是當時我真的找了一堆藉口想要放棄的重大關卡,「我是真的想放棄」,但又有個信念支持我走下去。

因此非常認同作者所說副業專案的重要性,主要還是透過專案開發的過程,來塑造自身的生活態度以及相信自己能完成的信念,我也很喜歡「使完成」這個說法。

至於做一件事多目的,這部份我有相關經驗,不過遠不及作者所提的那麼廣泛;大致上還是一魚多吃,做能兼顧學術發表及技術授權或對未來創業有幫助的工作,這部份自己要事先規劃好並確認最終目標,過程中會有許多因素干擾,而這也會影響到最終目標的完成度。

我現在還是持續開發副業專案,有時候動手做反而能讓腦袋越來越靈活,但不得不說「成年人的時間管理」真的好難阿!


本章節重點摘要如下:

夢想是你追求的某件事,而目標是你要做的某件事
  • 作者認為他先前 15 年的工作資歷對他的職涯和人生帶來的影響,還不如他當初完成的那個小型「副業專案 (side project)」來的大。
  • 軟體開發人員提升職涯的最佳方法,毫無例外都是透過副業專案;一個小小的 Android 應用程式對作者的人生和職涯影響深遠。
  • 一項為期六個月的副業專案,能讓你快速累積經驗,如果想從平常朝九晚五的工作中獲得這些經驗,可能要花上好幾年的時間。
為了實現目標,你要有具體的行動。
  • 強力建議從非常小的專案開始,從一個你知道自己能輕鬆完成的小型副業專案開始,甚至是那種只花你數週或最多一個月時間的某件事。


第一次做副業專案時,最好先模仿某個已經存在的成品
  • 作者擁護「多目的」,不過,多工就很糟,而且很難實現,最終只會降低你整體的生產力;多目的代表開發一個副業專案,但伴隨一個以上的目的。
  • 作者舉例他這本書的「寫書副業」,每天花一小時的時間寫作,背負了以下幾項目的:
  1. 維持每天寫一千字的習慣。
  2. 產出一本書。
  3. 銷售書籍,帶來額外收入。
  4. 創造部落格內容。
  5. 增加部落格註冊人數。
  • 他還能夠過以下方法,進一步實現多目的:
  1. 銷售本書的電子版。
  2. 銷售本書的紙本版。
  3. 銷售本書的有聲版。
  4. 製作影片,將以上版本包裝成豪華加值版銷售。
  5. 利用章節內容,產出 YouTube 影片。 
  • 想想看如何讓你的副業專案兼具多個目的:
  1. 學習新的程式語言。
  2. 學習新的框架。
  3. 練習或精通現有的技能。
  4. 開發應用程式,解決你遇到的問題。
  5. 開發應用程式,解決他人遇到的問題。
  6. 創造額外的收入。
  7. 作為面試資料。
  8. 作為部落格內容。
  9. 將影片內容用於應用程式開發上。
  10. 將專案用於指導他人。
  11. 利用專案獲得他人的指導。
  12. 提高自己的紀律。
  13. 結交新朋友。
  14. 了解你感興趣的產業。
  15. 完成學院或大學作業。
  • 動手做任何事前,重點是先規劃你要「做什麼」以及定義「最終目標」;請注意三項基本要素:
  1. 目標或完成標準。
  2. 完成期限。
  3. 一套系統或設定時程表以推動專案。
  • 良好的生產力系統是專案成功的關鍵,請確實做到以下幾點:
  1. 清楚定義你每天或每週能投入多少時間在專案開發上。
  2. 定義你何時要投入這段時間 (寫在行事曆上)。
  3. 定義一套流程,用以追蹤你的「工作進度」和需要完成的「工作項目」。
  • 堅持才能真正地完成專案,並從中獲益。這代表你要為副業專案的開發工作建立時程表,不論發生什麼事,你都會堅持時程表的進度。
所有的成功都來自於微小事物的累積與堅持
我們都曾經一頭熱地投入某些事,卻沒有走到最後;你要下定決心,不管是那個專案,即使你再討厭,一旦你起頭了,就一定要完成它。
  • 除非真的打算完成一件事,否則就不會開始投入,這是一種「生活態度」。
  • 推薦你找一些方法,從所有副業專案裡賺取收入,即使收入微薄也沒關係。
  • 你不可能從副業專案裡賺第一桶金;但隨著時間累積,或許能從眾多副業專案中獲得大量收入。
重點是專案前期就要思考如何從中獲益。
  • 所有的軟體開發人員手上都應該要有一些正在進行的副業專案;從小型專案做起,承諾時程然後完成。
「知道要做什麼」和「知道結果是什麼」兩者之間存在很大的差異。
  • 我們都不知道最後的結果會如何,所以必須帶著我們所擁有的知識,盡全力去應用這些知識,然後「相信過程」;堅持不放棄,終究會有成功的一天。
閱讀可以用最低的成本來獲得別人經驗,培養閱讀能力,一生受益。但要記住,別只讓自己的大腦永遠處於「輸入狀態」,要適當地「輸出」自己的想法。透過閱讀輸入,再利用寫作輸出,就像「費曼學習法」說的一樣,教授到別人能夠了解,自己才算是領悟了這門學問。
留言0
查看全部
發表第一個留言支持創作者!
從 Google News 追蹤更多 vocus 的最新精選內容