Ruby on Rails 工程師的薪資及技術要求解密|1000小時的學習菜單一起去日本當工程師!

今天,想跟大家介紹一直都是軟體工程師中的熱門選項-Ruby on Rails工程師

25年前Ruby這個程式語言在日本誕生,從普遍缺少Ruby的非日文相關資料的時代,如今演變成世界知名並且需求廣大的軟體工程師。如果你是位已經熟知Ruby技術的工程師,本篇文章將提供你日本職缺的徵才方式;而如果你是位跟Ruby還不熟的朋友也不用擔心,本篇文章將比較Ruby與其他程式語言的不同,並且解析Ruby工程師在日本的薪資現況以及其技術要求,並且提供你1000小時的學習菜單讓你一起來日本當Ruby工程師!

日本Ruby工程師職缺?日文找仲介、英文去Linkedin

正在看這篇的各位朋友,如果你是屬於已經跟Ruby認識好一陣子的朋友,無論你是即將畢業尚未受到世俗污染的新鮮人,或是已在台灣有工作經驗的工程師,只要你對在日本擔任Ruby工程師有興趣,不妨可以直接在台灣找尋日本的Ruby工程師職缺。

話說得簡單漂亮,但具體來說究竟要怎麼找呢?

會日文的朋友,答案當然就是透過日本人才仲介(在台灣找日本工作點我)囉!!話雖如此,一般工程師工作對日語要求比較不高,有N3左右的口說程度就可以衝看看囉

網路上其實已經有許多文章幫你整理好知名的人才仲介,下面就附上懶人包讓各位朋友可以參考啦。

只會英文的朋友也不用擔心,網路上很多平台像是Linkedin或是Glassdoor,也有許多日本Ruby工程師的職缺,可以利用關鍵字尋找是否剛好有職缺釋出。

如果以我的推薦度來說,人材仲介找工作的效率還是會比網站來得快,而且人才仲介會特別針對個人經歷及需求來提供相對應的案件,因此找到自己心目中的理想工作機率以及效率會比較高! 

Ruby on Rails比其他程式語言簡單好上手!

如果你是對於Ruby還毫無概念的朋友,就讓我來為你一一介紹Ruby的相關資訊吧!

首先,你知道嗎?其實有很多各大網站都是用Ruby所建構的,像是旅行家愛用的Airbnb川普最愛發表意見的Twiiter,又或是工程師的程式寶藏庫Github

看到這裡,除了驚訝以外,或許有些人會好奇說,那Ruby究竟是厲害在哪裡?它跟其他程式語言又有什麼不一樣

Ruby:一個化複雜為簡單的程式語言

其實Ruby官方網站就有明確指出各個程式語言(C、C++、Java、Perl、PHP及Python)與Ruby的差別,並且教導使用者如何從其他程式語言轉換至Ruby(詳細請點我)。

簡單來說,Ruby有兩個主要特色:

・完全物件導向的程式語言

雖然最近的程式都可以達成物件導向的目的,但比起其他語言,Ruby可以簡單地達成子類別與父類別之間的繼承。另外,Ruby定義類別的方式也非常簡單,因此就算你是個完全不懂Ruby的工程師,只要稍微對於程式語言有一點概念,也能夠輕鬆地讀懂用Ruby寫出來的程式。

・以簡單為宗旨的程式語言

Ruby其實跟Python很類似,可以用許多原本在Ruby內部就制定好的物件,直接表達在其他程式中需要寫得落落長的運算邏輯,而且通常物件都是用常用的英文單字來表示,因此開發起來非常方便。

Ruby也不像其他程式語言(例如VB)一樣,需要以無謂的逗號作為每一行程式的結尾,因此程式無論是寫起來或是看起來都非常地淺顯易懂

另外,Ruby也內建互動式介面(Interactive Ruby),可以讓使用者直接在同一個介面上看到程式的運算結果,並且給予不同的物件設定不同的顏色,總之就是個非常平易近人的程式語言。

而以上的特色,在以Ruby開發的Web應用框架-Rails更是發揮了極致。

Ruby on Rails:一個幫你分好類的Web應用框架

Ruby on Rails又簡稱RoR,顧名思義是結合Ruby語言至Rails平台的一個Web應用框架。藉由獨特的MVC開發架構,把一套系統分為模型(Model)、視圖(View)、控制器(Controller)三項分離的開發方式,使得各項功能都能夠獨立分離「不要自我重複」。

也因為這個「不要自我重複」的特性,Ruby on Rails簡化了程式中許多繁複的動作,並且更具有擴展性使得系統比較容易維護,因此程式的穩定性相較其他語言是比較高的。 

什麼!?Ruby工程師原來是那些各大排行榜中的常客、甚至名列前茅!

說完Ruby on Rails與其他程式語言的不同以後,讓我們來談談Ruby工程師的薪資現況

美國|Ruby on Rails是軟體工程師中平均年薪的第一名(說三次)

以美國來說,Ruby on Rails的工程師薪水是所有軟體工程師最高的。

之所以最高的原因,是因為Ruby on Rails可以以低工數來完成程式開發高生產性以及高穩定性的特性讓企業願意出資高薪聘用Ruby on Rails工程師。

【日本】第七名的Ruby工程師的平均年薪只輸給第一名50萬日幣,而且案件需求量是第三名

在日本,年薪第一名的軟體工程師是這兩年非常熱門之號稱C語言的後繼-Go,它是由Google自行開發的程式語言。雖然Ruby工程師位於第七名之一個不上也不下的位置,其實它與其他程式語言的差距也只差了50萬日幣

更何況根據日本的厚生労働省的調查,其實日本人2019年的平均年薪才420萬日幣!換句話說,Ruby工程師其實在日本的薪水是相當不錯的

資料來源:レバテックキャリア プログラミング言語別求人案件割合ランキング調査

另外,根據2019年對於不同程式語言的求人案件數的統計調查結果,企業對於Ruby求人案件需求量高達第三名,因此Ruby工程師不光是個薪水不錯的職業,市場需求也相當地高

Ruby工程師的薪資技術對照表|輕輕鬆鬆比別人年薪多100萬日幣

那如果想當Ruby工程師具體來說需要什麼技術要求呢?下面我將針對不同的年薪,來告訴各位朋友Ruby工程師的技術要求。

・年薪400萬~500萬日幣

.工作經驗:任意的程式語言開發經驗5年以內
.技術要求:
1. 理解從前端到後端的基本運作
2. 完成系統的建構、運作及維護
3. 具備上流系統設計的經驗

一個入門的Ruby工程師,其實並不要求你一定要有Ruby的開發經驗,因為程式語言的邏輯性部分其實相同,因此如果你有其他程式語言的開發經驗的話,轉為Ruby工程師所需要的時間其實很短暫。而對於入門Ruby工程師的要求,除了理解前端到後端的基本運作外,需要能夠完成系統的建構、運作及維護,並且能夠具備上流系統設計的經驗

・年薪500萬日幣以上

.工作經驗:任意的程式開發經驗5年以上,Ruby開發經驗3年以上
.技術要求:
1. 高度的程式開發能力
2. 具備專案管理者經驗
3. 具備大規模開發的領導者經驗

而進階到了年薪500萬日幣以上的Ruby工程師,除了高度的程式語言開發能力,企業會期許你有擔任專案管理者的經驗,或是具備大規模開發的領導者經驗(簡單來說就是要能夠會「管理」)。

考取Ruby相關證照,讓日本企業對你的實力一目瞭然

日本有一個Ruby on Rails的技術者認定考試運營委員會,為了讓企業對於Ruby工程師的技術能力有一定程度的理解,因此舉辦了Rails技術者認定試驗。這個試驗分為兩個等級:基礎與銀色(進階),以下幫你比較兩個等級的出題範圍之不同,讓你對於具體的Ruby on Rails的技術要求更有概念!

基礎 銀色(進階)
日文考試名稱 Rails5技術者認定ベーシック試験 Rails 4 技術者認定シルバー試験
要求Rails版本 Rails 5.0 Rails 4.0
報名費 10,000円/回 12,000円/回
考試時間 1小時 1小時
出題範圍 ・Ruby on Rails概要
・ActiveRecord與ActiveModel
・ActionPack
・ActionView
・ActionMailer
・ActionCable與ActiveJob
・Minitest


・Rails概要(包含MVC構造、rake等指令、ActiveSupport等)
・ActiveRecord(包含模型定義、CRUD操作等)
・ActionController(包含控制數據的輸入輸出、數據格式等)
・ActionView與Helper(包含HTML的輸出、JSON的輸出等)
・ActionMailer(包含寄送信件)
・Test(包含單獨測試與模型測試等)

1000小時學習菜單現在開始學Rails不嫌晚!!

這個1000小時的學習菜單,是參考日本網路上Rails神人所提供的資訊,號稱花1000小時能讓你從零經驗變成能夠以Ruby on Rails工作的工程師

1000小時究竟是多長的時間?

如果以每天1小時、3小時、5小時以及10小時來區別的話。

・每天花1小時的話持續3年

・每天花3小時的話持續10個月

・每天花5小時的話持續6個月

・每天花10小時的話持續3個月

這就來看看1000小時的學習菜單囉!

【第0小時~第100小時】學習HTML、CSS、JS、網頁製作

為了理解瀏覽器的運作方式,首先需要學習的就是前端工程師的必備技能!除了需要懂得各個語言的開發方式,也需要理解系統是如何與瀏覽器或資料夾做連結,並且能夠以終端機執行以上的開發過程。

學習內容:
・HTML
・CSS
・JavaScript
・JQuery
・Bootstrap4
・Finder的操作方式
・終端機的指令

【第100小時~第200小時】利用Sinatra學習HTTP&如何製作應用程式

在第100小時後開始,就要開始正式進入Ruby的學習過程。Sinatra是一套Ruby的領域專屬語言,能夠輕鬆建立HTTP並開發應用程式。在這個階段,期許應用程式已經能夠連結大約4-10個表格數的數據庫。

學習內容:
・Ruby
・HTTP(包含routing、GET與POST、session與cookie)
・應用程式
・數據庫、SQL
・Sinatra

【第200小時~第250小時】學習Rails

在知道如何以Sinatra開發應用程式以後,就要開始為了進入Rails這個以Ruby開發的Web應用框架做準備。透過閱讀相關書籍理解Rails的基本概念,並理解網路上在Git已經開發好的Ruby on Rais的應用程式。

學習內容:
・Rails
・Git

【第250小時~第500小時】Ruby on Rails入門

終於要開始進入到Ruby on Rails的核心,嘗試把自己過去以Ruby開發的應用程式套用至Rails的MVC開發架構,讓每一個在應用程式中的功能都可以獨立運作。

學習內容:
・Ruby on Rails的基本操作
・MVC開發架構

【第500小時~第600小時】Ruby on Rails中級

這個階段就是Ruby on Rails的應用階段啦!在這1000小時的學習菜單中有推薦了一本書「現場で使える Ruby on Rails 5速習実践ガイド」,在本書的除了教讀者要如何實踐Ruby on Rails的應用開發,也提到關於測試以及如何與JavaScript做連結,在針對較大型的專案開發時很有幫助。

【第600小時~第800小時】自行開發Ruby on Rails應用程式

其實這個階段跟上一個階段目的差不多,著重的重點都在於Ruby on Rails的實踐。唯一不同的是,上一個階段比較像是邊看書邊學習如何實踐,而這一個階段重要的是要自行創建一個屬於自己獨一無二的應用程式。如果可以的話,可以嘗試連結至規模較大的資料庫(大約表格數為10至20),並且嘗試用AWS等雲端計算器來執行程式。

學習內容:
・建立完整應用程式
・AWS等雲端計算器

【第800小時~第1000小時】累積實務經驗

當你已經準備好打仗用的武器了,接下來當然就是累積增加實務經驗。可藉由實習,或是打工接專案的方式,學習一個專案過程所需要的種種因素。除了開發能力,這階段還要學習如何與專案經理人或是網頁設計師等等與專案相關的人溝通。

學習內容:
・實際專案的運作方式
・溝通能力

結語

Ruby身為日本電腦科學家發明的語言,外加擴展性超高的平台Rails,讓Ruby on Rails工程師無論是在美國或是日本都有一定的薪水與需求量。有興趣的朋友們,如果你是有經驗的工程師就趕快找人才仲介投出履歷;又或是如果你是毫無經驗的朋友也不用擔心,參考1000小時的學習菜單自學以後,也讓你自己在日本的工程師業界一展長才!



赴日工作・生活免費線上面談

不管是對赴日求職已有計畫,

還是憧憬海外工作的你;

在學習日語中,期望將來能實際應用在日本職場的你

都歡迎來跟經驗豐富的日本輔導專員跨海面談YO!

YW.Chen

內在與外在充滿矛盾的雙子女孩。

喜歡戴耳機卻不放音樂;
樂於聊天卻崇尚不需言語的相處;
封號是課堂的睡美人卻有台日雙碩士學位;
機械傳產科系畢業卻在日本製造業龍頭做無人駕駛的資安研究。

想把不平凡的人生經驗用純粹的文字紀錄下來,願這一字一句

能為你我帶來點不一樣。