从软件工程师的角度
Photo by Shane Rounce on Unsplash
我认为大学中最大的问题之一(是我的意思之一)是,当您学习工程学时,他们不会教您作为工程师的工作不是解决技术问题,解决类型问题或架构师系统 。
作为工程师,您的工作是为利益相关者创造价值-这是一种非常粗俗的方式,可以说您构建了人们想要并愿意付费使用的东西。
但是您和我没有进入这个领域,因为我们喜欢产品。 我们喜欢编写代码。 我的意思是,当人们使用我们的东西时,我们会喜欢它。 赞美是很好的,客户赞赏也是。 但是,归根结底,我们大部分时间都花在编写代码上,我们喜欢这样。
A chill PM telling you what to do. Photo by Austin Distel on Unsplash.
因此,当产品经理(PM)出现并告诉您需要删除您正在从事的项目并转到其他项目时,这可能会非常令人沮丧。
像我这样的年轻,自信的程序员可能会后悔:”此功能几乎完成了。 我们只需要一个星期!” 知道该死的时间会更长。
但是您的项目经理(或决定您建造项目的人)是严厉的。 他们说:”这是您需要构建的功能。”
“啊! 我在使用该功能方面表现不错。 我当时正在快速开发事物,现在我已经重建了整个环境并从头开始。”
-我,一个心怀不满的程序员(一个失去了更大视野的程序员)
现在,我想保留我的工作,所以我要努力去做我应该做的工作。 但是我对我的PM并不是很满意。
错了, 这就是团队崩溃的方式。 这就是不良产品的制造方式。
还记得我说过开发人员的工作是开发人们想要使用的产品吗? 好产品? 好吧,如果您不满意并且感到被产品团队推销,那么您就不会生产出优质的产品。
鲍伯叔叔对此有很好的报价:
“开发人员很容易彼此识别。 与您的雇主形成一种与我们和他们相对的态度很容易。 专业人士不惜一切代价避免这种情况。”
-罗伯特·马丁(Robert C. Martin),”清洁编码员”
真正的专业人士不会对雇主怀恨在心。
您必须记住,您的PM要求您切换工作范围,因为他们认为这是当时最重要的事情。
他们承受着来自客户,财务人员,其他经理,高层人士等的压力,所有这些都迫使他们做出这些决定。 这是你的工作。 此外,这是鲍伯叔叔的另一句名言:
“您的雇主的问题就是您的问题。 您需要了解这些问题是什么,并努力寻求最佳解决方案。 在开发系统时,您需要置身于雇主的立场,并确保所开发的功能确实能够满足您雇主的需求。”
-罗伯特·马丁(Robert C. Martin),”清洁编码员”
当您满足雇主的需求(即产品经理的需求)时,您就会满足每个人的需求。
请记住,如果没有产品,那么您一开始就不需要任何工作。 如果您的产品很差,没有人会使用它,没有人会付费以开发它,那么您就失业了。
但这并不意味着您必须像狗一样躺下或盲目下订单。 再说一次,您的工作就是打造出色的产品,如果您不相信自己所打造的产品是很棒的,那么您的工作就是退后一步。
当我说后退时,我的意思是,以客观和合理的方式接近您的PM。 带着理解的态度来到桌子上,这样你们就可以在同一页上了解最重要的内容是什么。 在就每个人的来历进行了交谈之后,您就可以轻松跳上脚步,打造出出色的产品。
有时您可能是对的。 作为开发人员,您对与其他产品不同的产品有深刻的了解。 您可能没有人想到过大脑中的用例。 提出来! 在与您相同的页面上找到利益相关者。 提出事实,并合理地辩护你。
通过这种方式,您可以培养一种文化,在这种文化中,创意会赢得胜利,而不是自负。 这就是我们尽可能地放弃软件政治的方式。
这就是您打造最佳产品的方式。 这就是我说每个人都是产品经理时的意思。 即使是作为开发人员,我们也非常关注微小的技术细节,并且每年都必须学习一种新的语言,我们也必须专注于打造出色的产品。 没有产品,我们什么都没有。