如何讓程序員放下手中的刀?

10 評論 15618 瀏覽 21 收藏 12 分鐘

產品經理和程序員似乎是天生的一對死對頭,在面對產品經理不斷更改的需求時,脾氣再好的程序員也會情緒暴走,如何巧妙地避免這種情況的發生呢?

眾所周知,產品經理跟程序員屬于死對頭崗位,程序員跟產品經理因為需求打起來的新聞更是屢見不鮮,甚至還出現過程序員暴力砍人的事件,因此一干產品甚至開玩笑說產品這個行業屬于高危行業,隨時面臨著被砍,被套麻袋,被群毆等各種問題。

雖說沒有到描述的這么可怕,但是在面對不斷更新需求即將爆發的程序,如何讓他們放下手中的刀,確實尤為重要。

這里主要分析的場是面對需求頻繁更改已經處于暴走邊緣的程序員如何安撫的場景。

造成需求不斷更改的原因有很多:

  1. 客戶突然更改的想法并且要求必須實現。
  2. 領導突然又看到了一個app并要求按照此app做出更改。
  3. 之前由于考慮不周后期需要填坑。
  4. 技術之前就沒理解需求,出現了問題需要大改。
  5. ……

面對一改再改的需求,脾氣再好的程序員也會變身暴躁龍,身為產品狗的我們為了需求能盡快落地,先穩住開發是非常重要的。

穩住開發是關鍵

1. 解釋需求更改的原因,該認錯認錯,不是自己的錯也先背著(畢竟產品背鍋俠)。

需要更改一個需求之前,先讓技術知道更改的原因,所有的需求調整都是有理有據,不是靈光一閃。

產品經理作為貫穿整個產品研發周期的責任人,不管產品出現什么問題,首當其沖站出來,能提高團隊的信賴感。

2. 懷柔政策,可以跟技術表現同仇敵愾,一致對外。

這個讓技術產生共情心理,告訴他們我們其實是一個戰線的,讓他們產生一種是自己人的感覺,在后續更好的去說服技術人員進行調整。

3. 肯定技術的能力。

技術是需要認同的,之前工作的心血因為一個調整可能就全部付諸流水了,心理難免要炸。所以一定要先肯定技術的能力,每個技術都是需要夸獎的,適當并且到位的夸獎能降低技術對需求更改的抵觸心理。

4. 調整需求的時候,更多的讓技術參與這個過程,讓他們產生認同感。

我們在確認某個功能需求調整之后,可以先試探的性的跟技術溝通,對于這個功能是否覺得有不合理的地方,是不是應該進行一下調整會更好,讓技術發表自己的意見然后慢慢引導,最終導向我們希望的結果,這個過程技術參與進來,會讓他們產生一種認同感,這個能更好的讓技術接受需求調整這個結果。

一個產品開發的生命周期會收到來自各個相關方的意見反饋,作為產品經理,除了不可抗力的更改因素外,更多的是要考慮產品的完善性,減少因為前期準備不足導致的后期修補性的更改,這些更改會造成人力成本的提高,以及項目團隊的不和諧。

除了不可抗力因素外,產品能把控的就是在產品規劃前期對產品需求的描述,這里會決定開發最終交付的成果是否能達到產品的要求。

我們分析一下產品跟技術對立對需求想法不一致的源頭,兩者所占的角度不同,看問題的點也不一樣,所以我們最常聽到的兩者爭吵的語句就是以下:

雙方都有自己的立足點,看問題的角度不一樣,開始可能是討論,后面就可能演變為爭論。

產品的立點:

  • 產品定位;
  • 需求場景;
  • 用戶體驗;
  • 業務目標。

技術的立點:

  • 功能實現;
  • 開發難易;
  • 后期維護;
  • 改動成本。

前期做好準備

雙方站在自己的領域范圍下,都是有理有據,但是放到一起,產品的開發過程就會舉步維艱,產品要這個功能明天實現,技術考慮這個功能起碼一個星期甚至說這個需求根本不可能實現,要么砍需求要么改需求,產品也不會答應,你來我往,雙方就此展開撕逼。

這里總結了幾點產品經理在前期做好可以減少很多不必要的爭吵經驗。

1. 需求明確,邏輯清晰,思維縝密,不要讓程序猜。

我們在制作產品原型以及編寫PRD文檔的時候,一定要清晰準確的描述需求目的,所有的需求都是從合理的角度出發,有理有據,減少帶個人主觀性的語言描述(比如我覺得,我認為),這樣的描述會給開發留下一種產品沒有從實際出發,所有功能都是拍腦袋想出來的,團隊會存在不信任感,也會給開發留下一種能力不行的印象,會導致后面的需求更難落地。

在對功能做描述的時候,盡可能詳細的考慮到多種場景,減少程序的想象空間,我們想的越多,考慮的越全,程序在開發的過程中才能更貼近我們的原本需求。

比如對一個輸入框做說明,我們要考慮的首先是字符長度邊界、可支持輸入的字符類型(比如手機號碼輸入就是數字型,但是備注輸入就是沒有限制)、是否必填、是否有默認值、是否有提示語、錯誤輸入的狀態提示等常規性的描述。但是還有一些特殊場景,比如輸入文本時,需要自動帶出之前輸入過的字符,支持直接快速選中快速錄入,是否支持粘貼等這些也是要考慮進去的??傊a品前期考慮的越全,程序開發才會更容易,后期也不會因為產品漏了一些場景而產生不要的變更。

2. 尊重并理解技術人員。

調查了一下身邊的程序員,最煩聽到的來自產品的話語:“這個需求很簡單……”榮登榜首,反思一下,主要是因為一部分產品不懂技術,僅通過主觀臆斷就決定開發周期的長短。

舉個例子:需求是去超市買瓶水;技術要考慮的可能就是路程有多遠,走路合適還是需要坐車;一共有幾條路可以到超市;水是只有一種還是有多種;如果有很多人一起買水是需要排隊還是可以多線程…….

所以我們再給出需求之后,可以多聽聽程序的意見,不要通過主觀想法開口就是“這個需求很簡單……”。同時我們也要多學習一點的技術,不懂就問,平時可以多去一些技術論壇逛逛,也是為了避免一個需求評審完,技術報了3天,結果兩小時就做完了這種情況。

3. 小事線上溝通,大事當面溝通,所有的調整都要做好書面記錄。

程序在開發的過程中是需要大量進行思考,所以中途被打斷,可能前面的準備就前功盡棄了,所有沒有什么特別重要的通知的時候,可以通過線上交流,等技術忙完自然會去看。

對于很重要的事情,一定要當面溝通,不要因為害怕沖突就發郵件通知。書面內容每個人在理解的時候很可能產生誤差,最后造成更大的問題。積極主動,加上真誠,和善的態度,是避免沖突的良好開始。

最重要的一點,所有的調整在通知并確定方案后一定要書面記錄,程序每天要接收很多訊息,很多需求我們在溝通后他們不一定會及時去處理,甚至小一點的變動可能會漏掉,所以在溝通清楚后,一定要記錄在便于程序查看的位置,也方便后面測試可以了解。

一般我們可以在原型前增加一頁,專門用來記錄調整的需求,并且對每個調整的頁面后放置快速跳轉鏈接,便于程序快速定位。如下圖:

4. 私下交流,合理套路。

人都是有感情的動物,關系親近也會有利于沖突的減少。很多人喜歡把工作和生活區分對待,但實際上我們的生活大部分時間都在工作,工作中的程序和產品私底下也可能是很好的朋友,了解每個人的工作方式和溝通喜好,更有利于對癥下藥,當對每個程序進行性格的個體分析后,就可以合理套路了。

產品跟程序沒有職屬關系,但是在推動研發按時交付時,就只能靠人格魅力了,平時大家關系很好點點滴滴都看在眼里,程序自然也不想產品為難,能做的就做了,做不完的可能加班也給做了。

產品經理負責產品各項事物的協調和推進,需要有強大的心臟以及很高的情商,多站在對方的角度看待問題,做出正確的判斷,專業素質越強,程序才能越信服,溝通才會更加順暢。

 

本文由 @Vicky 原創發布于人人都是產品經理。未經許可,禁止轉載

題圖來自Unsplash,基于CC0協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. #非技術出身產品經理的技術溝通秘籍#
    15天補齊程序/代碼、前端、后端、數據庫4大模塊基礎技術知識。助你日常溝通更順暢,產品設計不挖坑!
    詳情戳>http://996.pm/7daXE 或咨詢起點學院蘑菇(wx:qdxymg)

    來自廣東 回復
  2. 寫得很不錯,闊以授權轉載么?謝謝! ??

    來自福建 回復
    1. 可以的 標明出處就行

      來自廣東 回復
    2. 好的,謝謝哈!

      來自福建 回復
  3. 哈哈,很有意思

    來自河北 回復
  4. 受用了,產品與程序員其實有共同的目標,就是做一款優秀的產品,通過統一目標拉攏程序員站在同一戰線,多站在對方的立場考慮問題、明確需求、闡述原因,更容易獲得對方的支持

    來自廣東 回復
  5. 沒人格魅力腫么辦 ??

    來自廣東 回復
    1. 怎么會 ,能做產品的情商都不會差 ??

      來自廣東 回復
  6. 感謝作者 受用啦 ??

    來自廣東 回復
    1. ??

      來自廣東 回復