一個程序員除了代碼還要注意點啥

自從業以來有時會經常發現,在程序員的日常工作中.難點根本不是在於技術難題. 或者說着重與技術難題.
最近我有幸聆聽了鄭曄大佬的 <十倍程序員工作法>, 在反思自己在平時工作時的不足點至於, 也在暗暗震驚與國內開發團隊在整體開發流程上與國外開發者的差距

那麼難點從哪來?
1): 溝通.
說到溝通這是一個老生常談的話題了,業務人員 或是產品經理與程序員之間的梗也由來已久,面對此我能做的只有 放緩語氣,抓住問題點, 一個一個來.首先抓住他人的問題點,(如果有時間可以加以總結), 然後按照你的思路把解決方案說出來,直到業務人員同意或否定,否定之後就要討論爲什麼,. 在討論爲什麼的時候,可以換一種思路從當前問題是否有必要花費如此大的精力去解決,以及當前問題對客戶的重要性來入手.
就一般而言的推薦的是將一個問題解決完之後在進行下一個,但是如果此問題要被擱置,那麼請在擱置前 弄清楚
1) 當前問題是否有必要花費當前精力投入進去
2) 當前的問題解決之後,可以預見的收益有多少
3) 當前的問題如果不解決是否在可承受範圍之內
ps:
在面對業務人員的時候,儘量不要以技術實現的難點來反駁他們的觀點,除非當前的技術難點足以上你的上級領導或是更上級的領導認同你的觀點.
其實在開發人員與業務交流的時候常常會有一種雞同鴨講 的感覺,這也是因爲 程序員滿腦子全是實現的技術細節,以及對業務的陌生.和當前的開發思路並未轉換過來, 我初始的時候也會經常帶着開發的思維去與業務談論需求,但是最後發現效果不大,除非業務人員是技術出身. 所以要麼程序員具備業務思維, 要麼業務人員具備技術思維, 因爲這樣的人少之又少,所以這也就是爲什麼經常要有項目經理,or 產品經理的緣故了, 他們的作用就是爲了封裝業務的複雜度將其做一層編譯功能交於程序員,由程序員實現,
然而有些公司的產品經理or項目經理的級別過高,此時就有了各大項目組中的負責人俗稱組長.
在有時就算有了項目經理和組長也不一定能完全屏蔽掉業務人員,業務攻擊.所以此時你只能與業務人員進行交涉.此時要麼你具備業務思維,要麼業務具備技術思維,但是我還是傾向於自己具備業務思維,畢竟你不可能把選擇權交給他人,
其實我個人對於與程序員是否要關注業務這一方面是持有贊成態度的. 因爲作爲一個程序員, 在工作中會遇上很多非開發者本職的工作,但是隻要它數據軟件開發流程中的一環,那麼我就會樂於接受.
畢竟,君不見業務,軟件開發生命週期等事務 一般都是你現在的上級解決掉的麼
2) 非本職工作
每當一提起開發者的本質工作的時候, 你首先會想到什麼?
如果作爲一個前端開發者,無疑是 前端頁面展示,與css樣式等.
如果作爲一個後臺開發者 無疑是 後臺業務邏輯實現,與編碼完成
都有個共同點,那就是編碼,頂多在加個單元測試, 因爲我一開始也是如此想法.
但是工作之後卻發現了整個軟件維護的生命週期, 包括 新需求的提出與評估需求是否可以進入開發,以及當前系統是否能滿足業務需求,更重要的是 是否必須進入開發階段,只要是開發, 無論多麼順暢的流程, 都必然是極重的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章