# 2023 年「[資訊科技產業專案設計](https://hackmd.io/@sysprog/info2023/https%3A%2F%2Fhackmd.io%2F%40sysprog%2FS11ooE4Rh)」作業 3
---
### [Resume](https://docs.google.com/document/d/1-AzJ--uKjTpRcTSQN5yLkE_A0rQsf2fJMU5HPgN1xPU/edit?usp=sharing)
---
## **自身評估**
- 學歷
- 國立成功大學 製造所 碩士<----------(預計2025畢業)
- 國立中山大學 資訊工程學系 學士
- 私立高雄醫學大學心理學系輔系
- 具備Computer vision和deep learning相關背景
- 曾使用OpenCV實作camera calibration、augmented reality、SIFT
- 曾使用tensorflow和python實作影像辨識模型
- 曾使用pyTorch實作資料庫影像辨識模型
- Embedded system相關經驗
- 曾使用Keil5和C語言實作電梯模擬
- AIoT相關經驗
- 曾在新創公司實習,實作醫療藍牙手環連接測試以及資料庫自動化通道建立
- 缺乏相關經驗與能力
- 缺乏大型語言模型(LLM)演算法開發經驗
- 缺乏多模態基礎模型(Multi-Modal Foundation Model)開發經驗
## **Job Description**
## [Software Engineer, Embedded Software, Google Home Nest](https://www.google.com/about/careers/applications/jobs/results/127645769529205446-software-engineer-embedded-software-google-home-nest?location=Taiwan&target_level=EARLY)
### What we need to see:
- Bachelor's degree in Electrical Engineering, Computer Science, relevant technical field, or equivalent practical experience.
- Experience with C/C++.
- Experience with data structures or algorithms.
- Experience in one or more of the following areas: networking, embedded Linux, network security, wireless technologies, and data analysis.
- Excellent ownership, problem-solving skills, and willingness to learn/grow.
- Interest in IoT and smart home technologies.
### 面試問題
👩🦰: interviewer
👶: interviewee
#### 自我介紹
👩🦰: 你好,我在你的履歷中有看到你過去曾修過嵌入式系統的課程,想請你聊聊你當時做的專案是怎麼樣的?
👶: 當時的專案是做模擬電梯,使用的環境和語言是Keil5和C,我使用petrinet將DFA擴展到並行系統上來實作。
👩🦰: 好的,聽起來你有使用C語言的經驗,那麼接下來想請你用C/C++實作以下問題。
#### coding test
👩🦰: 回傳所有的質數,舉出5個測試項目以及想法。
👶: 請問整數的範圍使用int可以嗎?
👩🦰: 可以。
👶: 請問除了回傳質數之外,是否還有其他要求?
👩🦰: 回傳所有質數即可。
👶: 好的,那麼我想先說一下我的解題想法:
👶: 使用一個for loop從2開始往後找,再用mod來判斷目前跑到的整數是否為目標整數的因數,如果是的話就回傳fasle,如果for loop完整跑完,也就代表目前這個整數是質數,就回傳true。
👩🦰: 聽起來沒問題,請開始實作。
👶:
```cpp=
#include <iostream>
#include <vector>
bool is_prime(int n) {
if (n <= 1) {
return false;
}
for (int i = 2; i * i <= n; ++i) {
if (n % i == 0) {
return false;
}
}
return true;
}
vector<int> find_primes_in_range(int start, int end) {
vector<int> primes;
for (int num = start; num <= end; ++num) {
if (is_prime(num)) {
primes.push_back(num);
}
}
return primes;
}
int main() {
vector<int> test1_result = find_primes_in_range(1, 50);
cout << "Test 1: ";
for (int prime : test1_result) {
cout << prime << " ";
}
cout << endl;
vector<int> test2_result = find_primes_in_range(50, 100);
cout << "Test 2: ";
for (int prime : test2_result) {
cout << prime << " ";
}
cout << endl;
vector<int> test3_result = find_primes_in_range(100, 150);
cout << "Test 3: ";
for (int prime : test3_result) {
cout << prime << " ";
}
cout << endl;
vector<int> test4_result = find_primes_in_range(1000, 1050);
cout << "Test 4: ";
for (int prime : test4_result) {
cout << prime << " ";
}
cout << endl;
vector<int> test5_result = find_primes_in_range(500, 550);
cout << "Test 5: ";
for (int prime : test5_result) {
cout << prime << " ";
}
cout << endl;
return 0;
}
```
## [AI Algorithms SW Engineer - New College Graduate](https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/details/AI-Algorithms-SW-Engineer---New-College-Graduate_JR1973032?jobFamilyGroup=0c40f6bd1d8f10ae43ffaefd46dc7e78&locationHierarchy1=2fcb99c455831013ea52ed162d4932c0&locationHierarchy2=0c3f5f117e9a0101f63dc469c3010000&locationHierarchy2=0c3f5f117e9a0101f6422f0fe79d0000&workerSubType=ab40a98049581037a3ada55b087049b7)
### What we need to see
- MS or PhD in Computer Science, Computer Engineering or Electrical Engineering or related field in Deep Learning, Machine Learning and Computer Vision.
- Algorithm development experience data analytics, especially with LLM’s and Multi-Modal Foundation models
- Experience working with deep learning frameworks like TensorFlow and pyTorch.
- Strong communication skills.
### 面試問題
👩🦰: interviewer
👶: interviewee
#### 自我介紹
👩🦰: 你好,我在你的履歷中有看到你過去曾實作過和deep learning相關的專案,可以請你談談相關的經歷嗎?
👶: 我之前曾使用tensorflow實作微表情辨識系統,是將一段影片切成多張圖片,放入CNN模型後,辨識它是屬於哪種類型的表情。我也使用過pyTorch實作camera calibration和VGG19模型,用來進行圖片分類。
👩🦰: 好的,那麼接下來想請你coding以下題目。
#### coding test
👩🦰: 請寫一個程式,將給定一組隨機數的所有0向右移動。
👶: 好的,那麼我想先說一下我的解題想法,先創建兩個指標,一個用在for loop,一個用於定位下一個非零元素應該放置的位置,再將所有非零元素用swap交換到左邊。
👩🦰: 好的,請開始實作
👶:
```cpp=
void shiftZerosToRight(std::vector<int>& nums) {
int n = nums.size();
int nonZeroIndex = 0;
for (int i = 0; i < n; ++i) {
if (nums[i] != 0) {
std::swap(nums[i], nums[nonZeroIndex]);
nonZeroIndex++;
}
}
}
```
## [Deep Learning Internship](https://careers.mediatek.com/eREC/JobSearch/JobDetail/MRTW20211118000?returnUrl=%2FeREC%2FJobSearch%3FsortBy%3D%26order%3D%26page%3D1%26searchKey%3D%26category%3D%26workExp%3D0002%26branch%3D%26program%3D)
### What we need to see
- You will be working towards or recently have completed a PhD in a quantitative field such as Computer Science, Mathematics, Physics or Engineering.
- You have a good knowledge of the foundations of Deep Learning and Neural Networks, including some experience with Machine Learning frameworks (Tensorflow, PyTorch, JAX)
- You are a proficient scientific communicator. You are committed to your goals and working in a team.
- You are eager to tackle the state of the art problems in the field. We want your ideas to shine!
### 面試問題
👩🦰: interviewer
👶: interviewee
#### 自我介紹
👩🦰: 你好,我看到你的履歷中有使用過tensorflow和pyTorch的經驗,可以請你說明你對這兩個機器學習框架的了解嗎?
👶: 我之前的畢業專題是使用tensorflow搭配keras實作CNN模型,用來進行圖片分類,專家肉眼辨識的準確度約為45%,而我們實作的CNN模型準確度則約為77%,提升了近1.7倍的準確率;pyTorch的部分是用來實作camera calibration和VGG19的模型,也是用在電腦視覺和影像處理相關的實作。
👩🦰: 好的,那麼接下來我想請問你是否可以說明CPU和GPU的差異在哪裡?
👶: CPU通常設計成少量的高性能核心,通常具有較大、較快速的緩存,且功耗較低,適合用於移動設備和一班目的的運算
👶: GPU通常包含大量的小型核心,適用於並行處理,它的設計目的是同時處理多個任務,因此適合大規模數據運算,並且它使用舉例來說,CUDA這樣的並行編程模型,在深度學習、圖形渲染等方面有較為出色的表現。
👩🦰: 再來我想請你說明一下,什麼是Eigen-value?
👶: Eigen-value在深度學習中指的是特徵值,在CNN模型的卷積層中,通過計算斜方差矩陣的特徵值,我們可以了解濾波器對input data的影響方式,進而優化CNN的設計。
👩🦰: 另外我想請問,當機器學習中的gradient descend,如果遭遇不可微分的點要如何處理?
👶: 使用differentiable function替代不可微分的點的loss function,這樣可以確保在不可微分的點附近也有function定義,並且梯度仍然可以被計算。
### 面試問題來源參考
[Nvidia Questions and Answers for 2023](https://www.simplilearn.com/nvidia-interview-questions-article)
[Test Engineer Interview — Google Nest, Taiwan, 2022](https://medium.com/drunk-wis/2022-test-engineer-interview-google-nest-taiwan-9247a3485eab)