top of page

朱冠承

Jason Chu

​專業實習報告

​​工作詳述

 

​維護公司的內部系統

部門主要負責處理我們公司對內的系統,包括處理系統出現的BUG,增加需求,維護及改善系統,另外還有開發新功能、系統都是我們部門主要的工作

​問題單處理

公司有個JIRA系統是用來分配問題單和追蹤處理的進度,每張單子完成後,會記錄問題單處理的過程以及使用工時等資訊,還會上傳一些文件、參考的程式碼,以及功能截圖作為測試文件,讓開單子的人容易確認,且接下來的維護者可以將此當作參考文件方便了解上一次處理的方式,也讓其他遇到類似狀況的人可以參考這支程式進行處理。

每日例行早會

一早進公司的第一件事就是我們部門的早會,部門人員實習生和正職會在早上九點進會議室開早會,內容是每個人輪流講述前一天做了什麼事、遇到什麼問題、今天要做哪些事情,這個會議最主要的目的是讓自己能將前一天遇到的困難,或是工作上遇到的問題告訴大家,可能其他人也有遇到相同的問題,或是知道怎麼解決,藉此交流分享、解決,這種例行的會議,不但可以監督自己按時完成工作,讓大家了解前一天每個人的進度,也能解決自己遇到的難題。

 

設定Sprint分派工作

除了每天的早會,我們部門也會以每15個工作天作為一個Sprint,設定這個Sprint的主要目標,在每個Sprint結束開始時開會,每次開會會先讓大家進行這個Sprint主要工作的完成進度Codereview,以投影的方式介紹自己這個Sprint的主要工作成果,包含實作功能以及程式碼,讓大家看自己的程式碼,介紹自己是如何編寫這段程式碼、有用到甚麼比較特別的寫法,在演示的過程中,其他人也會給予建議或可以改進的方式。

Codereview結束後,會讓大家分享"Good & Learn:假如我們再做一次相同的Sprint,我們那些事情可以保持相同的做法?"以及"Could have done better:假如我們再做一次相同的Sprint,我們那些事情的做法可以改變",讓下一個Sprint能夠更好。

最後,預估下個Sprint每人的工作時數,使用JIRA依時數分配下一個Sprint每個人的工作。

​讀書會

我們部門還有個讀書會,藉由閱讀學習研究特定書籍或是網路文章,增加員工的見聞以及能力,我們每兩個禮拜會開一次讀書會,由安排到的主講人負責介紹被安排到的段落,由於我們近期讀書會的內容是單元測試,除了單純的文書介紹以外,還有程式碼以及功能操作的實例介紹。

實習期間完成的進度

  • 實習訓練 建立圖書維護網站

  • 實習訓練Store Procedure使用

  • 實習訓練Dapper.Net 使用

  • 工時彙總資料維護

  • 自由格式列印:匯出Excel

  • SQL排程產生報表

  • 筆記型電腦補助資料維護

  • 單元測試

  • 資安:VM掃毒

  • 自由格式列印:匯出Excel格式定義

  • 預支申請及驗收單、驗收付款申請單:增加項目

  • 交易業績獎金發放作業:增加權控

  • 合約資料維護:非OP人員不可看到特定按鈕

  • 合約資料維護:調整浮動按鈕顏色

  • 合約資料維護:分項-專案類的必填檢查修正

  • 業務人員成本中心維護:增加「業務人員成本中心明細表」

  • 新自由格式列印 : 製作預約的報表

  • 客戶:信用等級,財務資訊欄位上方請加註紅色提醒文字

  • 合約資料維護(OP):增加共用金額(原其他類分項)設定區塊

  • 合約資料維護(OP):主檔欄位文字調整

  • 合約資料維護(OP):增加費用類別區塊-BackEnd,UI

  • DB Object: *= 寫法改寫

  • [DB EoS] GLM(含財會) ASP Source 盤點 & *= 改寫

  • [DB EoS] GLM(含財會) DLL Source 盤點 & *= 改寫

  • [eMIS] MIS權限設定

  • 合約資料維護(OP):新增合約時不要顯示特定按鈕

  • ISBG Report:改寫由Exe產出報表

  • [雲端訂單] 雲端訂單資料維護(SR):增加可維護多個銷售案

  • 合約資料管理(OP):存檔時增加寫入CNOPPM

  • [雲端訂單] 雲端訂單資料維護(OP)-查詢:存檔時增加寫入CLOUD_CNOPPM

  • [雲端訂單] 雲端訂單資料維護(SR):存檔時增加寫入CLOUD_CNOPPM

  • 合約資料管理(OP):增加可維護多個銷售案

  • [雲端訂單] 雲端訂單資料維護(OP)-明細:存檔時增加寫入CLOUD_CNOPPM

  • [雲端訂單] 雲端訂單資料維護(OP)-查詢:增加可維護多個銷售案

  • [雲端訂單] 雲端訂單資料維護(OP)-明細:增加可維護多個銷售案

  • [eMIS] MIS權限設定:調整「表單名稱」輸入中文也可以查的到資料

  • ISBG Report:AR_AR003、FORECAST_SFM05、Order_CN005 最後一筆資料格式不符

  • [eMIS] MIS權限設定:參照權限來源員工預設值要透過程式帶出員工姓名,非寫死文字。

  • [eMIS] MIS權限設定:調整「表單名稱」輸入中文也可以查的到資料

  • [雲端訂單] 雲端訂單資料維護(OP):Gird上銷售案「+」失效

  • [雲端訂單] 雲端管報:靜態網頁欄位異動 II

  • [費用申報提醒通知信] 修改聯絡窗口

  • 報到系統:批次報名

  • 報到系統:單次報名

  • 報到系統:同步報名名單

  • Study Angular

  • 資料處理 : 移除JIRA過期專案

  • eMIS-專案負責人執行力指標(Mgr):專案類別與交易型態對應維護

  • [自由格式列印] AM009增加「入帳年月」欄位

  • 合約資料管理(OP):增加「補寄合約成立通知信」按鈕

  • [eMIS] 搬移原自由格式「DIV01--複製發票作業」

  • 員工(快速)查詢:開放市話編輯

  • kendo升級:修改CSS、JS檔

  • 新自由格式列印 : EM003新增最愛時會出現SQL語法

  • 新自由格式列印 : 設定條件多選下拉選單會失敗

  • 雲端order成案:資料匯入異常

  • 合約資料管理(OP):SI分項進貨成本不等於0,原廠幣別欄位需為必填。

  • 員工(快速)查詢:市話編輯要能存空值

  • [雲端訂單] 雲端訂單客戶資料維護

  • 新自由格式列印 : 塞選條件與原自由格式列印比要

  • Menu:加入「雲端訂單客戶資料維護」

  • 合約資料管理(OP):SI分項「成本淨額」不等於0,原廠幣別欄位需為必填。

  • 合約資料管理(OP):「產品」分項「進貨成本」或「成本淨額」不等於0,原廠幣別欄位需為必填。

  • 合約代理產品下單資訊整批匯入:增加「原廠幣別」

  • 新自由格式列印 : 將缺少的條件補回

  • 合約資料管理(OP):增加同步作業失敗通知信

  • [雲端訂單] 雲端訂單資料維護(OP):取得GSSCLOUD訂單-UI

  • [雲端訂單] 中繼檔:增加呼叫中繼檔異常通知信

  • [雲端訂單] 通知信:CloudMailCenter

  • 資安-程式碼比對:GLMCU

  • 資安-程式碼比對:GLMCU

  • 資安-程式碼比對:GLMCF

  • 資安-程式碼比對:GLMAU

  • 資安-程式碼比對:GLMGL

  • 資安-程式碼比對:GLMNT

  • [自由格式列印] AR003:「帳款合約期別」欄位調正為文字型別(要有小綠點)        Sales Portal:排行榜呈現資料調整

  • [自由格式列印] CN025:「進貨成本(未稅-2012年起)」欄位格式設定為可被計算的格式

  • 合約資料管理(PM):增加「廠商別」條件

  • [自由格式列印] CN005增加聯絡人等相關資訊

  • [雲端訂單] 經銷商分潤資料維護:增加生效起訖日設定

  • [雲端訂單] 雲端訂單資料維護(OP):取得GSSCLOUD訂單-BackEnd

  • [雲端訂單] 雲端訂單資料維護(OP):取得GSSCLOUD訂單-Call WebService

  • DB升級GLM異常測試

  • [自由格式列印] CN005:增加「合約相關重要項目」欄位

  • [ISBG Report] ORDER_CN005:增加「合約相關重要項目」欄位       

  • [自由格式列印] CN042:保固起日、保固迄日若為空值要可被函數計算

  • [自由格式列印] 因應增加China 6%稅率調整相關報表

  • 雲端訂單客戶資料維護:增加「聯絡電話」、「地址」欄位

  • [eMIS] 交易業績獎金發放作業 - 鎖定發放資料:增加發薪年月鎖定明細

  • 合約資料管理(OP):新增「用印合約(合約書)」欄位-UI

  • 合約資料管理(OP):新增「交易文件」欄位-Backend

  • [ISBG Report] 排程改寫

  • [自由格式列印] CN005:增加「簽約公司-甲方名稱」欄位

  • [自由格式列印] CN025:增加「簽約公司-甲方名稱」欄位

  • [自由格式列印] CN042:增加「簽約公司-甲方名稱」欄位

  • 雲端銷售案匯總表:增加「結案日」、「產品代號」欄位

  • [DB EoS] GLM 相關功能測試

  • 圖書管理系統:管理權限增加 alyssa_chiou

  • [資安] 乘車券排程程式:加密處理

  • [自由格式列印] CN005:增加「交易文件」欄位

  • [雲端訂單] 經銷商分潤資料維護:經潤生效/終止日臨界值判斷調整

  • 通知信:調整說明文字

  • 排程設定:年度reset序號僅可於當年度一月一號執行

  • [eMIS] 交易業績獎金發放作業 - 交易業績獎金計算:產出的報表增加員工編號以及備註欄位

  • [eMIS] 交易業績獎金發放作業 - 匯出發放明細表:增加員工編號以及備註欄位

  • 通知信:執行SmartForm「離職資料建檔」提醒

  • 通知信:執行SmartForm「在職員工月結作業」提醒

  • 一般印信申請單:增加「機密等級:限閱」文字

  • 特殊印信申請單:增加「機密等級:限閱」文字

  • 名片申請單:增加「機密等級:限閱」文字

  • 工讀生筆記型電腦補助申請單:增加「機密等級:限閱」文字

  • 招募需求單:增加「機密等級:限閱」文字   

  • 筆記型電腦補助申請單:增加「機密等級:限閱」文字

  • HR新進人員On Board考核表:增加「機密等級:限閱」文字   

  • 付款申請單:增加「機密等級:限閱」文字

  • 採購印信申請單:增加「機密等級:限閱」文字

  • 書籍影印申請單:增加「機密等級:限閱」文字

  • 保證作業申請單:增加「機密等級:限閱」文字

  • 報價申請單:增加「機密等級:限閱」文字

  • 驗收/付款申請單(Odoo):增加「機密等級:限閱」文字

  • 保固金申請單:增加「機密等級:限閱」文字

  • 出貨單:增加「機密等級:限閱」文字

  • 合約軟體授權申請表:增加「機密等級:限閱」文字

  • 預支付款申請單(Odoo):增加「機密等級:限閱」文字

  • Non Order 軟體授權申請表:增加「機密等級:限閱」文字

  • 費用申請單:增加「機密等級:限閱」文字

  • 撤銷申請單:增加「機密等級:限閱」文字

  • [資安] 乘車券排程程式:加密修正為 Ir.dll

  • 報價申請單:若批示歷程中有批示者填寫批示意見,預設打開批示歷程。

  • ISBG Report:供應商付款預估表報表標題異常

  • 合約資料管理(OP):增加「政府補助案」註記

  • 合約完工百分比資料維護

  • [雲端訂單] 經銷商分潤資料維護:功能權限同「合約資料管理(OP)」非同「交易型態代碼維護」

  • 自由格式列印:EM017報表調整

  • 報價單:因應雲端虛擬銀行帳號調整範本

  • [雲端訂單] 經銷商分潤資料維護:增加合約編號及可維護多個Email

學習

技術性

(一) 網頁程式、SQL撰寫能力

進來叡揚實習後,接觸的專案都是由Javascript、Jquery、C#、SQL等程式語言所構成的,原本頂多對C#、SQL有些微接觸而已,經過這幾個月每天的學習和實作,對於這些語言也已經漸漸熟悉了起來,能更快去理解和撰寫。

1.前端網頁設計

在進行修改需求的工作中,常常會有增加或修改網頁文字或排版的需求,自己也接過要新增一整個板塊的工作,在找到自己要修改的部分以及修改的過程中,充分的了解原先網頁的寫法、構造,也學會如何應用Javascript套KENDO以及CSS

2.後端程式

除了前端的網頁方面外,還有與後端程式銜接的部分,在訓練期間,我們在Javascript的程式裡,學會用Ajax去抓Json的資料,用C#去撰寫後端程式碼,連進資料庫抓取資料,最後在丟回前端顯示,在匯出EXCEL的工作中,也學會怎麼將資料庫撈回的資料丟到Datatable再運用他寫程式匯出報表。除了用一個專案去寫前端之外,後端再寫一支程式接資料,讓前後端完全分離,使程式更好進行管理

3.語言/建立檢視View/預存程序Stored Procedure

除了前後端的網頁以及功能程式外,在叡揚期間,最常接觸的就是SQL了。在學校雖然有寫過SQL語法,但也都只是基本以及觀念而已,公司這麼多的DB和TABLE,用到更多的Join聯結TABLE和每筆資料,還有在資料變更時的Transaction動作以免將資料錯誤變更,除此之外,不只是學校教的基本語法,也學會寫Stored Procedure去讓後端程式呼叫,在程式驗證資料正確性的部分,進資料庫的SP去驗證資料,就不用慢慢地重新寫語法驗證,驗證不成功還多此一舉了。除了SP外,View也是在實習接觸並學習到的學校沒教的東西,修改了那些語法和SP之後,自己撰寫SQL語言的能力也獲得了提升

(二) Debug能力/閱讀程式能力/撰寫習慣

1.Debug /找錯誤能力

從訓練期間到進部門,寫程式總會遇到各式各樣的網頁錯誤和BUG,剛開始沒有方向去尋找錯誤,透過前輩一步一步的教授,教我怎麼運用F12、設中斷點、監看式、Debugger逐步Debug,看程式進行的步驟和每個變數裡的資料,檢視是哪一步的哪個位置有錯誤或略過了,也會在程式執行錯誤時,到資料夾去看log寫出來的錯誤訊息。一步一步自己尋找錯誤後,找錯誤的能力也越來越進步

2.閱讀程式能力/撰寫習慣

除了Debug外,每張問題單的需求都是去修改專案裡的程式,但是這些專案都不是由自己開始寫的,最困難的事不是自己寫程式,而是去看懂別人的程式,找出要修改的功能和程式是哪一支,一開始都會找不到程式花相當久的時間,經驗累積過後才慢慢減少找新專案的程式的時間

3.撰寫習慣

進到公司開始寫程式後,最被關注的就是程式習慣,諸如排版,變數命名等,在學校寫程式的時候都是自己寫,只要寫好要的東西交出去就好,但在公司不一樣.我們不只要把程式寫完,還要能讓這隻程式能好進行維護,因為程式部只有你看就好,還要讓別人都看的方便,這時候撰寫習慣和註解就非常重要

(三) MVC方法

來公司之後,才知道一個專案裡的程式不像學校寫的作業那樣才短短幾行而已,公司裡一個大專案,如果程式碼都寫再一起,根本就不會讓人想去看,超長的程式碼維護起來也更加困難,MVC讓前後端分離,建立Service、Dao等把不同需求的程式碼的資料都一一分離出來,在管理程式上變得精簡方便和一目瞭然。

(四) GIT/SVN專案管理

面對龐大的專案和程式碼,GIT或SVN是來公司之後用到的管理專案的方法,每一次寫完程式後都會commit或push上GIT或SVN,記錄撰寫過程和每一個分支,記住每一次每一天撰寫的程式修改到的部分,還能去比較每一次commit的程式差異。如果改寫時不小心就把程式或網頁弄壞,GIT或SVN都還有紀錄能還原到上一次成功的地方,不怕寫的程式遺失,管理起來也更有效率。

非技術性

(一) 學會溝通、討論

我們實習生,主要由PM分配工作下來讓我們作,有些工作如果PM交代的不夠清楚,或是我們有其他疑問和想法,對呈現方式不清楚或想做出不同的呈現方式時,這些都是需要和PM及前輩互相討論的,不是死照著做,可以提出想法一起討論解決,有問題也要先問好才不會做出來的樣子和User要求的功能不一樣,或是卡了很久還做不出來,甚至把不該PUSH的東西PUSH上去。

(二) 學習與同事相處與合作

每一個專案裡的每一支功能,背後包含了UI設計,後端資料、資料驗證等功能,每一個部分都互相影響,做完了UI,要確認資料傳進後端有沒有問題,或是後端驗證的資料寫好了沒,這些東西不一定都是由同一個人做完的,PM可能會把工作分配給不同的人,或是前輩會把工作交給你,我們都要相互協助,配合和討論,才能完成每一個功能,和同事們互相合作使得彼此更加熟悉,是一件很令人開心的事呢

(三) 時間安排

來上班之後時間安排的重要性更加明顯了,我們團隊會去預估每張單子完成所需的時數,我們會清楚自己早上要做哪些事情,下午要做哪些事情,下班之後,也會因為上班覺得自己的時間好像變少,而去計劃自己每天的作息,盡量準時睡覺起床,才不會精神不濟

(四) 養成良好的工作態度

在公司,每天都要準時上班和開會,交代的工作要按時間完成,當然內容也要按照User和PM交代的事項做到,不可能隨便做做就敷衍掉,每一項工作都要按照要求完成。上班和上課的差異相當大,到公司後對於工作要更加重視,要更專注在工作上面。

自我評估及心得感想

各SPRING 自我檢討,維持
處理紀錄維持
及時回報
持續發問
紀錄常用程式碼
多試不同關鍵字搜尋
處理紀錄增加
仔細驗證,多想一點
了解每行程式碼工用 不只修改變更部分
搞清楚需求
修改資料時要注意點、可以適時轉換單子做
做完單子要檢查程式邏輯

        實習的日子剩下不多了,剛進到公司進行新人訓練的時候,雖然有達到基本進度需求,但相較其他實習生,自己的不足顯而易見,遇到不懂也都自己鑽牛角尖,不敢問其他前輩,導致進度相較緩慢。

        一年快過去了,雖不到駕輕就熟,但各方面都熟悉了很多,負責改寫過的專案,現在改起來也都快上不少,不懂的地方,有問題的地方,不明確的地方,先鑽研一段時間,時間一到就立刻問人,現在已經能跟前輩們經常交流發問,工作效率跟當初比提升了不少。

        在公司寫到的程式,上手速度比較慢,但也因為這樣學到了很多新的語言、寫程式技巧跟Debug技巧,跟學校寫程式的不同之處,在學校我們可能只需要寫出要求的東西就好,但是在公司寫程式我們不只要做到這樣,還要寫出能讓其他人包括自己之後好進行維護的程式,讓下一個做的人能輕易了解程式碼意義。
 
  雖然我還是很多東西都不會,但是只要能去發問,主管和其他前輩,都會很耐心地告訴我,工作的前輩、上司人都很好,沒有人會拒絕發問,只要敢問學到的東西就是自己的,在這裡真的學習了很多。

直到最近都還會接到一些新接觸的專案,用不熟悉的語言修改需求,看之前沒看過的架構.學到一些新的技巧。

  希望最後的實習日子能更加順利。
 

對系上的建議

系上力推的實習制度,幫我們安排多間公司選擇,不用自己在外面找實習找面試機會,幫助我們提早進入職場體驗,讓我們更了解職場的樣貌。

  對系上的建議主要還是在開課方面吧,希望系上可以更多家安排程式實作的課程,c/c++是第一次接觸程式時很好的一個基礎,但其實就是學程式觀念而已,兩堂課的差異實在不大,基礎觀念學會之後,程式語言的學習用實作練習效率可能會比較好,也希望系上能開更多不同的程式課程,把選修的程式語言課納入必修,增加應用和實作的講座,讓我們在實作上有多一點的經驗。
    
    程式方面希望增加程式架構方面的教學如MVC、VB.NET、ASP.NET,前後端、資料傳遞等都是在實習期間才認識熟悉的,網頁方面希望增加F12開發者工具的應用教學,SQL方面課程的實用性應用性都不太夠,可以介紹SQL Server Profiler等應用。
 

bottom of page