close

晨星科技 Mstar
公司位置在台元科學園區內,從新竹過去的話走縣政二路+中山路+台元街+博愛街那邊側門
如果看google map指引到走自強北路+十興路的話會很偏僻的!!
台元科學園區內不能騎機車 orz..  要停在外面... 還好有好心人 不然我鐵定迷路&遲到

公司似乎不太注重門面,小小的,總機小姐是都很和善也很漂亮
下午面試DTV部門的RD & FAE; 晚上面試手機部門的 RD (共三場)

應徵職務:Flat Panel TV System S/W Senior Engineers/Embedded Communication軟體工程師

Flat Panel TV System S/W Senior Engineers
工作內容:  
1.    Linux/Windows perl, batch, shell programming  
2.     DTV軟體品質提升
3.     gnu makefile, cmake
4.     VC, .Net C#, MS SQL, MySQL
5.  開發測試程式 (embedded system/driver testing

Flat Panel TV System S/W Senior Engineers
工作內容: 
 1.客戶支援(電視軟體相關)
 2.Scaler / TSP / Graphics / Video decoder driver in Linux

Embedded Communication軟體工程師/主管 (內湖/竹北)
工作內容:
** Embedded software development for wireless communication systems 
** Work with hardware team for IP verification and system integration
** Work with customers to solve issues and pass approval tests

1. DTV RD工作內容: 
一開始半年內做軟體工程導入project的動作,看makefile, coding style, cmake/gmake, coverity
之後可能會trace driver 寫unit test 可能需要出差
公司內部有利用tool先檢查software code才允許commit, 以後會apply auto-test

2. DTV FAE+RD的工作內容:
考C測驗(指標, array, macro, semaphore, mutex, process, thread, size, 看計算題的code寫出最後的答案)
project一開案之後可能會經常性出差,通常在前期可能是1/2team都一起去,然後輪替。
去韓國的話一次兩星期左右,去一次可拿到約兩萬左右的出差費,
工作時間很長 晚上十一點是基本 出差有可能要弄到半夜兩三點
主要的大客戶是韓國三星
工作內容主要作DDI,也作SIP+TV
   /* 移除offer內容 */

這兩份工作最主要的差別在於RD主要負責把IC bringup之後就會 fixed code 交給FAE去開發, maintain
FAE主要就是持續 develop & bug-fix 這branch出來的code

3. Mobile 部門工作內容:
考專業測驗(C, VoIP, Networking, Embedded system, etc)
作wifi, bluetooth的driver開發, FPGA 驗證

[C test 1]
1. 
char str[]="Hello";
char *p=str;
int n=10;
ask: sizeof(str), sizeof(p), sizeof(n)

2.
int a[]={6,7,8,9,10};
int *p=a;
*(p++)+=123;
*(++p)+=123;
ask: the content of array a?

3. write a function named "strcmp", return 0 when the same; otherwise return -1
int strcmp(char *source, char * dest)

4. Explain the meaning and the usage of these words "semaphore" and "mutes." What's the difference? 

5. Compare array and list. Compare queue and stack.

6. Write a function to calculate 1*2+2*3+...+(n-1)*n

7. Explain static and volatile.

8. Explain process and thread.

9. Ask the value: sizeof(byte), sizeof(float), sizeof(unsigned int), sizeof(double), sizeof(unsigned char)

note. 計算題沒有記下來...

[C test 2]
1. Write a C code:
a) Int Get_Bit7_of_Input(int in)//return the bit content form
b) void Set_Bit5_of_Input(int *in) //set the 5th bit of input
c) void Clear_Bit_of_Input(int *in, int bit) //clea the specific bit of input

2. Explain the purpose of the keywords "static" and "volatile."

3. List memory type based on speed, from fast to slow.

4. Explain D-Cache & I-Cache and list their limitation.

5. Explain the meaning and the usage of DMA.

6. How to design/plain/calculate "heap" and "stack" in an embedded system?
If there are three processes in this system, does each process has its own stack? 
how many stacks in this system? 

7. List interrupt types (level trigger vs. edge trigger) . Explain IRQ.

8. Explain .text, .rodata, .data, .bss section. 
which sections does the following variables belong to? 
int a = 2; int b=0; int c;

9. Compare semaphore and mutex.

10. Compare repeater, hub, switch, router, bridge

11. Explain telecom & datacom. Which part does VoIP belong to?

12. Explain the behavior of ARP. In what situation, we do not need ARP?

13. Describe the functionalities of WiFi and Bluetooth.

14. How to design a power-saving  sysytem.

15. How to design a preemptive kernel?

16. Explain ABI (Application Binary Interface)

17. Do we need a tick timer in an embedded system? why?

18. Explain the usage and the important things that you are using macro and #include

19. How to implement a printf function in multi-task system without printing out disordered message 

20. How to design a debug mechanism in an embedded system?

21. How to design source level debugging?

22. Explain LMA and VMA.

23. Explain the difference between Firmware memory requirement and firmware image size. How to reduce the image size?

arrow
arrow
    全站熱搜

    大頭喵 發表在 痞客邦 留言(6) 人氣()