1. 程序員的招聘要求
各大招聘網站對程序員的要求 ,以PHP為例。
1.本科及以上學歷,3年以上PHP開發經驗,有大型項目開發經驗者優先。
2.精通PHP語言,有面向對象開發經驗者優先。
3.熟悉LAMP體系的開發,熟悉Linux操作系統,熟悉Apache系統配置。
3.熟悉JavaScript和CSS,有Jquery經驗者優先。
4.品格端正,有強烈求知慾和工作責任感,能承受一定的工作壓力。
5、可進行主流開源php程序的二次開發、模板改進和系統重構;
6、精通XML、HTML/XHTML、CSS、Javascript、AJAX、JSON等Web頁面技術;
7、熟悉資料庫,精通SQL和數據結構,具有MySQL/MSSQL等關系型資料庫開發。
經驗;
8、熟悉Linux/Unix基本操作,熟悉Apache、MySQL、PHP等軟體的編譯安裝和最優化置,了解這些軟體的版本差異和不同安裝/運行方式及原理;
9、具備良好的溝通合作技巧,較強的責任心及團隊合作精神;
10、有良好的團隊合作能力,具備Subversion/CVS協同開發經驗,善於溝通,熱愛開發;
11、要求面試時能夠提供程序項目地址及演示源代碼;
12、能獨立承擔商業動態網站/行業門戶網站後台程序的開發工作;
13、思維清晰有條理,工作熱情敬業有耐心;
14、能與美工配合完成較復雜的網站功能;
15、年齡21-28歲。
2. 如何招到一個靠譜的程序員
1. 簡歷看人
閱讀簡歷永遠是面試的第一步。好的簡歷一定是正確、清晰並且能夠體現候選人最有價值一面的。我首先會過濾掉那些包含錯別字,文句不通或沒有邏輯性的簡歷,因為如果一個程序員連自己的簡歷都不願意去仔細檢查並完善的話,很難想像他寫出來的代碼質量會如何。接著,我便會重點閱讀簡歷中的項目經驗部分,在這里我能夠看到面試者的開發經驗,技能棧,並且判斷他們熟悉的技術框架、工具是否與目前公司要求相匹配。
這里,我還會特別關注面試者是如何來寫這部分項目經驗的,你需要用盡可能簡練的文字來描述項目的背景,你在項目中承擔的角色、參與項目的時長,你用到的技術、以及你在項目中的亮點等信息。優秀的程序員們往往有一個共同的特質,那就是善於歸納,並能夠一針見血的發現問題或把一個問題說清楚。我經常看到面試者在簡歷中像寫故事一般地描述他們的項目經歷,光這一個章節就有好幾頁,其實這反而會給你減分,因為這會讓面試官判斷你缺乏必要的歸納能力。
最後你的一些與編程有關的社會化活動,如:你在GitHub上的開源項目,在知乎、V2EX中給他人的解答以及你的個人技術博客等等都會給你加分,因為這說明你對所從事的工作有著極大的熱情,並願意在業余時間去學習和提高自己,就像在我之前的 「給職場新人的10點職業建議」 一文中提到的,如果你要成為一個領域的專家,那你必須花費超過10,000小時,而這光靠工作時間是遠遠不夠的。
2. 給面試者10分鍾介紹自己最擅長的
當面試者通過了筆試和HR面試之後,你就需要面對面地對候選人進行面試。我遠不是什麼面試專家,但我有一些自己的獨特方法。我討厭問一些很個人的問題,比如你的職業規劃是什麼?你為什麼想換工作?等等。我更願意給面試者10分鍾時間,讓他介紹自己最擅長和最感興趣的領域。這往往能幫助我很快作出下面的判斷:
這個人對他所做的事情是否充滿激情
他們是否能在團隊中很有效地進行溝通
他們是否在專業領域足夠擅長
你的團隊是否會樂於和這個人一起工作
這一招我在面試中用得很多,而實踐證明也確實非常有效。
3. 基礎打牢了嗎?
一般,有一定規模的公司都會為面試者安排機考或筆試,從而能首先篩掉一批未能通過的面試者。另一些規模較小的或初創公司則會讓面試官直接進行技術面試。其實,我覺得這兩者的差別不大,有經驗的面試官往往能夠通過幾個最簡單的技術問題,判斷出面試者的技術基礎是否牢固,這不是為了證明他有多優秀,而是用來判斷他是否是一名合格的程序員。對於我來說,並不看重機考的成績,因為機試的考題很多能夠在網上得到,特別對於一些外包公司,他們總是能夠通過各種途徑得到考題,從而使得他們推送的外包能夠順利通過筆試。
下面是我經常會問的幾個問題(JAVA):
HashTable與HashMap有什麼區別?
Servlet是線程安全的嗎?
JSP中 @include跟jsp:include的區別
HTTP的response code 403和500分別代表什麼
......
這些問題都很簡單,但一些基礎不牢的程序員往往會在這個時候露餡。當然,根據面試崗位的不同,你還可以有針對性地問一些問題,例如,你需要找一個能寫核心演算法的程序員(比如 銀行的總賬計算,或者保險公司的保費計算),那麼你可以問一些演算法相關的問題。
4. 技術深度夠嗎?
具備牢固的技術基礎,一般就可以滿足項目中普通程序員的要求了,但如果你需要找的是一個資深程序員,那麼你還需要對面試者的技術深度進行考察。我們現在做項目時都會大量使用框架,這能使我們的開發效率和質量都得到提升和保障,但同時也降低了對於程序員開發技能的要求。因此我一般會詢問面試者下面的問題,來考察他對所使用框架的掌握程度。
請你描述一下,在這個項目中,從一個HTTP請求發起,到最終的Response返回,它在你的系統和框架內部是如何流轉的?
這個問題往往能夠判斷出面試者對於相關技術掌握的深度。較初級的開發人員描述的層級往往比較淺,比如使用Spring MVC框架的,只能說到實現一個Controller繼承BaseCommandController(甚至很多開發人員只知道繼承了一個公司內部框架的基類),至於再往下Spring框架是如何進行內部流轉的,就再也說不清楚了。而更資深的開發人員,往往能說出框架內部的實現機制,以及如何調用和處理的。在面試者描述的過程中,你還可以穿插詢問一些比較有深度的問題,比如框架中某個類這樣設計是哪一種設計模式的體現,採用這樣的設計有什麼好處等等。這比讓面試者默寫一個設計模式代碼要有效、自然得多。
除了技術層面上的考察之外,對於資深開發人員,還需要考察他們的設計能力。說到軟體設計,大部分面試者都能熟練地背出面向對象的三個基本特性:繼承、封裝、多態,也能把它們的概念描述清楚。但我一般會問下面的這個問題來考察他們的面向對象設計能力。
請用一段程序代碼描述我們所在的這間房間。
我驚訝地發現至少有一半的面試者都很難准確使用Interface和Class來給房間建模,也有一些人會將最基本的代碼語法或關鍵字寫錯。
5. 選擇適合所在企業文化的人
這一點也曾是我經歷的一個誤區,我總是希望能為團隊招到技術能力最強的人,而忽略了他是否與整個公司和團隊的文化相匹配。這往往會造成,雖然招到了人,但沒過多久就因為理念不同不歡而散的結果,反而給公司帶來了損失。讓我們看看GitHub的負責人是怎麼說的。
我們很嚴肅地看待我們自己關於招聘流程的哲學。我們希望每一個GitHub員工都了解他們所要面對的環境,並保證他們是能夠很好適應的。這包括我們所創造的文化、哲學、計劃、錯誤甚至是晚餐。比起他們的技能是否滿足要求,我們更看重他們的潛力以及是否能夠適應我們的企業文化。
我曾在具有鮮明文化差異的不同公司或團隊工作,看到許多崇尚開放、開源的程序員在一個相對封閉,具有很多流程以及規范限制的公司中很難發揮,最終選擇離開。因此在招聘程序員時,選擇合適的往往比選擇最優秀的更重要。
6. 行為面試法
行為面試法可能是我在整個面試過程中唯一用到的教科書面試方法。一個程序員是否能夠很好地工作,不僅取決於他能否順利地完成開發任務,更重要的是在遇到一些特殊場景或問題時,他能否合理有效地處理和解決。行為面試法能夠幫助我們從面試者描述的過去某一具體事件中,預測未來他在工作中可能的表現。下面便是一個我經常用到的問題。
請談談你在這個項目中遇到的最大困難或挑戰是什麼,你是如何解決的。
從面試者對上面這個問題的回答中,我能夠很好地判斷他是否有較強的獨立解決問題的能力,而我認為這是除技術能力之外,程序員最應具備的能力。
7. 給他們一個虛擬任務
經過上面的這些環節,你可能對面試者的整體情況已經比較滿意,但先別急著下結論。我曾見過能夠順利通過上面所有面試步驟,並且被僱傭的程序員,當他們進入實際工作後卻沒能把事情做好。
在你確定是否錄用他們之前,可以給他們一個虛擬任務。我不是說一個抽象的程序問題,而是指一個真實的,可能就存在於你當前項目中,並且需要在一兩個小時之內完成的一個開發任務。我曾經出過這樣的考題:
寫一個小程序將一個以特定格式(如CSV)存儲的文本文件轉換為XML格式,並存儲為另一個文件。
你可以給他一台已經配置好開發環境以及IDE的電腦,讓他當場編寫代碼。當然如果時間有限,你也可以直接詢問面試者的實現思路,並簡單用偽代碼來描述處理過程。通過這個測試,你能夠看到很多細節,比如面試者是否有良好的編碼習慣,異常處理是否規范,代碼邏輯是否縝密高效,以及他的開發效率是否足夠高。如果面試者給出了非常優秀的解答,那麼你就應該能夠判斷他確實是一個優秀的候選人了,因為我從沒碰到過能夠通過上面的測試,卻在實際工作中無法做好的人。
3. 騰訊的程序員招聘有什麼要求呢
騰訊公司長年招聘程序員,一般要求三年工作經驗,熟悉C++(或者C,Java),能獨立承擔編碼工作。
程序員(英文Programmer)是從事程序開發、程序維護的基層工作人員。一般將程序員分為程序設計人員和程序編碼人員,但兩者的界限並不非常清楚。
職責
1、對項目經理負責,負責軟體項目的詳細設計、編碼和內部測試的組織實施,對小型軟體項目兼任系統分析工作,完成分配項目的實施和技術支持工作。
2、協助項目經理和相關人員同客戶進行溝通,保持良好的客戶關系。
3、參與需求調研、項目可行性分析、技術可行性分析和需求分析。
4、熟悉並熟練掌握交付軟體部開發的軟體項目的相關軟體技術。
5、負責向項目經理及時反饋軟體開發中的情況,並根據實際情況提出改進建議。
6、參與軟體開發和維護過程中重大技術問題的解決,參與軟體首次安裝調試、數據割接、用戶培訓和項目推廣。
4. 在招聘的時候,怎麼獵到最佳員工
想要招聘優秀人才,其實需要提前做好很多准備工作,譬如:一、崗位人才的勝任力分析;二、優質人才的獲取渠道;三、人才面試的方法優化;四、留住優質人才的政策制定
優秀人才招聘不只是在招聘環節,更需要對整個崗位及需求也提前做好相關分析,最後還要有留任的政策和留住人才的優勢,優秀人才來了留不住,招聘也是白做。
人都是趨利的,有能力的人總想掙更多的錢,老闆是很難留住的,所以很多老闆都是年復一年的招新人去培養,等到新人成長起來就會跳槽或者自己出來單干,這一直都是個無解的難題。所以關鍵的地方在於錢的分配,讓員工真正能獲益才行。
5. 如何找到合適的程序員
我原來就是在網路公司工作的做網站銷售方面,所以相對來說也接觸過一些程序員在大公司小公司都待過,對於招聘程序員也有一定的了解下面就來簡單聊一聊這個話題。
會一定美工
一般來說,如果不是很大的公司,用人當然是希望多具備幾項功能,我們原來公司剛剛開的時候招的程序員等於就是和美工合體的,又會做前台,又會做後台,當然要求不能太高。很多客戶本來也沒什麼要求,都是超別人的網站,平面設計,要不然就是模板網站,然後再來做後台。這樣對於小公司來說,可以稍微節省一點,人力開支。
所以說,不管是公司招程序員還是程序員選公司,這個現在都是雙向的。人才走到哪裡都是受到歡迎的,所以我覺得最重要的就是提高自己的能力。
6. 程序員的招聘要求
怎麼說呢,不同的程序員要求是不同的,我們以JAVA程序員為例子:
三個基本要求:
(1)學歷要求:大學本科以上學歷(含本科),專業: 計算機相關專業本科以上;專科以上學歷,計算機及其相關專業,3年以上相關崗位經驗;
(2)工作經驗要求:一年以上java開發工作經驗;B/S項目開發經驗2年以上;3年以上的Java, J2EE, XML等開發經驗,1年以上架構設計經驗(Windows環境);
(3)項目開發要求:具有一定規模的項目開發經驗;
其實這三個要求,可以說,是目前大多數開發類技術崗位上,一定都有的要求。
學歷來說,只是一個敲門磚,我們沒有辦法幫你,你達到基本要求即可,當然,如果你的要求不太合適,可以強調你的技術實力。
沒辦法,這個社會就是這么殘酷,大多數公司,都不想花培養人的成本,都希望用熟手。
但另外一方面說,具有一定的項目開發經驗,工作起點就會高很多,不管是收入,還是發展,你都會站在一個比較有利的位置上。
實際上,大學生也可以通過一定的訓練,積累很多的項目開發經驗,達到工作2-3年程序員的水平,這個我們另文專門再說。
7. 招一個靠譜的java程序員有多難
真實體會,很難。現在雖然Java滿大街,但是很多都是培訓機構學習出來的,填鴨式教育,讓這些學生基礎都很薄弱,然後就強行學習一大堆框架,項目也都是老師幫著做了一大半,把一些關鍵知識點加入到項目中去,一般的學員項目做完後,都一頭霧水。還給他們包裝工作經驗,剛學習出來的就說自己做過2年左右的開發。這樣的人一旦進入工作中,就會發現,效率很低,交給他工作任務,無從下手。當然了,好的Java程序員很多,但是這類人,一般跳槽都很有計劃,一般都是奔著好公司去的。
8. Java程序員,一般招聘都要求些啥
1、代碼能力
代碼能力是基本功,Java語言本身,包括語言的各個方麵包括對並發的理解,對內存使用對理解,對Java運維的理解等等,語言本身外,社區里常用的框架是否可以十分清晰的了解,包括spring,包括他實現的ioc,aop,orm,web機制是否有清楚的認識,有豐富的經驗等等。
2、對常用中間件的理解
畢竟在一個大系統中,各種中間件是是否常見的,緩存中間件,消息中間件,例如
redis、memcache、rmq這些,要理解常用中間件使用場景,使用姿勢(例如redis的常用命令),甚至包括他的一些運維,一旦出了問題,除了專門的運維人員,也需要你參與問題的排查,因為有時候這些中間件出現問題,是不當的使用姿勢引起的。
3、架構、業務落地能力
前面提到了語言本身,各種中間件,如果你有很好的業務抽象能力和架構思維,就可以把一款部門內部產品很好的設計並實施了,這點蠻難的,想必都有過接手現有項目的經歷吧,有時候真恨不得把之前的設計者拿出來批鬥,作為一個設計者,你能否做到當下一個接手它的人會說一句,這個系統設計的真好,穩定又可拓展,理解起來也很容易。
4、溝通協作
畢竟一個部門內部產品,是不可能由一個人完成的,所以需要溝通協作,把設計好的方案,要和2-3個小夥伴一起實施,包括同樣身份的後端人員,前端人員,產品等角色,這個級別的人可能會參與帶2-3個人,例如應屆畢業等,所以你自己對知識的把握,分享精神,leadership都是很好的加分項。
9. 程序員需要什麼學歷
程序員對學歷並沒有必須的要求,大專學歷以上都可以,甚至有一些沒有上大學的人也在做程序員。
程序員的實際工作經驗和積累是企業招聘時尤其關注的,對學歷沒有具體要求,但企業在招聘開發人員時有些根據自身崗位所需有設定一些學歷上的條件。
但是如果大家有意向入行IT行業,就要把精力用到專業能力學習上,畢竟實戰開發能力才是更為關鍵的,如果學歷上也比較出色的話,那麼錦上添花肯定在就業時也會更有利。
(9)如何招到有經驗的程序員擴展閱讀:
程序員的必備技能
1、熟練開發工具
做為一名程序員至少熟練掌握兩到三種開發工具的使用,這是程序員的立身之本,其中C/C++和JAVA是重點推薦的開發工具,C/C++以其高效率和高度的靈活性成為開發工具中的利器,很多系統級的軟體還是用C/C++編寫。
2、需求理解能力
程序員要能正確理解任務單中描述的需求。在這里要明確一點,程序員不僅僅要注意到軟體的功能需求,還應注意軟體的性能需求。
要能正確評估自己的模塊對整個項目中的影響及潛在的威脅,如果有著兩到三年項目經驗的熟練程序員對這一點沒有體會的話,只能說明他或許是認真工作過,但是沒有用心工作。
3、模塊化思維能力
作為一個優秀的程序員,思想不能局限在當前的工作任務裡面,要想想看自己寫的模塊是否可以脫離當前系統存在,通過簡單的封裝在其他系統中或其他模塊中直接使用。
這樣做可以使代碼能重復利用,減少重復的勞動,也能使系統結構越趨合理。模塊化思維能力的提高是一個程序員的技術水平提高的一項重要指標。