非營利組織內的軟體團隊
在軟體的世界,「分享」的成本很低,動動手指頭就能與全世界的人分享自己的創作,他人也能享受相同的成果,並且持續讓它更好。
—— 均一架構師 Isacl
近年來,許多跨過企業駐台爭取台灣軟體人才,疫情掀起遠距工作潮後,軟體人才有更多跨國遠距發展的可能;在這個競爭激烈的環境下,有一小群軟體工程師,毅然決然選擇了台灣當地的「非營利組織」,作為實踐自己抱負的場域。究竟這個軟體團隊有哪些獨特之處,吸引頂尖台灣技術人才與知名外商的軟體人投入?這次邀請到均一架構師 Isacl,分享他眼中的均一軟體團隊。
從教育願景出發的團隊文化 —— 開放且重視參與
唐鳳曾提過參與政府並非目的,而是為了持守「讓大眾更容易參與政治」這個價值觀的手段。均一的工程師伙伴分享到,投入在均一的工作,也是他實踐自己理想中「大家都能簡單參與教育」的方式;均一教育平台雖然還沒有做到 Open Source,但團隊期待持續推動「開放參與」的教育,且現在進行的每一步,包含正在展開的「重構」專案,都將幫助產品變得更容易參與。
在軟體的世界「分享」的成本很低,動動手指頭就能與全世界的人分享自己的創作,他人也能享受相同的成果,並且持續讓它更好。工程團隊喜歡開源文化,也享受「一起動手做」的感覺。均一產品若能做到 Open Source,外部參與者也能發揮貢獻,且能夠讓均一的內容更容易被外部單位使用。雖然目前程式中還有不少寫死的密碼需要移除,也還缺功能說明與 contribution guide,均一團隊仍逐步往這個方向邁進。
當前的挑戰 —— 重構
2020 年度,均一教育平台產品上線滿九年,程式庫累積了需多待解決的問題,均一教育平台的功能看似單純,但其背後運作的程式碼複雜程度,已經與功能不能相提並論。拿冰山做比喻,技術債就像是冰山水面下的那塊,而帶給使用者價值的是水面上看得到的部份,我們每開發一個功能,冰山也會向下沉多一點。開發任何的新 feature,都有許多顧慮。面對這個困境,團隊決心展開一波重大的均一教育平台重構行動。
重構有許多的方法,而均一目前選擇的是較有挑戰性的那一種。Isacl 比喻:「就像做房屋翻修裝潢的同時,不能破壞原有的家俱。」均一教育平台的一大特色,就是讓用戶可以持續追蹤自己的學習,以「終身學習」為目標,有許多既有的紀錄與功能環環相扣,因此必須選擇較費工但也較能顧及全局的重構手段。
「大家可能覺得數位學習平台不需要太厲害的技術,也不用 handle 太麻煩的流量。確實,如果跟電商比,那麼同時要處理 transaction 的狀況確實沒有這麼多。但是,在疫情來了以後,其實均一也是要同時處理 30,000 位 concurrent users,daily active users (不重複) 超過 50 萬。2021 年 五月,教育現場的停課不停學,造成數位學習不再是邊陲議題,而是主流議題。這裡面,均一為了能夠走更久,確實從去年起把將近有 10 年歷史的 codebase 開始做有系統的大重構,光是 2021 Q4 就刪除了約數十萬行 code 並 且不影響產品功能,同時也把所謂根檔案路徑從 250 個整合到 110 個。做這些事情,都是為了讓軟體工程師有更有效的開發環境,能去因應不斷成長的使用者與開發需求!」
——均一 CEO 冠緯
對於 2022 年面臨的困難與挑戰,團隊將其當作一次大掃除,儘管重構沒有「完成」的一天,軟體程式本身需要持續地維護與更新,但至少這次大規模重構之後,均一更有信心可以加速日後的開發、降低維護成本,也為未來「開源」的目標鋪路。
「現在正在進行軟體大規模簡化。均一的網站功能不複雜,但是系統經歷過不同開發者多年的開發,程式非常龐大,這遠遠超出我加入前的想像。幸好均一已經有良好的 CI/CD 及 issue tracking、code review 等基礎,管理層也願意放手讓我們做,讓這麼困難的重構成為可行的工作。」
——均一架構師 Isacl
團隊日常 —— 落實參與與多元文化
「每次聽夥伴分享成果或目標時感受到的教育熱誠都很印象深刻;每天最期待的是 daily scrum 後的『微分享』時間,可以從夥伴身上學到很多東西。」
—— 均一架構師 Isacl
均一的軟體團隊組成多元且重視每個成員的參與,也關心夥伴們的生活;團隊內的分享很活絡,夥伴們都很樂意互相幫忙。團隊不定期安排 hack day,會處理平常排不進排程、但又很重要的事件,近期項目例如整理 notion、整理 issue,以及自動化測試星空探險隊的活動。
*星空探險隊是均一平台教育基金會每年年底舉辦的線上學習活動,也是全台最大的中小學線上學習活動
多元自主的均一軟體團隊,特別需要有自學能力以及強烈內在動機、認同感的人。工程團隊描述到,均一的技術流程很好,但滿多滿雜,需要能獨立思考的工程師。對年輕夥伴來說,必須有明確的自我成長的目標、有認同感,以及在均一的任務上堅持和努力的決心。
「組織很尊重每個人,但自己要知道自己要什麼。」團隊的工程師認為自制力、上進心是均一人不可或缺的核心特質,若自身有明確的追求,均一的大流量、組織內學習機會、多元開放的風氣,能讓成員在這裡累積到很不錯的經歷。
做一份能持守自身價值觀的工作
在工程團隊的理想中,教育是自由且開放的,想貢獻的人就可以很簡單的參與。當人越來越能知道自己想持守的價值觀,就不會錯;若能將均一的架構做得更好,也會往「開放大眾參與」的目標更進一步。
「比如某些情況下,醫生可能只會跟病人說有 A 跟 B 兩種藥可以選,但是實際上 C 的效果可能最好,只是會讓事情變複雜或是有其他的利益因素,導致沒有被公開出來給病人選擇。」我們期待用簡單的方式弭平資訊落差,讓每個人都有足夠多選擇的機會。
——均一架構師 Isacl
均一教育平台 提供免費且開放的學習資源,幫助弭平學習資源落差;ShareClass 讓老師們上傳自己設計的講義、學習單、備課內容,一起共創優質的教學資源,都呼應了「讓每個人有更多選擇與機會」的價值。
這個舞台樸實無華,但重視讓每個人發光
如果你也期待用自身的軟體技能,發揮影響力,讓教育資源更容易取得,讓下個世代擁有更多元的資源與選擇,這裡會讓你找到志同道合的夥伴,一起成長與自我實現!
作者 / 編輯|Emily(均一平台教育基金會 Marketing Lead)