程序員,在做硬件起家的公司上班,多半會“累死”!
先說下我的經歷,我之前在一家專門給一些事業單位提供設備的公司上班,而設備需要有後臺監控系統,我所在的部門就是這家公司的軟件部。
首先,在這家公司做軟件開發非常憋屈,因爲設備的軟件費用一般只佔合同費用的10%甚至更低,比如說我曾經負責的一個1000萬的項目,在合同裡,軟件費用只佔到了30萬,基本上就等於白送!
這看似很好理解哦,因爲這種項目,能夠讓客戶切切實實感受到的,能摸到的,那就是設備了,所以設備價格報高點,其實也算正常。
但是,客戶這麼想可以,可我們公司的硬件部門也這麼想,他們因此覺得軟件部門是可有可無的,所以他們總是高高在上,對軟件部的人也是愛答不理的。
如果只是硬件部門這麼想也就算了,關鍵是老闆也這麼想!一些項目驗收以後,老闆有時候爲了激勵大家,往往會發一些獎金什麼的,但是,硬件部門的獎金往往就比軟件部門的多很多,甚至軟件部門有時候因爲“拖後腿”,反而沒有獎金!
有人就好奇了,爲什麼軟件部門會拖項目的後腿呢?
道理其實很簡單,那就是在硬件沒有確定之前,軟件的很多功能根本沒法寫,而導致硬件沒確定的原因有很多,一方面,硬件選型需要時間,另一方面,中途換硬件也是常事。
不光如此,有時候怎麼跟硬件通訊,通訊的整體邏輯是怎麼樣的,都需要等硬件部門確定下來以後纔可以寫。
但是,和硬件不一樣的是,硬件部門不管前期選型有多慢,最後時間不夠了,大家一擁而上,花個幾天把硬件組裝起來就可以了,然後剩下的事情就交給軟件部門去完成了。
所以,基於此,軟件部門往往在硬件組裝完的最後關頭才得以驗證之前規劃的系統架構對不對,即使對,後面還有一大堆只有在硬件組裝好以後纔可以寫的功能需要完善,而此時,往往留給軟件部門的時間就不多了!
所以,您覺得在這種情況下,軟件部門的效率能提高起來嗎?
就老闆這種心理,你項目按時完成了,他覺得你應該的,項目完成不了,不扣你績效就不錯了!對了,中間還出現過要把工資的一部分拿出來當績效的事情,最後還是軟件部門一個比較資深的程序員以離職相逼,最後老闆纔沒得逞。
當時我們公司有一個在公司裡幹了四年多的老員工私下裡跟我說,他四年來,一分工資都沒漲!
我朋友的遭遇和我大致相同,老闆也是做硬件出身,以前基本上軟件部分都是外包出去的,但是近幾年客戶軟件部分的訂單需求多了,所以公司就成立了軟件研發部門。
雖然成立了軟件研發部門,但是老闆根本不放權,軟件研發部門也沒有什麼主管,基本上都是老闆親自安排任務,這可就苦了這幫研發部門的程序員了,這其中當然就包括我朋友。
我朋友跟我說,他們老闆有個習慣,就是以前做硬件項目的時候,時間不夠了,就湊人頭,只要硬件選型一做完,就安排一幫人上去敲敲打打,把硬件給組裝完,這種做事風格,他自然也用在了軟件部門上。
但是,前面說了,很多事情硬件選型沒確定前,代碼根本沒法寫,於是就經常遇到一種情況,就是做硬件的人烏央烏央把設備組裝完以後,軟件才能上手去寫代碼和測試,這樣時間明顯不夠,有時候時間急,設備隔天就要搬到客戶廠裡去了,軟件纔剛開工。
這時候,老闆也不急,他覺得,只要設備進了廠,後面的事情就簡單了,最多就在工廠裡寫代碼和調試嘛,但是,這就讓軟件部門非常難受。
客戶的生產車間是無塵化的,需要穿無塵服帶手套,本身帶着手套敲代碼就非常難受,可工廠還不能聯網,用電還要走審批。
一方面,不能聯網,寫代碼的時候難免需要查資料,根本就行不通,另外,進入工廠只能帶筆記本電腦,筆記本電腦掉電又快,所以每隔一段時間又要出來充電。
就這樣,本來在公司內一兩個小時就能幹完的活,在工廠內得幹一天!
其實,這樣也就算了,但是,老闆還是拋不掉時間不夠就湊人頭的做事風格,有時候評估一個項目需要完成的時間,比如說軟件部門報一個月,老闆直接對半砍,說時間不夠,就多幾個人一起寫!
這種湊人頭的想法在硬件那或許好使,但是在軟件這裡根本就不好使,因爲軟件不像硬件那樣,接個電,一就是一,二就是二,寫代碼湊人頭的確能節省一定的時間,但是一個人兩天能幹完的活,不是說給兩個人,時間就能縮短到一天的。
所以,我朋友所在的公司,軟件開發部門閒得時候特閒,忙的時候特忙,而且每次都是忙不過來的那種。
這還沒完,有時候老闆還讓軟件部門幫忙做硬件選型,理由是硬件既然是軟件對接的,那麼軟件就應該懂怎麼選硬件,甚至有的時候像一些設備的線路,還要讓軟件來接,朋友笑着感嘆道:“這誰會啊!”,但是,老闆覺得接線這麼簡單的活,不會就過分了!
針對我的經歷和朋友的經歷,最後我們總結出一個道理,那就是,如果一個公司的老闆是做硬件出身的,或者管理者是做硬件出身的,除非這家公司的老闆善於傾聽,能夠聽取軟件部門的意見,否則這樣的公司儘量別去,因爲寫軟件的和搞硬件的思維不一樣,很容易產生代溝。
本身這種代溝如果不影響工作和未來的發展那就罷了,但是經過我和朋友的經歷,我覺得這種代溝已經嚴重影響了工作和個人發展!