精誠隨想行動科技股份有限公司 1091704 柯廷昀
姓 名:柯廷昀
學 號:1091704
指導教授:林耀欽
一、工作環境
我所在的公司是在精誠隨想,屬於精誠資訊的子公司,而我所在的公司位置是位於七樓,其他樓層屬於其他公司的,地理位置則是離捷運站稍遠一點。生活機能方面,附近就有好幾條美食街,因此飲食還蠻方便的。交通方面,雖然捷運有點遠,但走路兩三分就有Youbike,而這棟樓的地下室有停車場,所以交通方式蠻多元的。
二、工作內容
我實習的部門是全端技術研發處A,主要負責後端的部分。工作主要使用的語言是C#。第一份專案是使用.NET Webform,第二份專案.NET Core,除此之外還需要學習其他的技能,像是了解怎麼做版控,如何優化code,還要抽空學習新的技術以及研究程式寫法上面的差別。
1. 測試期 2~3月
一開始主管會指派一個任務,就是叫我用熟悉的語言做訂票系統,除此之外還有兩個要求,一個是要有API,一個是要做出搶票的功能。這算是我第一次自己做簡單的前後端加上API,以往學校的作業都有別人的可以參考。這次的實作讓我了解到蠻幹是效率極差的,一定要先把每一步驟都先思考清楚,也要思考自己有沒有能力做出這個功能,不然就會像這次一樣,做了小半個月卻因為沒想清楚而打掉重做。
2. 熟悉期 3~5月
這是我接到的第一個專案,是幫一家電子道路收費相關公司的push web 新增功能,簡單來說就是後台管理程式開發。我一開始根本無從下手,詢問mentor多次後才漸入佳境,由於是新增功能,有其他功能的程式碼可以參考,所以我覺得學到最多的部分是如何有效率的debug,而不是像無頭蒼蠅亂試一通。
3. 彩卷官網 5月中~現今
如標題所述,我第二個專案是彩券相關公司官網的後端API開發,目前我們要做的是官網的第五版,因者使用的語言跟前面版本不一樣,所以需要全部重頭開始寫。 而我主要的工作是負責開發API,首先要先看網頁呈現的腳本,去思考此頁面會需要我回傳那些資料,而我則需要撰寫程式碼將資料庫的資料抓回來進行處理並利用API傳回前端。
此外,我偶爾會需要學習新的技術並應用到現有的專案上,也會被指派研究程式寫法上面的差別,但我覺得學到最重要的是優化code,因為此專案屬於大型專案,會要求效能上的加強,優化code就顯得極為重要。
三、學習
1. 技術
甲. Coding
藉由兩次專案的撰寫,讓我對業界的專案有了初步的認識,也對整體架構、前後端及API有了更透徹的了解。收穫最多的莫過於優化code,在優化的過程總能了解自己的不足以及認識更多的程式寫法。
乙. 版本控制
認識到版控對於團隊專案的重要,也了解開分支(branch)跟合併(merge)如何操作,更重要的是學會反向提交和退版,畢竟犯錯是在所難免的。
丙. 預存程序
它可以讓我進入資料庫的次數變少,進而加快效能。假設我需要抓五筆資料,然後這五筆又不關聯,原本需要進入資料庫五次,但運用預存程序,它可以讓我進入一次就把五筆資料抓出來,然後再進行處理。當然也能在資料庫處理完再抓出來,而這又是更高竿的寫法。
2. 非技術
甲. 思考方式的轉變
最近主管一直強調優化的重要,不只是效能的調整,程式的可讀性也是一大重點,並且也能讓後續接此專案的人看出來我們專不專業。而我自從被要求優化以後,寫程式時總是不自覺的去思考這個部分是不是可以進行優化,這是我多年來未曾有過的想法,希望未來能夠繼續保有此想法。
乙. 人脈
這真的很重要,不只能夠拿到很多網路上找不到資源,也可以少走很多彎路。9月份公司有舉辦籃球賽,我剛好藉由這次機會認識了不少其他部門的同事,這就是一個拓展人脈的機會。
丙. 表達
這是一個能用一輩子的技能,不論是在工作上的交流,平常的聊天也是需要的,表達不清楚都是不吃香的。我目前的專案常常需要跟同事進行討論,主管偶爾會要我code review,讓我有更多機會去精進自己的表達能力
四、心得
1. 自我評估
第一個專案是電子道路相關公司的後台程式開發,讓我熟悉公司專案是如何運作的;第二個專案是彩卷相關公司官網的後端API開發,也是我收穫最多的一個專案,主要分成三個部分。首先是自學新技術,因為這算是全新的案子,所以開發中常常需要自學新的技術並馬上應用到現有的案子上,算是一個有挑戰性且有成就感的過程。接著是優化code,因為此專案屬於大型專案,所以會強調效能,而我在效能調校收穫非常多,不只有思考上的轉變,也獲得滿滿的成就感。最後是表達上的突破,開發上常常需要跟前端討論,表達就顯得格外重要,加上主管偶爾會要求我code review,對於我的思緒釐清和表達幫助不小,但表達畢竟是我的弱項,所以還在努力中。
2. 心得感想及期許
在這實習的一開始,了解到自己專業能力的不足,而且學習能力也不快,因此我一直在思考我適不適合寫程式,但轉念一想,不適合又如何,總得有一個能餬口的工作。
從一開始的茫然,第一次接觸到如次龐大的專案,不知道如何下手,時常去請教同事,幾個月以來似乎沒學到甚麼,到如今自發去研究新的技術,應用到當前的專案,開發程式時也不忘思考效能的問題,漸漸的有了自己的步調,慢慢適應了朝九晚六的生活。
在最後僅剩的半年,希望自己能再有所突破,敢問敢答,加快自己在程式邏輯思考的速度。願半年後的我,能找到堅持下去的理由,能擁有對這份工作的熱愛。
3. 對系上的建議
若有機會,真的會希望學弟妹能選擇校外實習,當然若是想要考研的就另當別論,畢竟邊工作邊準備研究所考試真得需要非常大的毅力。我想說的是,校外實習真的能成長很多,因為業界用到的技術跟在學校學的截然不同,幾乎所有的技能都是需要從頭學起的,所以實習生活就是工作跟學習兼顧的生活。同時,也可以思考這樣的生活是不是自己想要的,因為實習的生活就算是豫嚐出社會後的生活。當然,有的公司對於實習生是處於比較放生的態度,有的則是去做很多雜工,所以要先多問問學長姐,畢竟實習一次就是一年,誰也不希望浪費一年在不喜歡的環境上吧!
五、活動參與
1. 健身課程 - 燃脂肌力
我報名公司開的健身課程,一是自己對於本就有興趣,二是回到家only耍廢,三是想多認識同事以外的人。因為是徒手健身,最多加個啞鈴,對於我這種懶得去健身房的人還蠻需要的,而且還認識了一個不同部門的人,算是一個不錯的收穫。
2. 公司籃球賽
這是精誠內部的籃球賽,雖然組別不多,但還是有一些甲組乙組的人,有點恐怖。這個活動不只讓我上班之餘放鬆一下,還跟幾個同子公司但不同部門的同事混熟了,讓漂泊在台北的我稍微不那麼孤單,當然初衷還是想要多動動筋骨,畢竟平常自己一個人是不太會運動的。
3. 城市路跑
此活動分為兩種賽制,三千和一萬兩千公尺,我當然是報三千,畢竟平常沒有在訓練,只是因為沒有參加過這種活動,想來嘗試看看。4點起床真的是很困難,然後起床一會就要跑步的確是有點折磨人,但見到清晨的台北和看到同事攜家帶子的來跑忽然覺得一切都值了,這種新奇的體驗和歸屬感真的不錯。