如何強硬而又友好的與產品經理溝通?

人物背景:剛畢業的前端新人(我)、入職很久的產品(他)
故事背景:開始開發時只給了簡單的jpg圖片標註說明(算是文檔吧)和psd的設計稿。隨著項目的進展,不斷的增加原來文檔上沒有寫明的功能,就算明天上線了,今晚還增加了兩個功能點,我改的不勝其煩。
現狀:今天在項目群里抱怨了一句「這些最好一開始在文檔里標明」,卻被回復「怪我沒有在文檔連標點符號都給你們標清」。想要反駁,可是對方資歷比我高。可是乖乖把功能點加上,又覺得很窩囊,而且萬一以後他還這樣的話,真的很煩。所以我想問怎麼樣能強硬起來,讓他認識到在開發前給出邏輯完整的需求文檔對大家都好,但又不會顯得很不友好?


身在互聯網公司,自然能接觸到很多程序員。這個職業節奏快、需求多、任務繁重,不過絕大多數程序員都很專業,平時都會很配合。

有一次我突發奇想,跟幾個程序員聊如果遇到實在不靠譜的需求,他們都有什麼溝通方面的心得,甚至是怎麼拒絕的。幾位老司機就給我講了些辦法,那今天就分享出來吧。

程序員跟產品經理的溝通一直是一個問題,正常情況下的流程協作等溝通事宜我就不說了,這裡著重講一下程序員如何面對甚至拒絕產品經理提出的不合理需求。

首先問大家一個思考題:

程序員A和產品經理B在一家互聯網公司的同一項目小組工作,為了推出用戶體驗更佳的產品優化版本,B向A提出需求。已知該需求並不合理,然產品經理B相當強勢,問A應如何拒絕?


A. 陳述理由,直接拒絕

B. 以子之矛攻子之盾,讓產品經理推翻自己

C. 尋求援助,找更具影響力的人說服

D. 被迫接受

程序員由於崗位職責所限,往往在工作中陷於被動,他們在面對產品經理時,有時並沒有充分的話語權。


越來越多的公司開始重視產品和技術團隊的和諧。大多數公司的絕大部分產品經理,正逐漸改進提需求的方法。但需要注意的是,需求不合理導致程序員技術資源浪費的情況仍是行業普遍現象。


勤勉而又被動的程序員,如何合理地拒絕產品經理的不正當需求?


帶著這個問題,我採訪了一家知名互聯網公司的技術大牛Blake。現年三十多歲的他出任CTO一職,在技術與產品的良好協作方面擁有自己的心得。Blake指出,每一種選項都沒有錯,選擇哪個,要根據具體情況具體分析,但首先要確定該需求確實不能做


他認為,以下幾種情況,程序員可以合理駁回需求:


1、根本不可能實現的需求:

Jason是某互聯網公司的一位研發人員,他的產品經理想讓系統在圖像識別等功能上達到良好的準確率,幫助用戶更好地使用產品,達到理想的效果。


在實際工作中,程序員有時會遇到一些技術水平難以實現的需求,比如圖形處理等。實際上,此類需求在一些頂級互聯網公司也無法做到最好。對於不以技術見長的公司,可以說根本不可能實現。


這個時候,程序員可以順理成章地拒絕。

2、邏輯不通的需求:

產品經理:A→B→C

實際情況:A→B→D


在日常工作中,產品經理時常會預設用戶使用行為,根據想當然的邏輯提出產品改進建議。但這種預設行為有可能存在邏輯不通的情況,或者即便邏輯成立,用戶在使用中發生此種行為的概率卻不高。這個時候,程序員可以提出質疑。

3、實現起來特別麻煩的需求:

由於迭代時間的要求,產品經理時常會規定實現需求的時間。但某些需求在解決過程中非常細碎而麻煩,即便技術水平可以實現,佔用的時間也遠超預期。


這種情況下,如果不是特別重要,程序員可以進行商議。

4、投入產出比不划算的需求:

Lucy是一家互聯網公司的測試人員。今年8月的一天中午,為了配合正在進行的活動,產品經理臨時提出一項H5需求。公司迅速投入產品、研發、測試人員協同工作,並於晚上11點上線了正式版的H5,但這款H5僅傳播一個小時就於當晚零點下線。後來,大家認識到這個決定浪費了過多精力和資源。


技術人員在面對產品經理的需求時,要考慮開發需求的優先順序順序,同時注意需求是否划算和必要。如果性價比過低,可以考慮不做。


如果產品經理提出的需求確實屬於不靠譜的行列,程序員可以採用以下方法應對:


1、明確指出問題

每一項需求都要經得住推敲。產品經理難免會出現思考不充分或存在疏漏的情況,這個時候,程序員要直接明確地指出存在的問題,敦促產品經理重新進行梳理。


2、強化職場溝通的能力

每一類職業都會影響從業人員的性格。由於職業特點,程序員對於技術任務的專註往往會淡化他們在職場上與人打交道的能力,比起產品經理,存在更多的被動性。因此,程序員應主動培養職場溝通的能力,以便在工作中更好地轉達自己的態度和觀點。


3、引入外援,一起討論

在實際工作中,往往會出現程序員和產品經理談不攏的情況。此種情境發生時,如果實在無法說服對方,可以多找幾個人一塊討論,客觀層面上將道理越辯越明,從而消除產品經理的不理解,達到自己的目的。

4、尋求leader的支持

通常情況下,大多數產品需求不僅來自產品經理,更源於公司領導的構想。但一些想法在研發人員眼中卻存在明顯的問題。這種情況下,如果遇上強勢的產品經理,或是公司領導的意願,程序員的意見將可能不被重視。此時,程序員可以向上級leader尋求幫助,獲得支持。


5、熟悉產品經理的特點

程序員與產品經理處在不同的崗位,擁有不同的訴求,但擁有同一個目標,即做出好的產品。因此,程序員需要認識產品經理這個人,了解他做事的方式、喜好,本身的優缺點。在此基礎上,遇到分歧時可以更快地明白癥結,通過合適而有效的方式說服產品經理。


6、決定要做的,也要想出切實可行的辦法

一項功能是否真的需要開發,有時候會有很多決定因素。最終仍然決定要做的工作,程序員應想出切實可行的辦法。如若沒有實現的路徑,只能給出做不了的解釋。


7、敢於拍板,為拒絕需求承擔責任

Jack是一家公司的資深程序員,在幾年的工作中,他逐漸培養出自信果敢的一面,面對不合理的需求會給出明確的理由,並表示為自己的判斷和決定負責。


他認為,專業的程序員,應當做到為自己的職場行為負責,只有這樣,才能在與產品經理的博弈中擁有底氣。


8、必殺技:為產品經理設計邏輯陷阱

Arvin是某互聯網公司的工程組長,面對不靠譜的需求,他最擅長的手法是,在與產品經理對接的過程中,利用自身邏輯思維能力強的優勢,引導其掉入需求中存在的邏輯陷阱,無法自拔,從而主動放棄,推翻之前的需求。


此項必殺技,是他與產品經理鬥智斗勇的心得。但這項必殺技的使用前提是,確實是從技術角度不能支持的想法。(當然,遇到段位較高的產品經理,就不一定管用啦。)

在任何一家互聯網公司,優秀的產品都需要程序員和產品經理的共同協作。產品經理的工作不僅需要程序員的配合,有時更需要技術人員的匡正。與全盤接受相比,偶爾的拒絕也有其價值。只有在這樣的層面下,產品和技術,才能為實現真正好的功能做出貢獻。

本文為原創,鏈接:程序員如何拒絕產品經理?

注意:程序和產品有時會發生分歧,但絕不能上升到矛盾。我們從來不鼓吹對立,產品經理有提需求的智慧,程序員在面對確實不合理的需求時也要用以理服人的方式去回應。接受或爭議,都是為了更好地服務於一家公司的發展。這篇小文,權當參考,不要多想。


不在於溝通技巧,再委婉友好也沒用,矛盾來源於誤解,你不明白產品經理在做什麼他不明白你在做什麼。所以你應該學習產品經理這個職位所涉及的知識,尤其是和你的職位所銜接的部分。

如果每個人總是把自己的職責劃分的過於明確,反而會在銜接處留下空白,這個空白簡直就是楚河漢界,你爭我奪,自然會有無法友好溝通的矛盾。


怪你們一開始的時候沒有把case想全。
兩個人都有責任。
下次注意點


他給你改需求,
你不會給他延期?


不做能怎樣....


我覺得你和我一樣,在職場是一個新人,真的需求有理解不一樣的話,最圓滑的解決辦法是把問題拋出來給大家知道,然後就主要說明解決方法和耗時,吃點苦扛下來。然後給自己的組員或是leader提一下這件事情,不過前提是自己已經把東西弄好了。


剛畢業的前端新人(我)、入職很久的產品(他)——新人負責聽就可以了,強硬個P......
等你做了十年,就可以強硬的和剛入職的產品新人溝通了~
這行說到底還是拼資歷的謝謝,沒經驗的時候要低調。。。。。


明天上線,今天還在做功能點。
你們留給測試的時間呢?


上班帶把刀,砍不了需求就砍改需求的人


教你個狠招,前提是你願意這麼做。
把所有他可能想到的功能點都提供給他,並且cc給所有人看。
讓他自己選擇後,你加到說明上。期間還能和他在群里「虛心的」討論一下。

這麼做的好處是:
1.大家會覺得你是智囊,或者覺得你真的愛這個產品/公司。
2,間接削弱產品經理的專業權威。
3.減少來去修改次數。
4.做一行精一行,你更多的參與了完整的開發,除了有點累完全沒有弊端。

另,注意措辭要謙虛,我們爭取以理服人。
偷師之餘,可能你們兩也會不打不相識呢。


告訴大家一個行內每個人都知道的秘密,超強溝通能力是產品經理必備的素質。為什麼這樣說呢?我想你們都發現無論在網上還是線下沙龍,行內大神們都是這樣說的。但我就好奇,什麼工作是不需要溝通能力的呢?為什麼他們都喜歡強調這一點呢?畢生是這樣認為的,產品經理的確需要溝通能力,這個是必須的,但無需過分神話這種技能,在工作中與人交流,工作順利開展做好就不錯了。

其實這個要求也是不低的,因為日常工作中產品經理需要統籌很多東西,接觸的雜事也比較多,接觸的人自然多,所以說的話能讓別人快速明白是很重要的,這就要求我們見程序員講程序話,見設計師說設計話。舉個栗子,和開發人員溝通時要站在實現的角度去思考,而不是設計角度,在他們眼中看到的是如何實現功能,要順著他們的思路去講述需求,這樣做有效降低將來修改需求的可能性。

再舉個栗子,面對運營部門的同事,他們希望聽到的是這個功能能帶來多少的KPI,帶來多大的用戶量,溝通時需要強化這方面的話術,這樣他們就能迅速明白這個功能的意義。

有人說:溝通能力強不能說是撕逼小能手吧?的確不能這樣說,那我為什麼要說產品經理是撕逼小能手呢?因為我覺得產品經理最重要的素質是有能力去平衡各方利益,把大家的利益統一到一個發力點上為產品服務。人是自私的動物,在經濟學經典著作《國富論》提到,自私是生產力提升的原動力,站在自己角度說話是與生俱來的本領,我們不能否認這一點,我們需要肯定它的作用,但我們需要引導這股力量,在全公司的利益點集中在一起,為一個目標服務,所以在溝通的時候保持一個原則就是把大家的利益點放在一起,這樣會事半功倍。舉個栗子,在開發產品的過程中不是經常會加需求或者改需求的情況嗎?開發人員就會說沒錯啊?為什麼要改?(潛台詞:不是我的錯,是你們設計不好導致的,你一改我又要重新寫,然後項目時間又沒有增多,就是我要加班啦?)這時候如果你說,老闆說要改的,你以為我想改啊?那你改不改?最終開發人員也被迫要改,這是真撕逼,就算撕贏了大家都是輸的。那試著從對方利益去溝通,你可以說這樣的改動為減低日後的開發難度。

撕逼輸贏不重要,利益在一起很重要。


如果需要與我討論和合作的話,可以掃一掃下面的二維碼。


所有更改和新增的需求讓他跟你的上司去談,然後發書面的東西出來,並附帶工期延長說明


謝邀,新人不知道如何溝通的話,建議看一下之前的開發是如何和產品溝通,畢竟他們合作久了,知道彼此的玩法
新人的話最明顯的問題就是不知道如何拒絕,以及不知道哪些可以拒絕哪些不可以拒絕,甚至不知道還可以拒絕.
畢竟你不都做一遍,跳一遍坑,也不知道怎麼玩,所以坑是免不了的,關鍵日後如何越來越好

給你的建議就是要明確你的資源有限,在有限的資源內你是盡心儘力在做好手頭的事情.所以碰需求的時候對產品要提要求,什麼樣的文檔是必須的,如果倫家不鳥你,那麼作為新人,還是建議你問下自己頭兒怎麼辦比較合適,他應該清楚如何去提要求以及拒絕掉,直接對著來一是傷了和氣,二你也不是一個段位,

做不了的事情不要接,接下來的事情一定要做好


需求變更是很合理的,甚至一天一變我也沒脾氣,用戶體驗優先嘛。

你的要求也是很合理的,你的任務裡面有一部分就是要跟產品經理談判工期,需求變了工期當然要延長了。

我覺得如果你只說了一句最好事先說明,對方就敢嗆回來說標點符號的話,這是他擺明了胡攪蠻纏,如果我心情好就不計較,心情不好時我都是直接跟他,說這辣雞需求你一開始就沒有考慮到,產品經理你說這是誰的責任,大聲告訴我,你是ju嗎???

畢竟就分工來說,他對需求負責,而你對代碼負責,技術上又沒出大簍子,需求沒搞好,怎麼也怪不到技術頭上吧?你一封郵件抄給老闆,需求變更記錄全部發過去,分分鐘讓他吃不了兜著走。

不過我還是比較有預見性的,通常一開始需求評審的時候,就一二三四點顧慮先拋出來,五六七八條風險跟產品經理說清楚。

如果有哪些我沒考慮到而後面做的時候又出現大坑的話,照理來說我應該背鍋吧?不對!我通常都是怒吼產品,艹這bug 你都沒考慮到?快給我跪下認錯!


推薦閱讀:

前端程序員會不會被淘汰?
有誰能詳細講一下css如何畫出一個三角形?怎麼想都想不懂?
頁面中使用微軟雅黑會有版權問題么?

TAG:前端開發 | 生活 | 程序員 | 情商 | 工作 |