# 李熙堃的網誌 - 履歷 由於 `powerpoint` 等等 office 軟體需要付錢,我也比較傾向於公開我所有的經歷讓所有人檢閱,歡迎留言互相討論,若想要看我的心路歷程,請參考最下方的 "成為工程師的路徑" 若有問題想詢問我,歡迎 inbox: * joshualee032190@gmail.com * https://tw.linkedin.com/in/joshualee032190 * https://github.com/JoshuaLee0321 ## 學歷 `2014/9 ~ 2017/6` 士林高商 資料處理科 `2017/9 ~ 2021/6` 國立台北科技大學 應用英文系 `2022/7 ~ 2024/9` 成功大學 資訊工程系 現職:聯發科韌體工程師 :::info 有些人不相信文組可以成功轉職成為工程師,以下為我的心路歷程,希望我藉由公開我的經歷,能讓更多人轉職成工程師時較有自信,而且也較有目的性的去修一些課程。藉由我自己的 `roadmap` 我希望能夠讓更多人更有目的性的去選擇修習一些課程,讓未來在工作上,不要一問三不知。 ::: --- ## 履歷以及參與的專案 ### 聯發科 AE * Written a `complete code guide` for newcomers within 2 months * In this project... * 習得 scaler 為何? * Scaler 內部功能介紹 (非常多,例如 PIP PBP 等等),且在不同情況下都可以實作不同功能 * Completed `how to draw OSD` guideline in company wiki * Completed a Demo Case for customer * "更熟悉如何作為一個 `韌體工程師` 與 `硬體工程師` 溝通" * 例如, `hardware pin define`, `hardware mux behavior`, `kvm`... * 更熟悉如何問問題 * 在 Firmware 的世界中,大部分的問題其實一行就可以解決,若沒有看 log 與詢問學長,很難作為一個新人在短時間內寫完,除非 code flow 是自己設計的 ### 暑期實習 CN3 (瑞昱) * WIFI auto test (Indigo DUI tool) * `python` `appium` audo UI test * wireless testing --- ### 研究所時期 * `jserv related project` -> https://wiki.csie.ncku.edu.tw/User/JoshuaLee0321 * `kasih-cross lingual` -> https://hackmd.io/@JoshuaLee0321/B1yStm43T * [NSTC info](https://www.nstc.gov.tw/folksonomy/rfpDetail/5c7605ea-1264-4f76-bbb3-dce87467c6bc?l=ch) * [[kasih]](https://iog.ncku.edu.tw/p/406-1169-264543,r2694.php?Lang=zh-tw) * [`論文` ](https://drive.google.com/file/d/1K-s3XOomsoieN93_0E4rTOFtjc3Ft2bW/view?usp=drive_link) * 具前後處理校正模型的領域特定命名實體增強型神經網路機器翻譯 * 首先理解 Named Entity (命名實體),為一 Language Model 的辨識系統 * 例如 * "李熙堃" 為 PERSON * "台北" 為 LOCATION * "123" 為 INTEGER * "tomorrow" 為 DATE * 這篇論文利用 Named Entity 搭配深度學習 (Transformer Model) 將詞彙限縮在一定範圍中 * 這樣的優點為 * `我想要去台北` 與 `我想要去印度` 模組認為是同一句,降低 garbage 出線的機率 * 缺點為: * 有特定上下文的句子無法翻譯出更流暢的內容 * NER 有辨識的極限,要是前面沒有辨識出來,後面也不會翻譯正確 * 即使翻譯正確,也有些詞性是無法被正確處理的 *  ## 自我介紹與能力 ### coding 能力介紹 * `c/c++` * 參與過 [`jserv`](https://wiki.csie.ncku.edu.tw/User/jserv) 的課程,大部分系統級別的課程都是 `c/c++` 撰寫的 * 旁聽過 [`張大緯`](https://researchoutput.ncku.edu.tw/zh/persons/da-wei-chang) 的嵌入式系統,那時候使用 STM32 做了一些小 project,除此之外也有自己購買一些 `extdevice` 來玩(溫度計) * 熟悉 `polling` 機制 * 熟悉 `interrupt` 機制 * 了解 `debouncing` 的用意 * [`scala/Chisel`](https://www.chisel-lang.org/) * 這是一個類似 verilog 的語言,可以讓使用者定義哪幾個 bit 要做哪些事情 * Chisel 官方有做詳細教學 (https://github.com/ucb-bar/chisel-tutorial) * `jserv` 的作業為以下流程: * 利用 Chisel 製作 `risc-v` 的 CPU single cycle machine * 讓我們撰寫的 C 語言可以編譯成 `Risc-v` 並且跑在此 single cycle machine 上 * 期末挑選了一個專案,完全由 `Risc-v` 撰寫的 jpeg encoder,也要可以跑在此 machine 上 * `Python` * 在瑞昱實習中,自動測試就是由 python + appium 撰寫 * 整個論文系統也是由 python 撰寫 * 其中包括 [`fairseq`](https://fairseq.readthedocs.io/en/latest/getting_started.html#) * 論文當中最重要的 `語料清洗` 也是由 python 做到 * `react/javascript` * 論文 demo 網站使用 react 撰寫,`python` + `flask` 部屬 * 不使用 nginx 是因為,較麻煩沒有使用 ## 成為工程師的路徑 ### 1. 時空背景 首先要先講清楚我自己的看法,任何人都有不同的理由去轉跑道,而我轉跑道的理由屬於以下這幾點: * 台灣文組發展受限 > 不得不說,若在台灣需要養家餬口,讀文組根本是不可能的事情,除非做自媒體,或是做比較偏門的工作,否則很難達到第一份工作就年薪百萬 * 個人在文組並沒有得到良好的發展 > 在修習 `新聞英文` 時,我發現即便我認真做整個學期的功課,也比不上有一些比較會報告的同學,那些同學比較懂得討教授歡心,而他們只需要花較少的時間,分數就可以輾壓我花了比他們更久的時間的內容 * 邏輯問題 > 還記得,在上 `演辯` 課程時,我發現,很多時候我沒有辦法理解別人的邏輯;原本以為是我自己的問題,後來釐清之後發現,簡易的 `p -> q` 等等邏輯都沒有辦法在文組中體會到,多的是 `jump to conclusion` 以及 `cherry picking fallacy` 不過主要是因為錢的問題,這邊絕對沒有在戰文理,主要出在個人問題以及社會問題。 --- ### 2. 決定目標,並且修對的課程 決定目標絕對是最困難的事情,但當決定了,就必須要朝目的地大步邁進。我在==大二==時加入了管弦樂社(因為我喜歡彈鋼琴,而且我沒有甚麼社交圈、不太習慣與全女生的環境相處;而且有一位好友帶我進這個社團)。當初我在這個社團的時候,我發現了幾個現象: 1. 大部分的人都會專注於練樂器,而且專注的程度較高 * 有一個令我印象深刻的人,他的樂器為豎笛,為我們整個社團的木管首席。整個社團都仰賴他的聲音,不僅節奏非常穩定、音色美麗、人也很好。==他每次花在樂器的時間都是整個下午,或是整個早上==。只要他開始練習,就沒有人能打斷他 * 他也是能源系的系排第一,而且出了社會之後,目前也在國家的木管樂團吹豎笛,所謂神人 2. 在接近期中、期末時,基本上沒什麼人在社團練樂器,大家都在讀書 * 所謂`玩音樂的小孩不會變壞` 原來就是指這個 :100: * 大家都會不約而同地跑到社團讀書,那怕是有人想練樂器,都不會吵到他們 * 那時候會一起看書的人現在都出社會,而且都拿到新人非常好的 offer 3. 身為一個文組的,我在期中、期末時,沒有甚麼事情可以做 * 由於大部分的期中、期末皆為報告性質(那時候 chatGPT 尚未問世)而寫報告其實比考試簡單很多,大部分的人只需要引用幾句話,多寫幾句話就可以拿到不錯的成績 * 另外一種期中、期末為上台演講,而我忘不了有一位好友,從頭到尾在講幹話,報告做的很好笑,然後就過了 正是因為我很愛這個社團,我幾乎每天都會到這個社團報到。但越是接近期中、期末,我就越覺得我與他們有根本上的差距。縱使我沒有必要與他們走相同的路,我也在某些時間點會感到與他們之間的距離感。 於是我在大二開始就開始一直思考,==我這樣真的行嗎?== 實際上最後的契機是在大三下時,那時候可以看到所有朋友都開始準備`研究所`、`出國留學`等等行程,而我到那時候對未來還是一知半解,完全沒有想過自己到底能夠做甚麼。 此時我想起了我國中的願望:"我希望能夠寫程式"。所以我想說,那我要不要轉考看看`資訊工程`? 但轉考並非簡單的事情,我也不知道我有沒有那個能耐能夠考到任何一間學校。於是我允諾我自己:要是我能夠修過`北科大資訊工程部分基礎課程`,我就有這個能耐能夠考資訊工程。 於是,我在大四上修了以下幾門課: 1. 微積分(上) * 由於聽所有社團的人說,==微積分是所有高等數學的基礎== 所以我修了微積分 * 內容: * 三角函數、極限、羅畢達 * 微分、多項式微分、乘法公式、除法公式、Chain Rule * 繪製一多項式的所有曲點,包括反曲點(二次微分)等等 * 基礎積分(記得要 +C) 2. 計算機程式設計(一) * 我修了北科大魔王,郭忠義老師的課程,課程內容如下: * https://sites.google.com/mail.ntut.edu.tw/jong-yih-kuo/programming-design-i?authuser=0 * 我只能說,上機考真的有夠困難,在緊張的環境下,常常寫出來的程式一堆 bug 在修過以上課程之後,我發現我應該是有能耐可以挑戰資訊工程,於是我與我媽媽商量,能不能讓我拚一波,考資工 > 還記得那天我跟她說的時候,他直接帶我到大碩補習班,直接刷卡刷了 6 萬多的課程。也不顧我很久以前去報名聯成電腦的 `java` 課程,然後一次都沒有去上... > ==我真的很感謝我媽還有我爸(因為是我爸全額付)== 於是,從 `2021/2` 開始,大學最後一個學期開始了,同時間我也要開始補習去。我多修了以下幾堂課程 1. 微積分(二) * 由於同時間要學補習班的線性代數,我已經忙不過來,於是最後退選了 2. 離散數學 * 為 `謝東儒` 教授所授課 * https://tjhsieh.github.io/anime/index.html * 他的教材其實意外的好,而且分數給得很甜(雖然我不需要) 3. 計算機組織 * 為 `陳彥霖` 教授所授課 * 因為補習班也有同時間教計算機組織,我為了補齊一些知識,同時間也修了這門課 * 內容包括: * MIPS 組合語言 * Single Cycle Machine (PC+4) * Pipeline * (pipeline and its hazard) 4. 計算機程式設計(二) * 還是同樣由郭老師授課,由於變成 `C` 語言了,難度與 python 根本不是同一個等級,要注意記憶體,要注意指標,指標還有指標 * https://sites.google.com/mail.ntut.edu.tw/jong-yih-kuo/programming-design-ii?authuser=0 * 我還記得每次我功課都有交上去,但期末考掛 0,我一個題目都沒有辦法達到標準 過了這個學期之後,我已經是畢業生了,我開始專注在補習上面。過著每天朝 9 晚 12 的生活。每天都讀書超過 10 個小時,而且當時為疫情的時刻,我只能在家上課(對了,我讀書那年是疫情第一年...) 至於讀書的方法,我相信 ptt 上面一堆,不用我自己打。反而有一件事想要特別提,那就是你需要有一群志同道合的好朋友陪你一起讀書(這樣只會事半功倍) 還記得當初我在大碩題庫班遇見了四位好夥伴,我們一起讀書,==互相教學==(這點是最重要的,如果你不會的話,沒辦法教人),我們彼此不藏私,有問題就問,別人不會就教,最後我們全部上了國立台科以上的學校。 ### 3. 找教授、訂定未來的計畫 雖然最後如期考上`成功大學`,但找教授的路徑卻沒有這麼容易,有教授因為我的背景不收,而大部分的教授也都滿額了   最後陰錯陽差的到了 [`盧文祥`](https://wmmks.csie.ncku.edu.tw/) 教授的實驗室。我對於教授的教學方法不予置評,我只感激他能夠收我而已。在實驗室這兩年內,我發現我們實驗室偏涼,可以修一些比較困難的課程,而我也勇於面對挑戰,修了一堆 [`jserv`](https://wiki.csie.ncku.edu.tw/User/jserv) 的課程。其中包括 `資訊科技產業專案設計`、 `Linux核心設計` 、`計算機組織` 等等課程,每一個課程都具有一定的難度,也需要對計算機更了解才能夠寫出對應的專案。就這樣,修了非常多 `jserv` 的課程之後,就結束了我一上、一下的時期。 在這其中多出了一個插曲,我在就業博覽會的時候,曾經只是為了獎品所以隨便填寫了瑞昱暑期實習的單子,而我並沒有想太多。等到瑞昱發了面試通知來了之後,我才發現,好像需要準備一下,剛剛好可以測試 [`資訊科技產業專案設計`](https://hackmd.io/@sysprog/info2023/https%3A%2F%2Fhackmd.io%2F%40sysprog%2FS11ooE4Rh) 學到的面試技巧。結果還真給我面上了 = =,我非常慌張,覺得好像這次實習是改變人生的實習,加上我們實驗室的老師對 `IC 廠` 與 `暑期實習` 這兩個關鍵字有點敏感。於是我說:「老師,我爸爸腿受傷,我要去台北照顧他」,乎弄了他兩個月... 而我去了之後,又發現,這是瑞昱 CN3,貌似是行業頂標的存在,所以我完全不後悔我呼弄了我們老師。 等實習了兩個月回去台南之後,我已經是另外一個人了,整個思維完全都不一樣,開發我們實驗室專案的速度也完全不一樣。也就是在此時,我在一個月內開發了 [`kasih`](https://fw.wda.gov.tw/wda-employer/home/activity/2c95efb38d611dc3018d637563580883) (然後我完全不會寫 app 呵呵) 最後就到 2024 年了,我藉由先前的種種經歷,與寫文章、報告的能力等等,順利獲得 `聯發科` 主管的欣賞,現在剛做兩個月 ---
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up