一、Basic concepts
智易本身是間網通公司,因此要求工程師們對於網路資訊的認知要有一定的程度是再基本不過。而系上所開授的課正好有幫助到我,那就是李錫捷教授的「資訊網路」。說實話我很慶幸有修過這門課,因為上課所學到的一些基本知識都有運用在我的工作上,比方說從簡單的IPv4,IPv6協定,到OSI模型的7層、TCP/IP模型,到SSH協定、DNS協定的基本知識,當前輩講到這些專業術語或是提問的時候,有學過有印象就會來的方便許多。當然這只是冰山一角,仍然有許多的專業術語要認知,因此我會趁著測試項目告一段落,或是空閒之餘,自己去查找,提升基礎概念。
二、Firmware upgrade & Container installation
這個部分就慢慢進入到工作內容的核心。公司每隔幾天就會有不同的firmware跟container產生,目的就是要測試在不同的版本下,觀察連上Router的設備提供出來的結果有何不同。而每當有新的版本出來,我就要手動更新Router。這個環境的位置依照不同項目的Router,測試的位置也就可能不同,可能在9F空曠但乾淨的環境,可能在6F密集且雜亂的實驗室,也可能在4F chamber非常密集且乾淨的密閉空間。這三個地方也就成為我平時會去工作的環境。
爾後當Router成功安裝新的版本後,連接上設備,再去觀察設備提供在cloud端上的結果,是否合乎預期。會使用到的工具是MobaXterm,一款SSH客戶端連線軟體。直至現今,過完暑假兩個月後,對於Linux系統也慢慢掌握得宜,對於我的工作來說會用到的相關指令都記得蠻清楚也能靈活運用,但依然要邊做邊學,畢竟能多學就是好事。
三、Comparison & Table record
再來就到了相對重要的比對,上述說到接上設備後再去觀察,這些設備從隨處可見的手機、電腦,到智慧插座、智慧燈泡,到吸塵器、監視器,都是我會需要觀察的產品。而在這連接過程中,在哪個環境又顯得格外重要,如果在4F的chamber那一定很順利,可如果是6F或是9F,就不一定了,因為有些設備是走2.4G頻寬的,在雜亂的環境就不一定連得上,因此這不但是測試產品本身的訊號能力,同時也是測試耐心。
設備都連上後,就要觀察是否有在cloud端上呈現。所謂的cloud端,通常要安裝container才能透過螢幕呈現出來。當設備出現在cloud端上後主要就是觀察有無這三項,Device Name, Device Type, Device Sub Type,因為這三項是檢查此firmware有無問題的重要指標,接下來不論是否有無出現,都會記錄在table上。照理來說,當設備連上Router時,在cloud上就會呈現這三項,而我自己遇過兩次cloud端上沒有畫面的狀況。一次就是container還沒裝,一次則是其他因素。為此,我與前輩就有跟cloud team的R&D們開會,這也是我的工作偶爾會遇到的事情,跟不同處的工程師們溝通。雖然對他們講的內容的多數都是不解,畢竟工作性質有差,但還是能從中聽到一些方法,有可能對之後的測使有幫助也不一定,所以還是認真聽,前輩也會不厭其煩地再和我講解一次。
四、Comparison & Table record
最後則是最重要的項目測試。當設備都比對完成,確認都沒有問題後就會另開一個新的table,同時會配合公司研發的app同步在android設備與iOS設備中記錄連上線的設備在app端上的反應。當出現問題,就要上報問題到公司的問題端,而問題被建立後就稱作Bug ticket。上報問題時寫的越詳細越好,因為這個問題可能是cloud team負責,也有可能是其他軟體處的R&D負責,他們會針對你在Bug ticket 中的敘述提供解法。最後我就要按照這些解法去執行,所以要是回報問題時不夠詳細,很有可能就會讓這個問題無法在短時間內得到處理,耽誤所有人的時間。
當問題被解決後,簡單一點的方法更新app就可以了,複雜一點可能就要使用MobaXterm進到Router的console裡重新更新firmware、安裝新的container,甚至進到container進行其他操作。因此就是不斷的循環這些步驟,而通常這些流程不會一、兩個禮拜就完成,因為還要與其他部門的人溝通處理,而大家也本就有各自的項目要處理,因此有些項目會要等到一、兩個月都是有可能的,可說是相當耗時。
執行這些測試項目可一點都不能馬虎。首先這每個項目都各自有負責的R&D撰寫程式,光是測項就高達200個,也就是說,交付到顧客手中的app都是數十個工程師完成的,因此若要讓顧客有最佳的使用體驗,我就要模擬顧客的使用行為,在這200個項目中不停的測試。加上先前提到每隔幾天都會有新版的firmware跟container產生,結果就是每隔幾天就得執行這200個測項,雖然有時會感到煩躁,但前輩、其他處的R&D都還在不停的修改,自己更要做好自己的工作,畢竟從程式上看沒有問題,不代表操作行為就不會出錯,這也是我在實習中一步步真實體會到職場的分工合作。