工作詳述
我所在的部門是IT-CIM之下的MES組
每個人都有自己的位置和桌機
我們實習生最大部份的工作就是撰寫網頁,修改功能
以及處理測試文件或是SQL補資料的文件
學習階段
到公司前兩週主要都是學習的階段,公司會安排一些課程給新進員工學習,從認識半導體的封裝測試,到實際上班會用到的一些coding standard都會開課教,非內部上課時間可以觀看之前留下來的教學影片,並且做練習。影片的主要內容也是我們目前最常碰到的就是FAWEB的修改以及資料庫的串接了。
資料庫
公司使用的資料庫系統是Oracle的資料庫,在使用上面多少有一些不一樣,加上我們對資料庫的應用也不到非常熟悉,所以有個正職工程師就從最基礎Select,Insert……開始教起,其中我在這學到的是在資料庫內寫function,如左圖是可以split字串的方法。
實際工作階段
我們目前主要的工作是修改網頁內容及功能,系統分析師分析完後會傳給我們正職工程師需求單,工程師評估難度再分派給我們實習生做,會先帶著我們分析需求單的內容。會告訴我們可能是修改或新寫出一張報表的功能,帶著我們確定有哪些功能、檢查那些項目
了解網頁需求
左圖是一張新報表的查詢頁面需求,每個欄位可能會用不同輸入方式:TXT或DropDownList或日期,然後左下要有可以Query查詢,輸出成csv或Excel的選項,右下也會解釋要檢查那些項目。
並且最後查詢結果的頁面大概版面如何,要去資料庫找那些資料等等……。
做出查詢網頁
了解規格後我們就要自己遵循著coding standard做出需求。
利用資料庫資料
DropDownList選資料的話,就要利用到連接資料庫去篩選需要的資料了,然而有些資料是必須自己確認的,所以常常會去Oracle的SQL Developer去查詢確認需要的資料內容,如果畫面顯示出來跟資料庫不一樣,就要再檢查。
做出結果頁面
做一個查詢結果的頁面,要根據需求所排的順序及名稱,去篩選Query頁的條件去資料庫抓出資料,並且排入頁面顯示。
編輯功能
要做出一個Edit欄位可以做Insert,Update,Delete等功能,點下前方編輯Update鈕後會跳出一個編輯視窗如下圖,可以編輯修改欄位內容,並且傳回資料庫。
測試文件
完成了需求的報表,我們每一張都要撰寫UTR回傳給我們的工程師,其中UTR主要撰寫是你修改或新增了哪支程式,並且在後方要加上你自己的測試方式及結果完成UTR。
Visual Basic
有時網頁的需求單比較少,所以工程師們叫我去練習寫Visual Basic ,這是一個新的領域,且使用的Visual Basic 6.0和內部教學影片都沒有,大部分學習的內容都可以從網路上學習,因此我就被自主得到一個新的技能,及一樣新的作業-用VB寫出一個功能正常的小算盤,並且有多項的測試要通過,才算一個正常簡單用的小算盤。
暑假工作階段
暑期階段我主要接到一個任務,就是幫忙把公司舊有的VB網頁翻寫成C#的公版畫面。現在現有的網頁,有很多都是10~20年前的前輩寫的,之後再一直無限的疊加上去,所以整支程式就變得很大、很亂,加上之前的文件整理的觀念沒那麼好,所以甚至有什麼功能都沒人可以確定,要自己去用Code或仔細的去玩功能才能確定。
了解網頁功能
看似可能不難的網頁,但是裡面有些運算邏輯,或是功能都是很零碎的,或是有些Function是VB語法有的用法,但是C#沒有的,此時就只能自己去了解原本的VB在寫什麼,自己用C#有的語法寫出來相同的方法,不然少個一兩行可能就跳出不同結果了。
做出網頁並還原
當程式功能都成功做完之後,為了讓使用者銜接不要有問題,要盡量做同排版。
測試功能
一切最麻煩的真的不是寫程式的階段,寫程式階段一定只是小小的艱辛,必需更有耐心的地方是有很多很多的文件和測試要做,像是測試程式功能就每個功能都要測到,不像之前可能測自己有更改的地方就好,為了不要改了反而有錯,一定要有數量的測試,而且也是必要的,因為以我自己的經驗,前兩次我覺得驗很多次的程式,給正職測還是會有Bug,為了不要麻煩到很忙的正職工程師,我們最好是自己多驗幾次