除多年程式設計經驗之外,還有什麼能區分乙個程式設計師是「老手」還是「新手」?程式設計技巧當然是一部分,但它絕非是全部。
聰明的程式設計師可能比他們的同行擁有更出眾的程式設計技巧,但那不足以說明他們就是「老手」。同樣,僅僅因為擁有10年程式設計經驗也並不意味著他們就是高手。在工作崗位上,擁有多年程式設計經驗也不能說明問題。即便沒被炒魷魚,那也不能提公升你的價值。
下面列舉的事情是大多數高階程式設計師都會做的。1.至少掌握一門程式語言我相信有些優秀的程式設計師只懂(並精通)一門程式語言,但在某種程度上而言,這其實會限制乙個人的思維。就像當你手拿一把錘子時,任何東西看起來都像釘子。我認為,知道並成功使用至少一門程式語言,這是程式設計師從新手走向老手的重要一步。我要說的是,像j**ascript和sql這樣的輔助程式語言,只有當你確實已經開發了完整的應用程式,並在其中使用這些程式語言時,它們才有價值。2.工作之餘也經常程式設計注:misv即microisv,是乙個只有一名員工組成的軟體公司,是一種微型公司。
3.經歷完整的軟體開發過程,從概念設計到產品實現,再到產品維護
有的程式設計師希望不用自己動手就可以得到詳細的設計說明,然後把缺陷**交給測試/維護小組,這是平庸程式設計師的乙個縮影。任何稱職的程式設計師都會跟客戶密切合作,去制定需求分析,然後編碼實現,當然也要維護。如果你在編碼實現階段偷懶了,那你在維護階段不得不付出代價。4.不斷創新創新就是做一些你身邊的人沒有做過的事情,用來改善你的過程或產品。你不一定非得是世界上第乙個做這件事的人,只要發現乙個問題,找到解決方法然後實現它就行。5.編寫的軟體能解決實際問題有一副虛構的場景:一名黑客,僅僅是出於對技術以及自己所做事情的愛,一天到晚都在編寫**。但這幾乎無助於成就一名優秀的開發者。事實上,我曾見過有些開發人員和客戶爭論,來採用更好但不太有助客戶的技術。這會適得其反。你可以利用自己的時間來完善。但涉及工作時,你最好還是編寫能實際改進並解決問題的**,而不是使用那些不同尋常的演算法或介面。
面試如何鑑別程式設計師是資深還是初級?
最近看到一張挺搞笑的圖,把程式設計師等級非常 明確 劃分了 之前也看過調侃程式設計師髮量的段子 初級烏黑亮麗,中級一敗塗地,高階鋥光瓦亮。當然,這張圖也就呵呵一笑,從某種角度上來說代表了目前程式設計師加班與焦慮的不同程度吧。真實情況沒這麼誇張,到專家級別估計也都是在猝死的邊緣試探了.但話說回來,如何...
招聘乙個程式設計師
招聘乙個程式設計師,唯一對你有意義的是他能寫出好程式的能力。很少人像這樣去招人,他們更喜歡去挑剔程式設計師的個人癖好和性格缺點。你不如這樣說更合適 找不到那種技術上又好 又能適應企業文化的人,我就等著,一直找到為止。我們很少有敢這樣奢侈的公司,也許google可以這樣,就是google這樣的公司也一...
如何做好乙個程式設計師
不知不覺做軟體已經做了十年,有成功的喜悅,也有失敗的痛苦,但總不敢稱自己是高手,因為和我心目中真正的高手們比起來,還差的太遠。世界上並沒有成為高手的捷徑,但一些基本原則是可以遵循的。1.紮實的基礎。資料結構 離散數學 編譯原理,這些是所有電腦科學的基礎,如果不掌握他們,很難寫出高水平的程式。據我的觀...