台灣軟體工程師越南就職之路 - 越南
By Ivy
at 2018-07-26T22:05
at 2018-07-26T22:05
Table of Contents
首先非常感謝每位願意提供意見、一起交流的鄉民們,真的對我幫助很大
接續著前篇(台灣軟體工程師越南求職之路)
經過一週的忐忑不安,DSV 終於通知我錄取了!
待遇是 1700 鎂/月,共 13 個月,比起上一份台灣工作年薪多了約七萬
雖然加薪幅度不大,但圓了一個越南工作夢,無價!
https://i.imgur.com/h1M1Gaw.jpg
原本心裡其實一直在想面試時答得那麼卡,應該不會被錄取的啊!
導致這週沉浸在:「加強英文能力、加強專業能力」的心情下XD
完全沒有好好調查胡志明市的生活水準以及注意事項...
而且對方詢問能否在 8/1 就上工,超級緊湊!還好可以延後半個月
對於我這個完全沒去過胡志明市的人來說,馬上面臨諸多考驗
一、胡志明市第一郡租屋行情、須知
公司的位置在 Nguyen Thai Binh, Phuong Nguyen Thai Binh, Quan 1
就地圖上來看算是非常市區
https://i.imgur.com/YRZBXqb.jpg
心想胡志明市在越南應該算跟台北同等,甚至更高消費水準的城市
會不會薪水不夠付租金...
首先搜尋到了「背包客棧」的這篇去年的文章「胡志明市第一郡的長期租屋經驗分享」
https://www.backpackers.com.tw/forum/showthread.php?t=1963119
裡面提到的地點離公司真的非常近!月租費大約 250 鎂,還算可以接受
https://i.imgur.com/AChzwU9.jpg
不過不清楚目前還租不租得到,要再花好幾天做做功課了!
二、工作經驗證明已經能透過學校提供的打工證明 + 公司勞保記錄搞定了
不過這個打工證明究竟能不能被認可,也是一大問題...
如果真的沒辦法,只能先聯絡看看代辦以及公司能否有其他管道申請
面試時公司有提到簽證的問題,他們說僅能提供邀請函,沒辦法幫忙處理簽證申請
關於這點我覺得很正常,因為對方畢竟是越南的本土公司
完全沒必要為了錄取我這個外國人,還幫忙找代辦來申請簽證
所以原先就有必須自己搞定的覺悟了!
三、生命會自己找到出路!
原本認識越南只是一個小契機,沒想到至今會對我帶來這麼大的影響
包含學習越南語、認識越南朋友、親自到越南走一遭、投遞履歷接著面試等
雖然不確定未來還會面對什麼挑戰,但這段經驗真的非常值得!且戰且走吧!
另外附上遲來的面試問題逐字稿,以及回答總整理XD
(Q1)
Could you tell me the main difference for those Java application which use
JSP or Spring with Apache server versus those JavaScript application which
use NodeJS server?
What's the difference? How the mechanism is different?
(A1)
NodeJS is a V8-based runtime environment which uses an non-blocking I/O model.
This means that it is a single-threaded runtime, it has a single call stack.
But JSP or Spring with Apache server are both multi-threaded, blocking I/O
based.
---
(Q2)
How do they handle the incoming request?
In which case, NodeJS would be faster and which case NodeJS would be slower?
compare to Java?
(A2)
For NodeJS, non-blocking I/O.
If the incoming request is I/O bound such as file processing.
NodeJS is likely to be faster than JSP.
However if requests are CPU bound such as complicated algorithm: compression, sorting, searching something like that.
The Java, Java Virtual Machine maybe faster than JavaScript, NodeJS.
---
(Q3)
You have been working with ReactJS also, right?
Could you name some framework or library you've used?
(A3)
I've used Redux, RxJS and Styled-Components.
---
(Q4)
Could you tell me more about Redux?
Why Redux exists?
And what's the benefit of Redux in React?
Do you know something about Flux?
(A4)
Redux brings "Predictable".
As an react application gets more complex, some components may need to access
the same state but display it in different ways.
This situation makes the state harder to manage.
Redux solves this state transfer problem and makes code clear.
We can develop Presentational-Component and Container-Component separately,
extracting the functional code from the component.
Flux can be regarded as the father of Redux.
One direction data flow is the core value of it.
---
(Q5)
You have used SQL-Server and Elasticsearch right?
Could you describe the case you've used in Elasticsearch?
(A5)
Our product needs a fast, precise Full-Text searching system.
However, the Full-Text searching function provided by SQL-Server is
inadequate, especially in CJK terms searching: Chinese, Japanese and Korean.
Elasticsearch ships with a wide range of built-in analyzers.
These analyzers could determine how a string field in a document is
transformed into terms.
Choosing the right analyzer is as much art as science but I can only
understand a few parts of it.
---
(Q6)
You setup Elasticsearch by yourself?
Or someone setup for you?
(A6)
I setup ES for testing by myself through the official Docker image.
It's very easy to setup the basic environment but difficult to leverage
full power of its features.
So, for production environment, the Infra-Engineer in my previous team
would set and fine-tune the ES for us.
---
(Q7)
Could you describe how ReactJS work?
Why ReactNative and ReactJS are faster than other libraries?
What's the mechanism behind that?
(A7)
For example, we may modify the data directly on the DOM element in JQuery.
The update logic becomes messy when large amount of complicated data are
modified.
And there is even no consistent rendering mechanism behind JQuery.
Unnecessary rendering is happening again and again.
ReactJS provides its own lifecycle, having a good grasp of the timing of
re-rendering.
With the Component design, we can also split the elements into smaller
units.
Only a small portion of the elements are re-rendered when data are updated,
thereby increasing performance.
---
(Q8)
You know ReactJS application is Single-Page-Application right?
It means you need to compile all of your JavaScript into one BIG file.
And even if you ZIPPED it, your customer will still feel slow loading at the
first time.
How can I avoid it? How can I avoid this kind of situation?
(A8)
Webpack provides many kinds of feature for code splitting.
For example, splitting chunks feature and lazy loading feature.
We can even use Server-Side-Rendering to improve First User Interaction
Time in our React Apps.
---
(Q9)
How do you scale a NodeJS server?
How do you optimize or improve a NodeJS server's performance?
(A9)
We can run a NodeJS process on every CPU core and load balance all the
requests among them through NodeJS's cluster mode.
And Load-Balancing HTTP Server is another solution.
Instead of using one beefy web server, I would divide up the task to many
smaller web servers.
---
--
接續著前篇(台灣軟體工程師越南求職之路)
經過一週的忐忑不安,DSV 終於通知我錄取了!
待遇是 1700 鎂/月,共 13 個月,比起上一份台灣工作年薪多了約七萬
雖然加薪幅度不大,但圓了一個越南工作夢,無價!
https://i.imgur.com/h1M1Gaw.jpg
原本心裡其實一直在想面試時答得那麼卡,應該不會被錄取的啊!
導致這週沉浸在:「加強英文能力、加強專業能力」的心情下XD
完全沒有好好調查胡志明市的生活水準以及注意事項...
而且對方詢問能否在 8/1 就上工,超級緊湊!還好可以延後半個月
對於我這個完全沒去過胡志明市的人來說,馬上面臨諸多考驗
一、胡志明市第一郡租屋行情、須知
公司的位置在 Nguyen Thai Binh, Phuong Nguyen Thai Binh, Quan 1
就地圖上來看算是非常市區
https://i.imgur.com/YRZBXqb.jpg
心想胡志明市在越南應該算跟台北同等,甚至更高消費水準的城市
會不會薪水不夠付租金...
首先搜尋到了「背包客棧」的這篇去年的文章「胡志明市第一郡的長期租屋經驗分享」
https://www.backpackers.com.tw/forum/showthread.php?t=1963119
裡面提到的地點離公司真的非常近!月租費大約 250 鎂,還算可以接受
https://i.imgur.com/AChzwU9.jpg
不過不清楚目前還租不租得到,要再花好幾天做做功課了!
二、工作經驗證明已經能透過學校提供的打工證明 + 公司勞保記錄搞定了
不過這個打工證明究竟能不能被認可,也是一大問題...
如果真的沒辦法,只能先聯絡看看代辦以及公司能否有其他管道申請
面試時公司有提到簽證的問題,他們說僅能提供邀請函,沒辦法幫忙處理簽證申請
關於這點我覺得很正常,因為對方畢竟是越南的本土公司
完全沒必要為了錄取我這個外國人,還幫忙找代辦來申請簽證
所以原先就有必須自己搞定的覺悟了!
三、生命會自己找到出路!
原本認識越南只是一個小契機,沒想到至今會對我帶來這麼大的影響
包含學習越南語、認識越南朋友、親自到越南走一遭、投遞履歷接著面試等
雖然不確定未來還會面對什麼挑戰,但這段經驗真的非常值得!且戰且走吧!
另外附上遲來的面試問題逐字稿,以及回答總整理XD
(Q1)
Could you tell me the main difference for those Java application which use
JSP or Spring with Apache server versus those JavaScript application which
use NodeJS server?
What's the difference? How the mechanism is different?
(A1)
NodeJS is a V8-based runtime environment which uses an non-blocking I/O model.
This means that it is a single-threaded runtime, it has a single call stack.
But JSP or Spring with Apache server are both multi-threaded, blocking I/O
based.
---
(Q2)
How do they handle the incoming request?
In which case, NodeJS would be faster and which case NodeJS would be slower?
compare to Java?
(A2)
For NodeJS, non-blocking I/O.
If the incoming request is I/O bound such as file processing.
NodeJS is likely to be faster than JSP.
However if requests are CPU bound such as complicated algorithm: compression, sorting, searching something like that.
The Java, Java Virtual Machine maybe faster than JavaScript, NodeJS.
---
(Q3)
You have been working with ReactJS also, right?
Could you name some framework or library you've used?
(A3)
I've used Redux, RxJS and Styled-Components.
---
(Q4)
Could you tell me more about Redux?
Why Redux exists?
And what's the benefit of Redux in React?
Do you know something about Flux?
(A4)
Redux brings "Predictable".
As an react application gets more complex, some components may need to access
the same state but display it in different ways.
This situation makes the state harder to manage.
Redux solves this state transfer problem and makes code clear.
We can develop Presentational-Component and Container-Component separately,
extracting the functional code from the component.
Flux can be regarded as the father of Redux.
One direction data flow is the core value of it.
---
(Q5)
You have used SQL-Server and Elasticsearch right?
Could you describe the case you've used in Elasticsearch?
(A5)
Our product needs a fast, precise Full-Text searching system.
However, the Full-Text searching function provided by SQL-Server is
inadequate, especially in CJK terms searching: Chinese, Japanese and Korean.
Elasticsearch ships with a wide range of built-in analyzers.
These analyzers could determine how a string field in a document is
transformed into terms.
Choosing the right analyzer is as much art as science but I can only
understand a few parts of it.
---
(Q6)
You setup Elasticsearch by yourself?
Or someone setup for you?
(A6)
I setup ES for testing by myself through the official Docker image.
It's very easy to setup the basic environment but difficult to leverage
full power of its features.
So, for production environment, the Infra-Engineer in my previous team
would set and fine-tune the ES for us.
---
(Q7)
Could you describe how ReactJS work?
Why ReactNative and ReactJS are faster than other libraries?
What's the mechanism behind that?
(A7)
For example, we may modify the data directly on the DOM element in JQuery.
The update logic becomes messy when large amount of complicated data are
modified.
And there is even no consistent rendering mechanism behind JQuery.
Unnecessary rendering is happening again and again.
ReactJS provides its own lifecycle, having a good grasp of the timing of
re-rendering.
With the Component design, we can also split the elements into smaller
units.
Only a small portion of the elements are re-rendered when data are updated,
thereby increasing performance.
---
(Q8)
You know ReactJS application is Single-Page-Application right?
It means you need to compile all of your JavaScript into one BIG file.
And even if you ZIPPED it, your customer will still feel slow loading at the
first time.
How can I avoid it? How can I avoid this kind of situation?
(A8)
Webpack provides many kinds of feature for code splitting.
For example, splitting chunks feature and lazy loading feature.
We can even use Server-Side-Rendering to improve First User Interaction
Time in our React Apps.
---
(Q9)
How do you scale a NodeJS server?
How do you optimize or improve a NodeJS server's performance?
(A9)
We can run a NodeJS process on every CPU core and load balance all the
requests among them through NodeJS's cluster mode.
And Load-Balancing HTTP Server is another solution.
Instead of using one beefy web server, I would divide up the task to many
smaller web servers.
---
--
Tags:
越南
All Comments
By Linda
at 2018-07-30T19:33
at 2018-07-30T19:33
By Rae
at 2018-08-01T12:50
at 2018-08-01T12:50
By Hamiltion
at 2018-08-02T12:58
at 2018-08-02T12:58
By Leila
at 2018-08-02T21:39
at 2018-08-02T21:39
By Elizabeth
at 2018-08-07T15:04
at 2018-08-07T15:04
By John
at 2018-08-11T23:38
at 2018-08-11T23:38
By Rosalind
at 2018-08-13T10:56
at 2018-08-13T10:56
By Belly
at 2018-08-16T09:08
at 2018-08-16T09:08
By Anonymous
at 2018-08-16T22:05
at 2018-08-16T22:05
By Edith
at 2018-08-21T13:36
at 2018-08-21T13:36
By Doris
at 2018-08-22T01:28
at 2018-08-22T01:28
By Michael
at 2018-08-25T10:19
at 2018-08-25T10:19
By Lydia
at 2018-08-26T01:31
at 2018-08-26T01:31
By Andrew
at 2018-08-26T03:22
at 2018-08-26T03:22
By Irma
at 2018-08-27T02:37
at 2018-08-27T02:37
By Belly
at 2018-08-30T16:35
at 2018-08-30T16:35
By Bennie
at 2018-08-30T18:57
at 2018-08-30T18:57
By Puput
at 2018-09-03T13:11
at 2018-09-03T13:11
By Anonymous
at 2018-09-06T02:40
at 2018-09-06T02:40
By Rosalind
at 2018-09-09T02:17
at 2018-09-09T02:17
By Emma
at 2018-09-12T07:34
at 2018-09-12T07:34
By Dora
at 2018-09-13T14:59
at 2018-09-13T14:59
By Damian
at 2018-09-14T13:55
at 2018-09-14T13:55
By Brianna
at 2018-09-14T20:30
at 2018-09-14T20:30
By Blanche
at 2018-09-15T10:35
at 2018-09-15T10:35
By Joe
at 2018-09-17T03:41
at 2018-09-17T03:41
By George
at 2018-09-18T02:42
at 2018-09-18T02:42
By Elma
at 2018-09-20T13:07
at 2018-09-20T13:07
By Connor
at 2018-09-20T20:59
at 2018-09-20T20:59
By Xanthe
at 2018-09-21T20:43
at 2018-09-21T20:43
By Xanthe
at 2018-09-22T06:56
at 2018-09-22T06:56
By Andrew
at 2018-09-24T02:43
at 2018-09-24T02:43
By Liam
at 2018-09-28T15:12
at 2018-09-28T15:12
By Skylar Davis
at 2018-09-29T23:53
at 2018-09-29T23:53
By Bethany
at 2018-09-30T01:38
at 2018-09-30T01:38
By Puput
at 2018-10-01T20:35
at 2018-10-01T20:35
By Heather
at 2018-10-04T10:33
at 2018-10-04T10:33
By Isla
at 2018-10-07T10:40
at 2018-10-07T10:40
By Dinah
at 2018-10-10T04:06
at 2018-10-10T04:06
By Isabella
at 2018-10-11T05:20
at 2018-10-11T05:20
By Franklin
at 2018-10-14T01:24
at 2018-10-14T01:24
By Ula
at 2018-10-18T20:47
at 2018-10-18T20:47
By Doris
at 2018-10-20T10:48
at 2018-10-20T10:48
By David
at 2018-10-22T03:02
at 2018-10-22T03:02
By Lily
at 2018-10-25T15:05
at 2018-10-25T15:05
By Caroline
at 2018-10-28T23:21
at 2018-10-28T23:21
By Harry
at 2018-10-30T04:36
at 2018-10-30T04:36
By Ophelia
at 2018-11-02T00:16
at 2018-11-02T00:16
By Susan
at 2018-11-03T08:03
at 2018-11-03T08:03
By Puput
at 2018-11-04T19:00
at 2018-11-04T19:00
By Emma
at 2018-11-08T02:42
at 2018-11-08T02:42
By Carolina Franco
at 2018-11-12T14:22
at 2018-11-12T14:22
By Hedda
at 2018-11-13T01:56
at 2018-11-13T01:56
By Daniel
at 2018-11-14T09:15
at 2018-11-14T09:15
By Erin
at 2018-11-15T20:23
at 2018-11-15T20:23
By Catherine
at 2018-11-17T07:42
at 2018-11-17T07:42
By Anonymous
at 2018-11-19T21:22
at 2018-11-19T21:22
By Brianna
at 2018-11-23T00:30
at 2018-11-23T00:30
By Lauren
at 2018-11-27T22:18
at 2018-11-27T22:18
By Zanna
at 2018-12-02T10:46
at 2018-12-02T10:46
By Eden
at 2018-12-05T20:46
at 2018-12-05T20:46
By Damian
at 2018-12-09T19:56
at 2018-12-09T19:56
By Ursula
at 2018-12-11T07:34
at 2018-12-11T07:34
By Kama
at 2018-12-15T14:37
at 2018-12-15T14:37
By Victoria
at 2018-12-16T04:32
at 2018-12-16T04:32
By Edward Lewis
at 2018-12-19T21:06
at 2018-12-19T21:06
By Eden
at 2018-12-20T12:30
at 2018-12-20T12:30
By Dinah
at 2018-12-24T14:53
at 2018-12-24T14:53
Related Posts
2019/2/6~8 胡志明市飯店轉讓
By Margaret
at 2018-07-26T17:13
at 2018-07-26T17:13
需求胡志明市越南翻譯一天
By Leila
at 2018-07-26T15:48
at 2018-07-26T15:48
貿協二進越南辦形象展 環保與智慧城市成
By Jake
at 2018-07-26T02:02
at 2018-07-26T02:02
辦公室越南員工代辦事務的小費問題
By Bennie
at 2018-07-24T12:48
at 2018-07-24T12:48
台灣軟體工程師越南求職之路(文長)
By Victoria
at 2018-07-23T22:47
at 2018-07-23T22:47