如何培養下一世代的資訊人才?
我在學校待了蠻長的時間。這要感謝中華民國的兵役制度,也要感謝許多老師對我的包容。
不過在學校多年的觀察,我發現學生是蠻可憐的一群。自己當年還是學生時,遇到的最大挑戰就是:對要記背的東西一竅不通,因為我總是無法順利硬記,那些我不懂道理或為什麼的東西:數學公式、化學組成、歷史的人事地物…。
到了大學,雖然多了選課自由,仍是不太理解多數科目是做甚麼的。它們通常只是很片段的知識,一門課和另一門沒甚麼關聯的感覺,而一門課的內容也不清楚能用在哪裡,或怎樣解決我生活或未來工作上,最迫切需要處理的問題。
我大學時一心想成為一個遊戲程式設計師,因為 7 歲就開始玩遊戲,也被像 John Carmack 這樣程式大師的啟發 (他的小團隊單手就發明整個第一人稱射擊, FPS 的領域)。但我面臨的資訊管理課程要求我把「經濟、會計、統計」「應用數學」等科目上好,不然無法畢業。
當時我的「小叛逆」是,大二那年決定:不再遵循畢業要求,為了充分體會大學的完整內涵,把當時學校十二個科系,每個系都修一門專業必修課,充分體會「全人教育」的意涵。結果自然很慘:無法跟上數學系的微積分及中文系的中文,加上忙著戀愛,大二下就被雙二一退學。
雖然後來還是畢業了 (事實上,一直讀到博士)。但這個經驗,加上後來工作後接觸到真正的「業界需求和」,才發現學校和社會要求的,落差頗大。這幾年雖然已經不在學校了,對學校現況不太了解,但從業界朋友所聽到的,也幾乎是學校畢業生需要重新訓練,基本上也別有太多期待。
老師努力的教、學生認真的學、老闆們也盡力的經營… 但中間的落差是怎麼產生的呢?
我無法也無意去分析整個問題,但想提出我們自己的觀點和解法。
整件事,其實和「個人」的努力、認真、負責否,可能都無關,較可能是一個「環境變遷」的問題。
怎麼說呢?
因為資訊科技的蓬勃發展,科技,特別是軟體科技,其實已經在「吃這個世界」了 。而這幾年的發展是,「AI 正在吃掉軟體」。簡單說,工作或職場的現況是,我們正因科技的快速發展 (也要感謝我們這些科技人),大環境的工作模式、方法、機會,一直都在快速發生質變。
以前大家去書店買書,現在雖然還是有書店,但除了把看書加值「讀書體驗」的誠品或類誠品,大部分傳統書店都已被網路書店取代。Uber 在取代計程車。而 7–11 這類「雜貨店」起家的連鎖也開始和傳統物流競爭。
工作職場上的需求是快速變化的。
而學校本質上就是一個「穩定緩慢」的環境,受政府或家長對教育重視的資源投入下,相對來說可以避免變遷的第一線衝擊。
雖然提供學生相對穩定的被保護環境,卻也讓學生們失去在學校期間培養真實工作能力的機會。
但隨著 80 後出生的「千禧世代」漸成為職場主力, 工作環境及文化改變也大幅挑戰原來的教育方式。
根據 Darren Hardy (美國 Success 雜誌創辦發行人及 Compound Effect 一書作者) ,對這些成為工作主力及管理者的「千禧世代」或更年輕的世代來說,除了薪水和社會地位外,其他工作層面的面向也會是重要的,包括:
成長
「千禧世代」最在意的工作首要選擇是,工作能否帶來成長及自我挑戰?若一份工作只是單純的重複,短時間內就可掌握且無持續的進步,那可能很快就會考慮更換到其他工作。
成就感
當物質已不匱乏,透過工作能否真正實踐內心深入認同及渴望的價值,反成為更重要的考慮。對許多人來說,薪資早就不是工作選擇的主要考慮,能否透過工作自我實踐反而是關鍵。
成人之美
「意義」及「為什麼?」會是繼個人的成長和成就感後,大家主要問的問題。除了自己,到底這份工作會幫到誰?是否對更多人、對社會整體是有價值有意義的?未來會有越來越多自主性高的工作者,是因為一件事的「任務」(mission) 而參與,而不是待遇或福利。
所以可以怎樣做呢?
這問題我們團隊 (意門科技) 思考過很長的時間,而現在提出一個簡單的模式,供大家參考:
1. 把重點放在學習面對「變化」上
傳統的 IT 培訓或專案管理,都假設目標 (或「規格」, spec) 是明確且可被定義的。之後大家就照著目標,一路努力邁進。但真正參與過實際專案工作,特別是新創 (startup) 領域中,都會了解規格是一直在變動的。許多因素都會導致規格被更明確定義、調整、甚至整個改變。
業界面對的解法是提出各種「敏捷式開發」(Agile Development) 的模式和流程,主要概念包括把傳統以「年、月」為單位的規劃模式,改用為「周」。我們的經驗是,在特定情況下改成以「天」為單位,不僅能更貼近需求,節省不必要的開發浪費,開發和需求者也會有更良性的合作。
2. 直接參與解決業界任務及社會問題
許多教學透過「習作」或「練習」來確認學習者有了解或掌握了一個概念。但隨著工具及能力的多元化,及要解決問題變複雜,「作業式」學習面臨很大的限制,學生也難感受「系統」的全貌。
因為新創團隊總是較缺乏資源,我們很早就開始試著找到能仰賴「學生開發者」完成專案的模式。我們發現,透過適當的規劃及引導,學生也能在很短時間內參與實際開發工作。甚至我們發現,最好的「面試」不是考試及面試,而是「實際小規模參與」專案。
另個好處是,透過直接參與專案,學習者很快就會去接觸到開發細節外的「為什麼?」(Why?) 而非只停留在「做甚麼?」(What) 或「怎麼做?」(How) 的層次。對系統的整體觀點也能較快去掌握。
3. 團隊、遠距、跨國合作
學習是一種「社會」而非「個別」行為。舉例來說,若自己的工作沒完成會立刻影響到團隊進度,做事的態度很快就容易被培養起來 (或監督出來),因為沒有人喜歡成為被排擠的「害群之馬」。透過「團隊」為單位的學習模式,其實較個人學習來的有效也有動機。
資訊領域一個普面的共識是:人才的能力差別是很大的,好的開發和一般的開發者生產力不僅只有兩三倍的差異,而是 10x 或以上的差異。因此,若能掌握並延攬最優秀的人才,「工作地點」上勢必要有高度彈性。這也是為何意門一開始就發展「遠距工作」模式。多年來也算找到一個還算有效的方法。
遠距互動直接的影響是,除了本國/本地的合作夥伴外,也容易建立跨國、國際性的問題解決團隊。以我們為例,為了能建立 7x24 的開發/維運模式,我們也從 2019 開始積極思考、怎樣能透過全球跨時區的特性,建立一個不間斷的開發/維運團隊。
我們因此構想出一個課程/培訓模式,包括三方的參與:
學習者
主要透過和學校或有學生的單位合作,讓學生 (或對開發有興趣的轉職者) 能透過一期期的方式參與訓練。訓練期為 4~6 周,除了基本工具的學習和掌握,最重要的是對「極端敏捷」(Extreme Agile) 開發流程有一定的認識和體驗,每天有所產出以和需求者確認。
需求者
為了讓培訓的學員真正感受到實際問題的廣度及複雜,此模式要能邀請到有「實際需求」的業界或組織合作者,把他們希望解決的問題或困難直接提出,並由學員分組後解決。需求者主要要提供的是「需求」和針對學員產出成果給予「回饋」(每日,或每期的回饋)。
平台提供者
這個角色主要會由我們 (意門科技) 扮演,包括提供一個完全雲端化的開發環境 (學員因此不需安裝任何軟體, 瀏覽器一打開就能參與學習及開發的工作)、及完整的線上課程培訓 (包括一周四天, 共四周的課程內容)。中間也包括學員可即時提問的 office hours / Q&A 時間。
這個課程預計用一個「敏捷訓練營」(Agile Boot Camp) 的模式進行,若您或您的單位對此模式的參與有興趣,歡迎您直接報名! 或留下聯絡方式,我們會在適當時間進一步和您聯繫!