2011-04-28

真空妙法


今天早上上班,在北投捷運站一邊站著等車一邊看《設計思考改造世界》
旁邊一位78歲老先生跑來聊天,說他以前就是這樣,有空就拿書起來看.....
聊了他在慈濟當志工,說了"真空妙法"跟其他的佛法給我聽.....
聊了他家裡的事,獨子全家在美國,孫子去年在美國拿歐巴馬總統獎(皮包裡還放著獎狀的影本),下個月要去美國看兒子孫子.....
聊了他聽CD自學英日文(英文頗流利),以前是鐵工廠的黑手,還展示有很多舊傷痕的手給我看.....
這個老人家一隻腳不方便,但是精神奕奕,外表看來不像這個年紀.....
因為跟這個老人家聊天很有趣,我特地延一站到關渡站才一起下車,這樣可以聊比較久.....

一大早就遇到有趣的人,真不錯 :-)

2011-04-20

[轉貼] 關於招募的真實故事

今天下午看到這篇文章,我一邊看一邊點頭稱是。所以也轉貼到這裡。

原文出處在這裡

  又要進入畢業生求職的旺季,有些去年到職的同學,不是因為自己當初選錯了公司而炒了公司,就是因為種種原因被公司炒掉了,只好又開始了新一輪的招募生活。想想也讓人感慨頗多。說說我自己是如何招募的,希望對大家有一些幫助。
招募者的目的
    這還用說嗎。招募工作人員就是讓他來工作,然後搾取他的剩餘價值,獲得最大的利潤。我想這是所有公司招募工作人員的目的吧。可惜的是很多被招募的人似乎總 是忘記招募公司的這個目的,所以總是做一些這樣那樣的無用功,浪費自己的精力和時間。在你準備自己的應徵活動的時候,別忘了這一點。突出自己的價值,讓人 家感覺你有搾取的價值,最起碼是有搾取的可能,否則你是沒有機會的。
招募的選擇方法
    招募一般採用的是篩選法,說簡單一點就是把那些你認為不合適的人篩選出去,留下你認為合適的人來面試。在面試的過程中一般還是採用篩選法,最後留下的是人 的採用排隊的方法,然後再從其中挑選頭幾名作為你的職員。知道了招募的方法,你也知道了該如何做。在招募的前幾輪只要保持你不被刷掉即可。最後的面試才是 關鍵中的關鍵。
        大凡工作都有一個工作方法,招募也不例外,『戴明』認為工作過程應該是計劃-實施-檢查-改進。招募工作也可以大致劃分為,確定招募目標-履歷篩選-面試 -確定人員。一般來說,公司招募人員都有一定的目的性,我這裡只說軟體發展/測試人員的招募當成例子,開發人員的招募主要是兩個目標一個是高級開發人員, 他們是要負責公司的開發開發任務,需要在很短的時間內成為技術骨幹或專案負責人,另外一個是普通的開發人員,一般來說他們也需要完成交付的任務即可,如果 可能在3到4年的時間也需要成為技術骨幹和專案負責人。那麼如何從眾多的履歷中獲得你需要的人,就需要一些技巧了。
    我自己的經驗。首先是人品。(老大沒錯吧,現在誰還說人品)。沒有辦法,人品永遠是第一位的。作為一個專案的負責人,首先是要團結開發團隊的所有成員。靠 耍小聰明可以矇騙人一時但不能騙人一世。技術、管理方法都是可以學的,可人品這個東西確實很難改變的。所以你要是想在以後的工作省一點心話,還是注意一下 你招募的工作人員的人品問題。
    第二點,是否聰明,一個人是否聰明是很難判斷的,特別是在面試的20-30分鐘內就更不可能了,我自己的判斷方式是是否可以發現原來開發過程的問題。比如 說在研究生面試的時候我主要會問他的專案經驗,如果他可以將專案很清晰的描述出來,說明他思維的條理很清楚而且專案開發過程中他應該是骨幹人員(有專案開 發經驗,否則是不會說的很清楚的),一般來說我還會問他在專案開發過程中有什麼問題,發現問題是一個很重要的素質如果他能夠總結一些開發的一些問題(技術 和管理上的問題),而且再可以說一些可能的改進方法(不管正確與否),都說明這個人是一個有心的人,是一個會工作的人。
    第三點,工作經驗,在我看來學習能力和動手能力要比會什麼開發語言重要的多。比如說現在很多大學生和研究生的的專業技能都會寫精通C語言,精通JAVA語 言等,而這些在我看來只不過是說我使用過這個開發系統,在我看來更重要的是,你使用這些語言開發了什麼系統,系統的規模有多大,你在其中承擔什麼角色。比 如我對面試的人員會問一下他的系統最大程式量是多少,不要小看這個問題,在我的心目中一個大學畢業生的單個專案的最大程式行應該為2000行以上,研究生 應該是6000-7000行左右,否則很難說他們是有實際工作經驗,(這裡要說明的一個問題是我說的代碼行是手工編寫的代碼行,而不是系統自動生成的代碼 行,否則用VC自動生成的幾千行代碼也就是幾秒鐘的事情)。只寫過二、三百行代碼的大學生,或者千行左右最大程式量的研究生肯定會讓你失望的。
    第四點,軟體工程。這可以說工作經驗的一個擴展了,一般來說,有工作經驗的研究生,對軟體工程都會比較關注,原因也很簡單,只有在實際工作中遇到問題而且 想解決問題的人才會理解軟體工程的重要性,而不是僅僅把他作為一個聊天的資料。如果一個研究生能夠將自己的專案經驗和理論知識想結合(哪怕是有一些錯誤) 也說明此人會有很大的潛力,至於說道本科生,基於經驗的問題,他們對軟體工程的瞭解不會很多,但是否對其有牴觸心理是你要重視的,有很多人有很高的專業技 能(比如對某中開發語言的掌握),但對軟體工程卻很反感,一般這種人在以後的團隊合作中是有問題的,是你要特別加以關注的。
    第五點,專業技術。我把技術專長放在最後並不是說它不重要,實在是很多面試人員對它太看重了,但是在我看來它的重要性並不是那麼大,很多人在招募的總是強 調我會什麼什麼語言,或者我精通什麼什麼語言,可什麼叫會,什麼叫精通,一個語言沒有使用上2、3年你敢說會,沒有5,6年你敢說精通,拿C語言來 說,PC上使用最多的是TC,VC之間有多大的差別,在說unix系統的c和他們又有多大的差別,而且你對函數庫瞭解多少,所有的函數用處,變數的含義, 輸入/輸出參數的類型含義是什麼?是否讀過函數庫的源代碼?是否改編過系統函數?TC的不同編譯模式對記憶體的使用有什麼差異?堆和棧的差異是那些?總體 變數和臨時變數存放的差異?如何嵌入其他語言,比如彙編和SQL語言。這些問題你都會回答嗎?如果不能回答你怎麼說你是精通,也許你認為我太苛刻了,可我 的確見過一個人他說自己會組合語言,他會的標準是可以隨口說出BIOS第多少號中斷是做什麼用的,AX、BX、CX、DX寄存器應該輸入什麼值,系統的反 應是什麼樣的。他的業餘愛好是解密軟體,成果是幾百個被解密的軟體。我想這樣的人才可以說是精通某種語言吧。
另 外一個原因是軟體發展行業的技術更新換代很快,昨天可以說是新技術,今天就變成了普通技術,明天這種技術就要被淘汰了,所以比較對某種具體技術的掌握來 說,快速學習能力就重要多了。當然我們不能走另外一個極端,認為專業技術的學習是無關緊要的,我說這些只是希望大家不要把專業技術擺在一個不適合的位置 上。
    第六點,如何向被面試的人員提問,一般來說,被面試的人員做過的專案是各種各樣的,隨說面試主考官都是有相當經驗的工作人員,但總會遇到自己陌生的領域。 如何向這些人員提問也是有一些技巧的。比如說我原來面試過一個做人工智慧的研究生,人工智慧是我從來沒有接觸過的一個領域,於是我首先讓他講解他的工作內 容,在他的講解過程中,我發現有一個方面讓我很感興趣的問題,就是如何判斷一個文章是用戶可能感興趣的文章的方法,於是拋開了其他問題,專門就這個問題提 問,如何判斷,從詞義、語義講到語境,再到演算法的實現和判斷。很不錯,這個30分鐘的面試不但讓我對這個人的能力有了瞭解,而且對人工智慧有了初步的瞭 解。
所 以在面試人員的如果遇到你不瞭解的領域不要著急,可以讓他先講,如果他可以給你講明白他做的工作,說明他對自己的領域是很瞭解的(也說明這個人的潛質是很 不錯的),這個方法另外一個變形就是可以將被面試人員難住。比如說一個資訊管理系統,你可以問他資料庫設計的方法,從設計方法可以從1NF問到BCNF, 一般來說沒有人沒有會記得那麼清楚,具體到模擬一個具體的資料系統,可以問他優調的方法,系統是如何設置的,總之問題越細越深入,別面試的人回答不上來的 可能性越大。至於他的回答倒無所謂,你只要不做評判即可,這樣會給你一種你是技術大師的效果。
好了還是說說我在面試過程中的一些故事吧。
不知道自己要幹什麼的人
    這是一個讓我哭笑不得的故事,那次面試的是一群研究生,我們的一個女同事負責在外面招待他們,我在裡邊面試,面試完了一個人,我出去叫下一個人員的時 候,順便撩了一眼,十幾個等待面試的人員都在安安靜靜等待著,惟獨一個男研究生一雙眼睛死盯著我們的招待人員。而且眼神很不對,看得我直生氣。我瞪了他一 眼,示意他不要這樣。那人看到了,卻絲毫沒有收斂的意思。得,既然你不是來找工作的,我也沒有必要花時間來面試,兩分鐘解決問題,然後你就可以回家了,說 實在的,我不是反對窈窕淑女,君子好逑。但你老總得明白你是幹什麼來的吧。什麼時候該幹什麼事情都不知道,我怎麼敢招你進來。
材料準備的要適當
    還是那回面試,一個人拿著他的履歷進來了。在介紹完公司的基本情況同時我看了他的履歷(主要是看他的工作經驗),讓我驚訝的是,他竟然參加了二十幾個專案 的開發。我的媽呀,即使從大三開始做專案,四年半的時間,一個專案平均參加時間也就是2個月左右,而一個專案你只做兩個月是不可能是有深入的瞭解的。果然 在談專案經驗的時候證實了我的想法。這人果然是廣而不深。我對他的判斷是缺乏深入研究問題的能力,而研究生是需要具有對問題進行深入研究的能力的,結果這 個人也失去了機會。材料的準備要適當,拿這個人來說就是太爛了,其實他只要準備5、6個專案,並且準備好這幾個專案的背景,解決方法,他在專案中的作用就 可以了,而且即使你在專案中不是主要開發人員,只要你用心也是可以獲得很多經驗的,在面試的時候將你的看法談出來往往會起到很好的作用。
回答問題出了錯誤要敢於承認
    一般來說,面試人員都是在其專業比較優秀的人員,更重要的是他們在自己的專業上都有很多經驗,所以他們對系統的理解會比被面試的人員深很多。被面試的人員 往往在面試的時候出現很多概念性的問題,在發現自己回答錯誤的時候要敢於承認錯誤,千萬不要企圖存在矇混過關的僥倖心理。
我 在面試測試人員的時候就遇到過這麼一次,看得出來哪個人希望來公司工作,而且也做了很多準備工作,開始的時候她對測試方面的問題回答很讓我滿意。我當時是 想瞭解他是否具有測試的實際工作經驗,就問了一下黑盒測試和白盒測試的主要工作內容,(這我耍了一個小心眼,一般的書是先講白盒測試,在說黑盒測試)。果 然,她把白盒測試的內容安到黑盒測試上了在說黑盒測試的內容的時候她發現了問題,如果她這時承認錯誤,她的面試還是不錯的,(對測試瞭解的人還是很少的, 有這些基本概念已經很不錯了),可惜她老人家惟恐因為這個問題答不上來會影響他的面試,於是就開始跟我『盧』。說了半天也無法自圓其說,而我對於她後來的 表現實在失望,因為工作經驗告訴我,一個人如果他的工作經驗不夠,你只要在關鍵的時候告訴他就可以了,但如果他總是迴避問題或者總是拿這樣那樣的理由太搪 塞你,那問題就大了,所以這個人就因為這個問題失敗了。
對一些敏感問題最好不做直接回答
     這不是故事,而是很嚴酷的現實,薪資待遇是一個很敏感的問題,在不同的場合回答的方法是不同的,但就我接觸的場合,一般來說是作為刷掉人員的一個條件,我 自己的招募過程中就經常發生這些現象,公司對招募人員的福利都有一定的規定,除非是特殊的技術人員,否則很難給你超出規定的待遇,所以很多優秀的人員都是 因為提出太高的待遇要求而被刷掉的。
有自信是很重要的
    我不希望我招募的工作人員是一個太狂妄的人,但缺乏自信同樣是不可取的,在面試測試人員的有一個女孩就是這樣,她總是在說自己的不足,總是懇求我給她機 會。說實在的,可以看到自己的不足是一件很可貴的事情,看如果想通過同情來獲得機會卻不是一個好方法,在做工作的總是要面臨著挑戰,有時候在只有30%的 把握的時候都要衝上去,可對於一個缺乏自信的人她可以做到嗎?要知道工作就是工作,是謀生的手段,我不可能還去哄你去做呀。
好了先到這裡吧。我說的東西只是自己的一些經驗和體會,不是什麼標準答案。希望對大家有一些幫助!!

2011-04-17

[小量跟爸爸的塗鴉] 恐龍跟小朋友一起逛公園


上面是今天中午跟小量一起在客廳桌上畫的圖 (有註記的部份是小量畫的)。

突然想起兩件十幾歲時候的往事:
  1. 小時候一邊在夜市顧攤,一邊用裝鞋的紙盒畫很多塗鴉 (那時候應該是這輩子最常畫畫的時候)
  2. 那時候也跟今天一樣,拿一張白紙一邊畫畫一邊講故事給當時還是小小孩的小弟聽,一張紙就可以玩很久很久
上面這兩件事都是20年以前的事了。