有時候想想程式設計師為何為難程式設計師呢?
扳扳手指走上碼農這個行業也有幾年了,但是越來越覺得這個行業很累,有人說程式設計師就是二代農民工,我個人還是比較贊同的,對於剛入道的同仁們來說確實就是個體力(腦力,眼力<你懂的,眼力比較>)活,真就遷扯不到什麼高深的演算法,基本上你要用的微軟都幫你想到了。公司方面也充斥著各種各樣的複合型(什麼都搞),一不小心就掉坑裡了,好不容易爬出來,又被社會XXOO了。只能說人生在世幾多愁,愁來愁去未到頭。那既然跳進了這個火坑,生活還得繼續呀。在這幾年中,也幫經理面試過不少人,但是有時候靜下來想想很多情況下程式設計師經常有為難程式設計師的時候?又給苦逼新增了一份色彩,那就說說我自己認為的程式設計師何苦為難程式設計師把(突然想起好像有首歌叫女人何苦為難女人#_#)!
一 對於面試
作為被面試的人:面試中有筆試我個人是很不喜歡的,既浪費紙張又浪費時間,我又不是來考試的,一來就給3頁紙以上的題目做,而且好多問答題。好吧筆試固然是一個測試手段,但是有些筆試題目也太不行了,都是網上覆制下來的那種,而且還是最基本的概念題。相信大家面試中有90%機率都會出現【什麼是物件導向】吧,這樣的測試題我只能呵呵。我比較喜歡文藝的公司,那就是上機解決1-3個在實際專案中出現的問題,如果沒時間完成的可以寫虛擬碼,提供思路也是不錯的,最後談談一些專案,和處理問題的方法,基本上就大概瞭解適不適合了。去面試程式設計師又不是考公務員,怎麼那麼多筆試呢?不過有時候也碰到過面試題,後面寫了要用自己理解是方式去寫答案,而不是一味的名詞解釋。
作為面試的人:面試別人不管對方技術好與壞,長相是否很凶殘,年齡大小,都要平等的去對待,有時候長得像小孩子的比那些大叔級別的技術和口才好多了。個人覺得什麼樣的技術職位就應該放什麼樣技術的人,而不是放一個薪水開的比其他較低的人就可以了。要想想自己也是這麼過來的,平等對待對方,都是程式設計師何必為難自己人呢,特別是遇到那種容易緊張的面試者,其實本身技術可以的,緊張後什麼都忘記了,這個時候面試官就不要在製造緊張的氣氛了,有時候講個笑話調解下多好。這樣良性迴圈下去,你給別人機會以後別人做了面試官也會給你機會。但是有一個事情我就不得不提起。有些面試官當發現來面試的人開的工資比自己還高,就會出現應聘失敗的情況(奶奶的開的比我還高,玩個毛啊)。我覺得正常的情況就是和經理以及HR談談,然後給個綜合的工資額度,然後HR去談,而不是面試完回來後和經理說這個人技術不行。
我想說的:
筆試題是怎麼來的了,大部分情況不是經理網上覆制,就是程式設計師自己down下來的,自己寫程式碼都沒時間,哪有時間出題目。有時候仔細想想其實這個就是為難以後的自己。大家都學上一輩的人,都這樣弄題目,導致大部分的面試提基本都一樣的,完全失去了筆試的意義。雖然在面試的時候有些人會莫名的給你一些演算法的問題,什麼是冒泡呀?排序有哪些方法呀,什麼是樹呀,怎麼建立一個佇列呀?等等等等,這樣作為難道面試官的你就可以裝一下。這些東西網上一抓一大把,問問大概的原理就行了,有時候一個地方沒說清就排斥這個人,程式設計師自己何苦為難以後的自己,都文藝一點多好,整一些名詞解釋有意思嗎?還有就是對於作為面試官的程式設計師自己壓自己人工資的最鄙視,你老和HR報價壓那麼低幹嘛,這樣自己去別的公司工資能起來嗎?HR理所當然的覺得程式設計師就值這麼多,這樣以後自己出去能找到工資比現在工資高些的嗎,一味的壓低工資只是埋沒以後的自己。
我最記得2年多前的一次面試,技術沒問題,到了人事那裡掛了,原因就是工資開高了,然後那個人事竟然說【她】自己做了6-7年的人事都才12K,你開8k而且你還是專科,你覺得不是要求太高了嗎?當時我腦袋一充血心裡已經放棄這家公司,然後和她理論起來說:你做人事的和做技術的好像不能這樣對比吧,我們苦逼的加班你們加班嗎,我們經常要學習新的技術你們要嗎?程式有問題找的是我們程式設計師而不是測試人員吧,再說我們每天敲的字也比你們多吧?反正說了霹靂扒拉說了很多,那個女的人事中途沒說一句話,最後走的時候來了一句你工作才3年多點,你確實開高了。我當時笑了一下就走了。這件事情告訴我現在的普通的行業已經追上IT所謂的高薪行業了。一些公司的HR只是當我們是傻乎乎的農民工,特別是女的HR。我的意思不是鼓勵大家一味的亂開高工資,管他三七二十一開了再說,而是要評估自己的技術、能力、工作年限來。我說的別大家不承認,舉個例子把,大家都會面對一個事情就是很多同樣3年和5年以上的,技術能力等同的情況下工資很多是一樣的,因為HR已經給程式設計師定了所謂的最高薪水。對於那種工作長的、經驗豐富其實是一記猛棒,導致很多技術很好的都轉到專案經理和產品經理,埋沒了很多寫程式碼很好而且很牛逼的高階程式設計師。
我還想說:程式設計師面試官何苦為難程式設計師,更沒必要和HR聯合起來為難。(當然技術不行不在此內)
二 對於上班
正常上班:這個沒什麼好說的,完成自己本職工作後,如果有時間可以幫助同事分擔一點,都是程式設計師相互幫助才是王道啊(不是盲目的去幫忙, 看專案和情況,如果確實是技術不行,上報給經理說明,是去是留後說。),這樣不至於一個人的失誤導致整個小組加班或者捱罵,大家都認為程式設計師是最不會說話的人群,但是這個是極端的,業界那麼多老闆還不是程式設計師出生的。多交流技術才能讓這個行業進步,一個技術藏著掖著沒什麼意思,和人分享才是最大的樂趣,就好比你做了個軟體沒有人用,有意義嗎?所有程式設計師不要自己憋著自己,這樣其實就是自己為難自己,也就是程式設計師為難程式設計師,要學會分享。
非正常上班(加班):讓我先長嘆一聲,o(︶︿︶)o 唉!天天加班何時才能到頭啊。。。。....................................................
迴歸正題,我有時候問自己加班加班加你妹的班啊,什麼都沒有,加毛啊。其實大家心裡都是排斥加班的,而且加班的效率是很低的,基本上寫不了幾行程式碼,因為白天的能量都用完了,晚上根本就不想動了。為什麼會加班,大家肯定經常會問到這個問題,最大原因就是資本主義要榨取最大的利益。迴歸現實就是經理所謂的答應客戶的時間,要快點啊,本來一個3個月的專案,硬逼著1個月完成了,這樣的專案質量能有多好,可想而知。所以經常就會出現有使用者罵,什麼破系統,真他媽的好慢好爛,特別是遊戲開發。然後整個行業都變成這樣了,然後大家理所當然的覺得程式設計師就要加班了。還一種加班的情況就是,所謂的績效,我看是HR來“譏笑”我們的吧,麻痺的這個是逼人加班的條款,不加班就面有可能面臨扣工資,還一種就是同事都在加班,我不好意思走啊,就算我做完了自己的事情都不好意思走,我想說那些加班的同事你把這個行業帶壞了(這個過於極端了哈),但是這個確實是一個因素啊。
其實一般正常情況下,專案完成是不用怎麼加班的,特別是經驗豐富的程式設計師,基本上累積到一定程度後都是有一套程式碼庫的,複製貼上後進行修改基本能完成一種事情70%以上,但是想歸想,現實卻不是這樣的,你不加班經理和同事會給你帶上工作不積極的大帽子,這樣一來不加都沒辦法了。
過去與未來大家都是程式設計師,何必用未來的自己來為難現在的自己,我好想說我們要學會拒絕加班,我的意思不是不加班,而是偶爾還是能接受的,天天這樣是個人都要崩潰。
三 題外
在中國正常的公司都會是以利益驅動為第一驅動力,畢竟公司要生存要發展嘛,這是一個不可迴避的問題。其次才是需求驅動,最後甚至沒有技術驅動這一說。試想一下,利益驅動產生一種方案,之後的事情就可以用腳趾頭去想了,肯定就是一個接著一個想法產生了,為了利潤而去重複的生產,難道不是一件非常可怕的事情嘛。苦了寫程式碼的程式設計師們,本來可以去學去看新的知識,但卻只能去造這些外表不同的輪子,這是一個惡性的迴圈。是不是應該跳出這個圈,有人說過不要重複的去造輪子。也有人說過技術不是問題,這話也有道理,但如果你用腦去想想這話的意思就是沒有什麼問題解決不了,這就相當可笑了,這就是利益驅動造成的可怕思想,之所以說出這種話,是因為你的出發點就是在想怎樣通過現有的技術來搛取利益,而不是我現在有什麼問題,現有技術解決不了,我怎樣去解決它。
看到和很多人都發表了自己的不滿,不滿歸不滿,生活還得繼續,期望我們們.NET程式設計師待遇越來越好,奢侈的希望有不加班的!