[競賽筆記]【2021 TSMC x Microsoft CareerHack】第二屆 紀實 & 心得分享 (上)

TM
15 min readApr 8, 2021
CareerHack
台積電,微軟
參訪台積電 (TSMC) 時的團體照

這次以『 Unicode Studio 』當隊名組了個團隊參與 2021 的 CareerHack 競賽,在混合實境 ( Mixed Reality ) 組得到了『 第二名 』,事後想想覺得蠻幸運也很喜歡這個活動,因此趁還記得時趕緊寫下來跟大家分享啦~

因為要分享的東西太多了 XD,所以就拆分成上、下兩篇,想知道整個活動細項的小夥伴們,一定不要錯過啦!!

  • (上篇):這裡主要會分享整個活動的報名、以及第一階段的篩選,最後會分享參訪台積電和參與台灣微軟 WorkShop 的一些內容。
  • (下篇):最重要的在這啦!!(上篇也很重要 XD),這篇我會分享黑客松的比賽過程,以及團隊做出來的專案~

第一次寫 Medium,希望大家會喜歡,話不多說,馬上進入正文吧~~

1. TSMC x Microsoft CareerHack 活動報名

CareerHack 是台灣微軟與台積電共同舉辦的徵才黑客松比賽,最早是去年剛開始辦的第一屆,所以算是一個蠻新的一個活動。

那時候會報名是因為在 Facebook 的校版上 (台科大頭殼版) 上看到有人分享這個訊息,再加上剛報名完蝦皮的 I’m the Best Coder 黑客松 (有機會再來寫這場的心得 XD),整個很熱血,因此就馬上手刀分享給隊友們。

活動報名
演算法大師的隊友果然很夯,還好他夠義氣跟我組隊

隊友原本已經在揪團要報名了,還好被我搶先一步先納入麾下 XD,就這樣我們當下就說好然後速速的揪了 4 人,那時候我們取了個隊名叫『 Unicode Studio 』,感覺很帥又很有意義,就毫無懸念的報名下去了。

報名的話,活動網址內有報名表單,填的資料都頗基本的就是一些基本資料等等,所有組員都是要個別填寫,然後隊名寫同一個就會同組了~

比較重要的是,此次比賽有三個主題:AI Internet of Things (物聯網)、Mixed Reality (混合實境)、AI Chatbot (聊天機器人),在報名時同組的要填一樣的志願序,主辦單位將依據後續 Coding 測驗之組內平均分數,由高至低並參酌其各隊題目志願序分發到 AIoT 、MR 或 AI Chatbot 其中一個主題,三個主題各會篩選出6~12 組 (依組隊人數與報名隊伍數調整) 晉級後續 Workshop、Hack day 活動。也就是說, Coding Test 總分高的隊伍,就有優先權選擇主題。

2. 第一階段 Coding 測驗

成功報名後,活動大會會寄信來確認,然後後續的話表定 2020/11/30 會寄送測驗的網址,那這次 Coding Test 的平台是用:Codility

這平台除了 Online Judge 的基本功能外,他還會計算出程式的空間複雜度、時間複雜度,甚至會紀錄編成的每一步驟 (如果你是直接用上面的 IDE 寫的話)。

但後來大會那邊好像因為後台的一些技術問題,因此有發信說延後 (11/30 當天等的很緊張,覺得為啥都還沒收到測驗網址),因此實際的測驗時間延後至 2020/12/06–2020/12/08 ,2020/12/10 會公布入選隊伍 (豪刺激 ><)。

測驗開始

總共有 3 題,共限時 60 分鐘 (平台也會紀錄總解題時間,因此我們這隊寫得非常快)。

第一題:單純的 Print 字串

給定輸入一個整數 N,然後 1迭代到 N,且同時能被2、3、5整除時,若是能被 2 整除的就輸出『Codility』、若是能被 3整除的就輸出『Test』、若是能被5整除的則輸出『Coders』,感覺很饒口,直接來看 code 吧 XD~

第二題:從一字串中找到大小寫都有出現的字母 (按照順序)

給定一個輸入字串 S,若有一字母,同時符合大小寫皆字串 S 內,則輸出,若無,則輸出 ”NO” (須按照 Z-A之順序,例如若同時字母 A跟 C符合上述之條件,則輸出為 C)。這題感覺也不難,不過要考慮時間複雜度 (因為有認識的同學寫成 O(n²),後來沒有進到二階,可能是因為這裡扣了一點點的分數 QQ ),下面的寫法控制在 O(n)。

第三題:在一整數中插入一個 5 ,使其為所有可能中最小值

給定一整數 N,可為正數也可為負數,插入數字 5 使其最小,如 N = 123,則可能形成的數為 5123、1523、1253、1235,但是其中 『 1235 』是最小的可能,因此此為答案。

以上就是本次活動的考題以及解法,後來在結果公布日時很開心的過了一階的程式測驗~成功獲取了 WorkShop 及 Hack Day 的門票。

錄取信
令人興奮的測驗通關信

通過程式測驗之後的活動總共有三場,如上面的錄取信

  • 2020/12/21 參訪台積電 ←←←
  • 2021/01/19 微軟與 Unity 合辦的 WorkShop (0/1)
  • 2021/01/29~01/30 『~ Hack Day ~』(0/1)

3. TSMC WorkShop 參訪台積電

台積電
唯一拍到的照片 QQ

當天的參訪表定是下午,大會也很用心的有寄了行前說明,我們這隊因為想去新竹看看,因此大概提前了一小時到了新竹 (搭高鐵超快超方便),也順便晃了一下車站旁的百貨,順便吃個午餐。

新竹高鐵站
分享一下當天中午的午餐,物價跟台北一樣都偏高

等到大會集合後,因為台積電的一些保密政策,第一件事其實是發了個袋子,手機及一些電子用品都會被要求放入其中統一保管,那天可能是有史以來手機使用最少的一天吧 XD

其實台積電的位置離新竹高鐵站有一段路,因此大會是有租小巴士來載,車上還有兩位台積電的員工當我們的一日導遊。過程還蠻酷的,畢竟第一次進到竹科裡面,看到了許多的科技大廠,也路過一堆台積電廠房,看完都覺得到底是新竹科學園區還是台積電科學園區啊~

當天的活動行程

  • 13:00 — Registration
  • 13:30 — Opening
  • 13:35 — Greeting from Leaders
  • 13:45 — CareerHack Topics Introduction
  • 14:10 — Tea Time
  • 14:30 — TSMC Tour ( TSMC Museum of Innovation 、Office Tour、Experience Sharing )
  • 16:30 — Closing & Wrap up
  • 17:00 — End

在台積電報到時,因為疫情關係都要量體溫,但因為本身體溫偏高 (去到哪都會剛好達標的那種 QQ),這次毫不意外又是在體溫的臨界點,因此他們還一直關心有沒有不舒服 XD,算是整個活動的小插曲哈哈哈

在開幕式時不管是微軟或是台積電的大人物都有致詞,能親眼看到這些人算是解鎖了一點成就 XD,之後就是比較緊張刺激的 『 公布組別 』,也就是實際公布每一組要實作的主題為何,在上面有提到說會依據每組的測驗總分與志願序來安排,以我們這隊來說原本是排 AI ChatBot -> MR -> AIot,但是最後公布時,是被分到了 MR 組,因此可能測驗分數可能沒有太高哈哈哈,對於 MR 其實也是很疑惑,因為完全沒有接觸過,也沒什麼概念,因此當下的心情就是:??? 完了….。

安排完組別後簡單的吃了下午茶 (其實吃得不錯,是一份三明治跟一杯手搖飲,但不知道是不是在科技場附近的關係,價格不菲啊,三明治竟然是一個便當的價錢),經過吃吃喝喝的快快樂樂階段後,接下來就是重頭戲:參訪台積電。整個過程其實都超想拍照紀錄下來,因為蠻新奇的,從台積電創新館到實際的辦公室內部,還看了員工餐廳等等,逛了一大圈下來的心得就是:恩,環境真不錯,真想來上班哈哈哈哈。

最後是我個人覺得最有收穫的活動 — 『 Experience Sharing 』,實際在幹嘛呢就是每一組都會分派到一個大長桌,並且還會派 2 位學長 (一位來自台積電、一位來自微軟),讓後就是開放給我們問問題及聽他們分享,整個過程非常得愉快,也收穫到很多資訊與內容 (可能是因為都是我們這隊在問問題 哈哈哈),蠻難得能夠與業界兩大科技公司的員工面對面的對談,不管是對職務的分享,或是求職的一些歷程,學長們都能很真實的回答,感覺是很不錯的。

小結

總之,這段大概就是關於 TSMC WorkShop 的分享,蠻可惜就是不能拍照,不然其實有蠻多東西想分享的,不過整體來說是一次很棒的體驗,整個活動的流程都是很順的,內容也很豐富,雖然只是第二屆,但感覺主辦方已很有經驗,令人印象深刻。

題外話,聽大會說第一階段總共報名了 1000 多個 ,包含了全台的各個學校,透過程式測驗篩選出 100 多個參與後續的活動,非常開心能幸運的成為二階錄取裡的其中一隊,但是因為參訪都帶著名牌,發現只有我們這隊跟一位實驗室的學長是掛科技大學,看到的其他竟然都是台清交成的碩士大佬啊,也算是一種奇怪的體驗 XD,我們都開玩笑說把『 科技 』擋住,也算是台大的啊哈哈哈 ( 沒啦,我們是很以台科為榮的 )。

TSMC WorkShop
當天的名牌 & 後面的塑膠袋就是裝手機和電子產品

4. Microsoft WorkShop 微軟工作坊

隨著時間的推演,離 HackDay 也越來越近,不過在 HackDay 前,主辦方也很貼心的怕我們不會使用比賽用工具,因此舉辦了一場算是教學 WorkShop,OK 那就讓我來分享我們這隊在 MR 組的 WorkShop 吧~

  • 2020/12/21 參訪台積電 (1/1)
  • 2021/01/19 微軟與 Unity 合辦的 WorkShop ←←←
  • 2021/01/29~01/30 『~ Hack Day ~』(0/1)

Mixed Reality 混合實境

MR 是什麼?其實可由下面的圖片清楚地看到,比起完全虛擬的 VR ( 虛擬實境 )、或是投影虛擬情境到時景的 AR ( 擴增實境 ),MR ( 混合實境 )是 VR 與 AR的結合,虛擬的情境是與真實的世界做『 融合 』,所以不僅僅能在實地看到,甚至能與其互動。

Mixed Reality
MR 即為將虛擬的內容融合在實地的世界

有了上面簡單快速的 MR 介紹,相信大家都大致了解 MR 的概念了,那要做到將數位虛擬的東西與實地融合,其實還是要搭配硬體的支援,因此來隆重介紹這神奇的工具 — 『 HoloLens 2 』

Microsoft HoloLens 2

HoloLens
HoloLens 2

上面看到的東西是不是很酷!?沒錯,這就是接下來要介紹的 HoloLens →

HoloLens 是由 Microsoft 開發和製造的一對混合現實智能眼鏡,也就是將數位帶到現實世界的神奇工具,只要戴上它,就可以像科幻點影裡那樣神奇與酷炫,而這次介紹的則是微軟第二代的 HoloLens 。

那講這麼多到底跟 Microsoft WorkShop 有什麼關係呢?原來是因為在 MR 組的比賽項目就是基於微軟的 HoloLens 2 透過 Unity 3D ( 一款遊戲引擎 )去實作出餐廳系統的解決方案,但是大家其實都沒有碰過這項硬體與 Unity 3D,因此特別舉辦了一場 WorkShop 來教學~

當天上課的地方是在 Microsoft 的台灣總部,原本以為是在 101 裡面,但是結果是市府站的國泰大樓裡 ,不過還是很氣派,有好幾層整個都是微軟的,而且最重要的是,裡面可以拍照 !!!XDDD

Microsoft
從 19 樓看出去的 View 還是很不錯的

但是其實當天一進去時就是直接到上課的教室,只能趁裝水、上廁所時稍微去晃一下環境,但整體環境看起來十分的整潔高級,也有一些零食飲料等等,一看到就覺得在這裡上班一定很幸福 XD,之後就是進到其中一間的教室來上課。

因為疫情關係,所以也要量體溫,這次不免俗的又受到了『特別關注』,因為體溫又在剛好在臨界點….所以又是搞了一陣子才能進去 XD,體溫偏高真的是一件麻煩的事呀

之後就是在教室內學習,主要的課程分為:

  • Unity 3D 的認識與操作
  • MRTK 的使用
  • 實際部署到 HoloLens 2 硬體上

最一開始,因為大家都沒使用過 Unity,因此講師從最基本的講起,並且一步一步讓我們跟著做 ( 隨時都可以發問,Debug 也可以),之後就是介紹 MRTK

MRTK 是什麼?

MRTK

MRTK 是一項令人驚奇的開放原始碼工具組,自 HoloLens 首次發行之後就已經存在。它是由微軟推出的 Mixed Reality 混合實境開發套件,支援Unity 遊戲引擎, 可用於製作Microsoft Hololens 遊戲的互動功能 ( 下面有附上 Github 連結,有興趣的可以去玩看看 )。

為了要在 Unity 上開發 MR,所以必須仰賴 MRTK 的幫助,因此講師特別在這部分著墨許多 ( 因為整個比賽都必須靠這個工具 ),內容確實還蠻好玩的, MRTK 也包裝的很好,大部分功能都是 Call Function 就可以達成了,不過因為功能大強大,所以感覺要熟用它,肯定要研究個半年吧 XD

最後,成功開發完 Unity 上的小專案後 ( 其實是講師帶著做 ),最重要的環節來了 — 部署,因為比賽當天是需要 Demo ,所以必須把程式打包安裝到 HoloLens 2 上的,因此就算做的再好,沒有部署成功也會是功虧一簣 。

小結

部署的教學結束後,當天的活動也到了尾聲,透過此次 WorkShop 已基礎的理解了 Unity 的編程及 MRTK 的使用,本次活動最開心的大概就是人生第一次踏進微軟吧 XD,不過這次 WorkShop 的內容十分的豐富,教學也很仔細 ( 因為助教還會幫忙 Debug ),整個體驗也是相當不錯,不過可能 MR 組的東西實在太多,所以當天其實是有一點延後結束,不過能實際體驗 HoloLens 2 的機器,最後還拿到講師送的 Unity 原廠毛巾,實在是太有趣了!

5. 總結

呼,打了這麼多,終於寫完關於比賽前的所有過程,整個流程都很順暢,兩場工作坊也都十分有記憶點,也開了很多的眼界吸收了蠻多新的技術與知識, 在 Microsoft WorkShop 結束後離 Hack Day 也只剩 10 天的時間,而參與完這兩場活動後,比賽的題目也逐漸收斂清晰:

發揮創意,思考在餐廳這一指定的情境中如何善用 MR 的概念與 HoloLens做結合,以便利/加速/節省/自動化現有之流程,從使用者 ( 餐廳從業人員或是顧客 ) 的角度出發,明確使用者的需求 ( Request ),思考如何利用 HoloLens 與 MR 提出全新的解決方案。

Hack Day 比賽評分標準

以上就是比賽的題目及評分的依據標準,可以看到其實很大一塊重點是在如何 『 創新運用 』,因此想到一個讓人眼睛為之一亮的主題是必須的,所以後續的準備期我們隊就開了 N 次的會議來討論主題與解決方案,那倒底最後做出來的專案長怎樣呢?!!有興趣的夥伴歡迎關注下集 ( 還在寫 …)~

[競賽筆記]【2021 TSMC x Microsoft CareerHack】第二屆 紀實 & 心得分享 (下)

在下集,我將會分享

  • 討論的過程及主題的收斂
  • Hack Day 前的準備及小插曲
  • 緊張刺激的 Hack Day
  • 我們這隊的專案分享
  • 比賽結果及賽後心得

如果覺得喜歡這次的分享或是有任何問題想問,也都歡迎下面留言討論啦~

若是看完覺得對比賽的題目有創新的想法,也都歡迎留言分享,搞不好下集就可以看到實作出的畫面 XD,好啦那這次的分享就到這個段落~敬請期待下一集!!

Author:TaiMing

To be continued ……

--

--