政大Google學生開發者社群-心得(第一學期)
前言
在剛上大二時,除了手邊和學長的專案,我也參加了政大的Google學生開發者社群。主要是希望透過提案,利用科技來解決問題,在這裡我也深深感受到Google的文化,那就是不會怕去嘗試、不怕去解決問題,我也認識在這個社群中的各個人才。在這個社群中,我除了擔任自己專案領導人的角色外,我也身兼後端技術長的任務,也是想要發揮我目前所學到的、最成熟的後端知識。除了技術面,如何管理一個團隊、一項專案,也是一門很大的課題。希望在未來可以繼續把自己的這項專案做到完善,解決真正的問題!
定位與職位
我這次的提案叫做「政大通NCCUPass」,以政大校園生活為出發點,想要做一款能夠解決政大學生生活上不便的APP,透過專案組的討論與調查,帶來更便利、聰明與數位化的校園生活,讓校園內的需求能夠即時被滿足,也讓這款APP融入政大學生的生活中,成為政大校園內不可或缺的一部分,因此,「政大通-NCCUPass」的提案就此誕生
下面是我們第一次期末發表的海報和照片
海報內呈現的是我們規劃、也正在開發的功能
這個是期末發表當天的攤位介紹照片
參與證書
在這個專案中,我擔任Project Leader(專案主持人),與Backend Tech-Lead(後端技術長)的身份,帶領總共11人的團隊,在我們這個團隊中,主要分成四組,前端、後端、UI/UX、文書,除了負責主要的後端技術,也要帶領後端的組員們提升實力、協調與規劃。以專案領導人的角度來看,除了需要規劃整個專案的進度與走向外,也要監督進度、協調各組、人際溝通等等,除了利用各種專案管理的工具外,也要撰寫各種文件與流程圖,老實說滿累的XD。但也是遇到一群願意跟隨我的隊友們,一起成長,真的非常得感謝他們🙏
技術
下面是我們的系統架構圖,因為我是負責後端的部分,所以會著重畫後端的架構
根據上面的架構圖,我們的專案主要部署在Ubuntu的主機上,所有的服務利用Docker Compose統一建立,另外還有利用GitLab Runner做到自動化整合與自動化部屬的功能。後端程式是由.NET C#撰寫,這邊我使用的是Software Layer Architecture Pattern(軟體分層架構),結合各種Design Pattern再加上自己的一些變形,資料庫是使用MongoDB的Replica-Set,也有使用Redis做快取,照片和一些公開的檔案主要放在我們的File Server上。其他技術細節我就列在下面,想看的人可以參考一下XD
1 | - Software Layer Architecture pattern (多層) |
之後也會一直新增,因為現在處於專案開發的初期。
結語
最後,這個專案雖然只是在發展初期,但我希望未來可以發展到我預想的樣子,也非常感謝一路願意跟隨我、幫助我的隊友們,單打獨鬥真的比不上團隊合作👍,也希望各位未來也可以繼續幫助我啦,現在打分享文可能還太早,但我就是想要趁學期末趕快記錄一下哈哈