以前一篇文章談到國內IT軟件開發人員現狀,其中涉及軟件開發專業化的問題。那麼如何判斷一個公司或企業是不是專業化的公司?公司狀況如何? 下面咱們從兩個方面來討論, 經過分析公司(企業)來決定爲公司是否值得工做,對可能出現狀況進行預測,制定相應計劃對策略。html
1. 企業通常狀況調研:後端
(1)領導者素質和職工素質分析(領導素質是首要考慮的因素)框架
能夠經過訪談作初步瞭解,如具備觀察能力,心理學知識體系分析結果更佳。也能夠說,分析是否是好老闆,跟對人才有發展。與你一塊兒工做的人,將必定程度影響你的將來。oop
(2)企業發展狀況分析(上升,降低)性能
經過媒體或渠道調查,如互聯網,報表等。瞭解公司的發展趨勢,是否支柱產業,潛力產業。測試
(3)企業管理素質分析(管理水平高低,管理智能高低,管理技術強弱,經驗管理仍是科學管理)this
初次訪談可能難了解更多,更好的作法是與公司各層次人員訪談,從不一樣方面瞭解公司管理狀況。留心平日職員工做中細節,流程,企業文化。編碼
(4)企業技術素質分析(設備、技術、工藝、計量、儀器儀表、技術工人、技術人員能級結構等)設計
(5)企業生產條件分析(對生產的適應性,計劃水平,現場管理水平)
(6)企業營銷狀況分析(市場分佈、市場份額、渠道、價格、服務)
(7)企業財務、成本和經濟效益分析
若是是上市公司,能夠查詢該公司的財務報表,經過購務報表來分析財務、成本和經濟效益
(8)企業資源供應分析
(9)企業組織結構分析
先經過訪談作初步瞭解,後可整理出組織結構圖,瞭解組織如何運做的。
2. 企業經營實力分析
(1)產品競爭能力分析(質量、價格、交貨期、商譽、品種等)
(2)技術開發能力分析
利用從研究和實際經驗中得到的現有知識或從外部引進技術,爲生產新的產品、裝置,創建新的工藝和系統而進行實質性的改進工做的能力。
(3)生產能力分析
對於IT行業公司是產品發佈與提供服務能力。
(4)市場營銷能力分析
(5)產品獲利能力分析
咱們能夠將上面14個項目,每一個項目以10分爲最高,打分後加權,最後按權值選出最好一家公司或企業,以作決策參考。因爲篇幅有限並無對各類分析方法作詳細描述,有興趣可參考相關資料。
其次,另外一個方面從IT行業軟件開發領域,一般能夠向公司或企業詢問如下問題,如下也包括對各個問題作了註解:
1. How many developers in this project? Do we need to cooperate with other co-worker?
瞭解這個項目的規模有多大? 以估計在項目你有多大鍛鍊機會,人越多的項目分工越細,你可能只負責其中一模塊,反之人越少的項目,可能分工不明確,你可能同時須要負責多個模塊的前端與後端,鍛鍊機會相對多一些; 第二個問題確認工做環節須要與其它同事溝通?有幾種可能的狀況,一種項目組是有較齊全的文檔,如詳細設計文檔,那麼編碼大部分按照文檔來,溝通交流的機會很是少,實際對全面發展不利。另外一種狀況是沒有文檔,或只有簡單的文檔,或文檔中內容已過時,這時有不少不肯定的問題,你須要頻繁與Team中同事溝通,才能繼續作工做,但這須要花費不少時間在溝通上。
2. What is the most important thing of project? Performance or User Experience?
這個問題取決於回答的人角色,PM與部門經理的關注點是不一樣的。 從側面去了解主管人員對軟件開發關注點,以及重要性。有的公司性能與UX都須要特別重視,還有其它方面。有的公司則沒有一方面重視。
3. Are all components having specification or document?
這個問題以確認是否是全部模塊都有文檔,從側面瞭解這個項目開發過程是否規範,是否專業。有的時候,是擔憂沒有開發文檔,但又得去熟悉一個已經存的模塊。
4. What is software development methodology are you use?
瞭解項目使用軟件開發過程, 迭代或Agile, Scrum, RUP仍是其它的,也是瞭解公司在軟件開發領域是否專業?另外一方面,瞭解項目中現行開發過程是否適應。
5. Have chance re-design or re-develop these components/module?
從側面瞭解公司上層是否開放,有沒有創新與變革的思想。實際如今軟件開發都是基於前面歷史項目基礎上進行開發,不多有徹底從頭至尾開發機會。因此對於系統中已經存在模塊是否能從新開發,也能夠說本身有沒有發揮空間,通常從新軟件設計和開發都比以前的要作得好。若是沒有機會從新開發,那麼就是一直作維護,時間長了,漸漸得也就是沒有激情了。固然這些創新與變革是有風險的。
6. Does your project include a plan to take steps to assure software quality during each stage of software development?
這個問題了解項目有沒有質量管理,QA。從側面瞭解公司或項目組的專業化程度,軟件測試是很是重要過程。有測試計劃,能夠再進一步詢問,細節如何實現,細節也體現專業化程序。那些沒有測試環節的軟件公司能夠說就是至關不專業的!
7. Is this position need to support for 24x7 ?
有不少的所謂開發工做其實是維護工做,當這個工做須要24x7支持時,基本就是維護工做,有的公司叫作開發維護。也須要考慮24x7的工做量與頻率,誰也不想半夜被叫起來去改bug之類的事情。
8 . Do you have the software developed framework/platform?
稍微有一點兒技術積累的公司,一般產品型公司,而且重視研發,會有本身的開發架框。開發框架一般是結合公司自身業務需求構建可重用擴展性組件或框架,它象徵着技術標準,規範,技術能力,框架是知識,經驗的積累。目前國內IT軟件行業現狀是大部分民營中小型公司都沒有,由於這須要一羣人專門作維護,不斷更新與支持,獲得上層支持。
以上是我的工做這些年的總結,但願對您軟件開發職業生涯有所幫助。
做者:Petter Liu
出處:http://www.cnblogs.com/wintersun/
本文版權歸做者和博客園共有,歡迎轉載,但未經做者贊成必須保留此段聲明,且在文章頁面明顯位置給出原文鏈接,不然保留追究法律責任的權利。
該文章也同時發佈在個人獨立博客中-Petter Liu Blog。