Fw: [討論] 如何定義 "會" XXX 程式語言

看板KUAS_CSIE作者 (sars)時間12年前 (2012/03/01 18:26), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
※ [本文轉錄自 Soft_Job 看板 #1FJOjeAv ] 作者: chucheng (時間太少事情太多) 看板: Soft_Job 標題: Re: [討論] 如何定義 "會" XXX 程式語言 時間: Wed Feb 29 10:20:22 2012 ※ 引述《qrtt1 (lonely)》之銘言: : ※ 引述《qwer820404 (beans)》之銘言: : : 到底什麼叫做 "會" XXX 程式語言 : : 常常聽到別人說 我會的程式語言有 XXX、XXX、XXX 零零總總至少有3項以上 : : 但是實際要用的話 卻寫不出來 那跟別人說你"會" 不是在唬爛嗎? : 因此,要札實地變得強大,你的產出得經過不同人的 review。 : 將你誤解的部分一一由你的觀念確實地修正。 : 你才能謙虛地說,你稍為能掌握某個語言。 當我和別人聊時(不管是Interview還是被Interview) 以下以網路公司為例(就是有網站的軟體公司) Junior Programmer: 基本上我認為只要能認真的FOLLOW經典的教科書讀完個一遍到二遍 我個人認為懂即可,這裡講的FOLLOW不是全會,但至少觀念都有 丟一個章節給你復習之後,你可以講解每個範例(或不看書重寫出來) 基本上CODE也寫得出來,至於對Library熟不熟,那是其次,基本的懂就好 不懂的Google到會就行,我對懂的定義就是 你Google到的答案你能理解,甚至改用 如果原始Library有錯,你能證明,這樣就行了 基本上,隨便參與一個open source的project 只要一個人能跟上別人的討論,回報BUG,甚至提出一些解法(不一定對沒關係) 我覺得這個程式設計師就合格 上面是普遍對學校畢業的學生的期許~簡單的講,給你問題你能解的了,就行了 Junior Programmer II (碩士以上 OR 大學畢業工作二年以上): 承上,再進一步(熟),如果要稱"熟" 我會期待這個人不只懂語言,還懂一點Framework,以及進階的課題 玩JAVA至少要碰過Spring / Structs / etc. 玩Python至少要碰過 Django / Pylons 簡單的說,我會期待這傢伙至少懂Design Pattern,並積極參與線上社群 通常我第一個問的問題都是,你stackoverflow.com的帳號是? 再來通常我期待你懂multi-thread或是unit-test等進階的課題 當然,你要會用SVN/GIT這一類的Version Control,不用是大師,但要會用 Senior Programer : 承上,再進一步通常就分"專"和"廣"二種 講專的,我期待你在某個framework很熟,也就是說 我不懂的可以請教你,而你給的答案能讓我滿意 你寫出來的CODE都follow convention,也會自動自發的refactoring或是幫助同事 我可把peer review的工作丟給你,你可以看得懂別人的程式並給見解 尤其是你的專業(可能是特定,例如multi-thread高手或是…) 你至少在單一方向要能勝過你的主管,大家以你為主要的"靠山" 至於走廣的 通常期待你參與過不少案子,以一般網路公司來說 你要能懂DB的正規化,什麼是3NF/BCNF/4NF要懂 或是不懂,也有能力快速PICK UP(靠自己) 能夠使用UNIX,遠端SSH用VIM處理或DEBUG問題,懂部署程式的流程 甚至能夠帶領團隊貢獻,並導入工作流程 具體一點的說,(以GIT為例)你知道什麼是branch 我丟給你一個文件,像是 http://nvie.com/posts/a-successful-git-branching-model/ 你可以導入這個流程,分析是否適合團隊,然後給一個簡報教大家 以上只是舉例,走廣的,簡單的講就是什麼懂 而且能快速上手一個大家(團隊裡)都不懂的技能 你懂大部份重要的Design Pattern,我期許你對工作上需要的演算法都了解 實務一點,像是UML或其它軟工的技能應該都要能"使用" Senior Programmer II (有人叫 Programmer Lead): 承上 但這裡專與廣的界線會模糊掉,因為通常你是很有經驗的開發人員 你處理的是一個面,不再是一條線或一個點 舉例來說 我期許你是open source project的active users 以Java為例,我會假定你有FOLLOW http://openjdk.java.net/ 簡單的說,Library有Bug時我相信你能解的了(或是想辦法繞過) 再者,如果是PhD,我假定你能把公司的問題當PAPER的研究解決 舉例,對新的規劃,提出一個可行的(Scalable)的Prototype 你follow目前業界的最新規格/標準 你會注意新技術的出現,像是NoSQL的Solution 你除了自己常用的語言外 你最少要能寫Script(Python/Perl),懂Bash, 玩過EC2 此外,你不只能寫對的程式,還能寫好的程式 你知道怎麼最佳化,甚至最好你能找出更好的解法(可能是自己想,可能是看PAPER) 通常你寫過一二本書,再不也也寫個熱門BLOG 總而言之,你可以獨當一面帶領7~8人的團隊完成feature 通常走到這裡,再往上就是 1) 走技術管理職,你的會議愈開愈多,對上對外對PM對客戶 2) 走技術研發職,參與國際Standard的制定,被邀請去CONFERENCE TALK 3) 走RESEARCH 研發,作Prototype的(下一代)系統,負責寫Pattern/Paper 擔任跨部門團隊的顧問(對外或對內),通常PhD比較多 4) 純管理職:跑去念個MBA,當技術出身的管理人員(管人 > 寫CODE) 5) 創業離職:跑去開公司一類的… 一樣老話,以上只是抓個"精神",而不是真的去定義說你達成幾項或那項沒有 就算你缺乏某一條,不代表你就不合格,也許你其它地方可以補強 不過就我看到的層面,你到底會不會"一個程式語言" 要看你應徵的是什麼樣的職位,這樣比較公平 通常FB在在大學徵人,就算是剛畢業,他們的要求至少都在Junior II以上 不過他們可更強調你對Algorithm的了解和寫CODE的速度及質量 (因為你以後是產CODE的人啊!) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 131.179.64.185 ※ 編輯: chucheng 來自: 131.179.64.185 (02/29 10:22) ※ 編輯: chucheng 來自: 131.179.64.185 (02/29 10:25)

02/29 10:54, , 1F
這樣的說明好經典,看到senior programmer II段落描述,
02/29 10:54, 1F

02/29 10:54, , 2F
眼睛一亮.
02/29 10:54, 2F

02/29 10:57, , 3F
有很多技術demo會議,示範起來都是做一個面的示範,概括而清析
02/29 10:57, 3F

02/29 11:47, , 4F
看 A successful Git branching model 看到入迷了我。
02/29 11:47, 4F

02/29 12:45, , 5F
好久好久沒有用到3NF/BCNF/4NF了, 好懷念...幾乎沒有任何開
02/29 12:45, 5F

02/29 12:45, , 6F
發用到過 XD
02/29 12:45, 6F

02/29 13:48, , 7F
好奇依本文分類後各等級的薪資為多少?
02/29 13:48, 7F

02/29 14:20, , 8F
看公司(有賺錢沒賺錢)、看地區(台/美/歐/…)、看產業
02/29 14:20, 8F

02/29 14:21, , 9F
以平均較高(稅也較高、生活費也較高)Junior I約8~9
02/29 14:21, 9F

02/29 14:22, , 10F
至於BONUS就看個人表現,看公司賺錢情況,(不計STARTUP)
02/29 14:22, 10F

02/29 14:23, , 11F
抓10~25%當BONUS,合起來如果是N,每進一層約加30%
02/29 14:23, 11F

02/29 14:23, , 12F
當然這是完全不負責任的推估,只是給個"大概"的感覺
02/29 14:23, 12F

02/29 14:25, , 13F
台灣的話,Junior台北會抓4~6W台幣當N
02/29 14:25, 13F

02/29 14:27, , 14F
有興趣可以上www.glassdoor.com就可以查到大概的薪資
02/29 14:27, 14F

02/29 14:38, , 15F
版主有沒有興趣被我挖來當網路公司的技術主管?
02/29 14:38, 15F

02/29 14:39, , 16F
文章應叫樓主吧xd
02/29 14:39, 16F

02/29 14:41, , 17F
sorry~樓主~
02/29 14:41, 17F

02/29 15:21, , 18F
我將這篇印下來了,將貼在我的桌前,作為自我的期許
02/29 15:21, 18F

02/29 17:45, , 19F
好文我頂!
02/29 17:45, 19F

02/29 17:59, , 20F
這篇讓自己好有目標XD
02/29 17:59, 20F

02/29 20:22, , 21F
推~~~
02/29 20:22, 21F

02/29 23:01, , 22F
02/29 23:01, 22F

02/29 23:40, , 23F
好文推!!~
02/29 23:40, 23F

03/01 03:49, , 24F
好文推!
03/01 03:49, 24F

03/01 11:10, , 25F
有這樣的文章真是太好了!正好可以當作自我省思的清單!
03/01 11:10, 25F

03/01 11:13, , 26F
好文
03/01 11:13, 26F

03/01 11:47, , 27F
請問.. 能做到上述的薪水是??
03/01 11:47, 27F

03/01 13:09, , 28F
薪水除了實力外還有機運,這就是為什麼技術!=薪水。
03/01 13:09, 28F

03/01 14:37, , 29F
能認識前輩 是一種幸福阿
03/01 14:37, 29F

03/01 15:09, , 30F
@gname 我看過還沒作到這程度年薪就十萬美金的 這樣夠參考嗎
03/01 15:09, 30F

03/01 17:24, , 31F
推 技術!=薪水 不過技術越好,薪水高的機率越高
03/01 17:24, 31F

03/01 18:26, , 32F
借轉~
03/01 18:26, 32F
※ 發信站: 批踢踢實業坊(ptt.cc) ※ 轉錄者: loriandkkk (140.133.76.12), 時間: 03/01/2012 18:26:50
文章代碼(AID): #1FJqxhkq (KUAS_CSIE)