0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

程序员必须学会沟通

工程师人生 来源:工程师吴畏 2019-02-28 14:20 次阅读

我们程序员可以从解决的诸多问题中获得自豪感,比如说编写了最节省时间和空间的算法;设计了高度可扩展的架构;巧妙地为函数和变量命名;

创建的应用程序获得了五星级评分,甚至影响了全球许多人的生活。为了获得这种自豪感,我们需要战略性地规划我们的职业生涯,不断提高我们的技术技能。

为了提高我们的技术技能,我们花费大量时间和金钱来学习成为全栈和跨平台人才;每天都会在 Hackerrank 或 Leetcode 中进行 CS 理论和实践的复习;

常常购买有关最佳实践和设计模式的书籍;致力于业余项目以维护自己在 Github 上的活跃度;

通过回答 StackOverflow 上的问题来培养“声誉”——为了提升自己,我们还有很长的路要走。

所有上述这些通常都是以牺牲一个人的软技能为代价的。

软技能是人们在进行自我管理,以及与共事者(例如客户和同事)交往的过程中所使用的技能,包括领导力、情商、说服及倾听的能力、对同伴的激励,以及建立有价值的关系。

而硬技能则是指在解决问题或生产产品时所运用的高度专业化的科学知识。

通常情况下,大家都惯于认为“硬技能”掌握起来相对困难,软技能就简单易学——其实这是一种误解。实际上,如果自己未能意识到这一点并花费大量时间深入思考,软技能其实难以掌握。

沟通,或者说是将想法或信息传达给另一个人的能力,就是这样一种常被忽视的软技能。

和很多年轻的程序员一样,我也曾默认那些被指派直接与我合作的人,应该对技术原理有深刻的理解且无需我再做过多解释。

否则,他们要么不应该在科技行业工作,要么就是白痴。

许多年轻程序员认为正式的文档和流程只是官僚主义的繁文缛节,只会拖缓软件开发的进度,因此不应推行。

在传奇人物的宣传报道中,我们更是多见性格内向且多怪癖的大牛,但膜拜之余我们仍不得不承认他们大多很难合作。

程序员必须学会沟通。

首先,绝大多数编程活动都是在程序员与非程序员交互的组织内部完成的。

通常,我们必须与产品经理沟通,以充实业务需求的技术细节,以便衡量难度,评估可行性,并基于这些因素,优先考虑任务;

我们有时需要向项目经理提供评估并证明其合理性,项目经理则要确保项目符合预算要求并按计划进行;

我们需要与设计人员密切合作,以解决目标环境的局限性,识别用户在交互中缺少的流程,或发现信息设计的问题。

在与扮演这些角色的同事沟通时,我们必须时刻关注用于传达我们想法的词语或语气。

高绩效团队的一个关键因素是团队动力,如果我们在沟通中用了过激的方式而导致冲突,那么团队中就会形成隔阂以至于大家不能高效工作。

有人可能会问,为什么还有这些其他角色存在?

没有什么能阻止程序员直接与客户联络并收集需求;当瀑布模型(Waterfall Model,一种项目开发架构)比 Scrum 更受欢迎时,产品经理或许已成为过去;程序员也可以直接与 CEO 联系并使用纯逻辑来证明产品开发的可行性。

设计师也将逐渐失去存在的价值,任何编码器都可以使用自定义字体、颜色和图标甚至是矢量,而不是JPG。

我们自己能够编写单元测试的情况下,为什么还需要一个专门的测试人员团队?

真正有价值的成功产品是那些在规模不凡且需要多学科专业知识的产品。

因此,好的产品不可能靠谁独自完成。代码本身并不是一种商业行为。事实上,上述角色所涉及的工作内容往往需要花费大量的时间和精力才能完成,特别是在坚持高标准的情况下。

如果程序员以一己之力挑起所有活,那么无疑啥都做不好。即使做了也只会消耗掉原本可能专注于编写代码的时间,这才恰恰是程序员的主要任务。

另外,以这种方式否定同事的作用也是一种傲慢无知且目光短浅的行为。

产品经理为不仅仅基于我们的定位编写业务需求——这只是程序员工作的一部分——他们还通过不断研究客户行为和公司业务领域的趋势来保持产品的价值;

项目经理做的也不仅仅是证明估算的合理性——他们还会计划和调整时间表、预算,同时评估风险并管理资源分配;

设计师除了培养对艺术的良好品味外,还研究了大量心理学、人机交互、甚至神经科学,就是为了将科学发现融入公司的产品中;

测试人员不同于仅仅在开发环境中工作的单元测试,他还需要确保产品在部署到生产环境之后仍然按照预期的方式运行。

他们在消除开发人员偏见,思考“Unhappy paths”,记录错误重现的步骤,系统化测试工作流以及自动模拟用户交互方面(大多数开发人员认为这是一项苦差事)具有无可估量的价值。

程序员若跳出屏幕,外面的世界要大得多。我们应该保持谦虚,因为我们可能没有足够全面的知识来了解与我们角色不同的人的日常工作和责任。

的确,我们不能笼统地称呼那些不敲代码的人为“非技术人员”,因为他们而实际上是他们所擅长领域的技术人员,在他们的领域里我们也不过小白而已。

然而,沟通技巧的重要性或许不仅是因为需要与非编程角色互动,还在于需要与其他程序员进行沟通。

我们经常就一些抽象问题进行辩论,争先恐后地解释为什么这个好,那个棒,这个流程或框架优于另一个,以免我们的观点因带上了个人偏好而被忽视。

很多时候,工程团队都会做出一个架构决策,甚至不是因为它客观上比其他选择更好,而只是因为这个选择更有说服力。

我们也经常讨论并商定工作标准,例如版本控制工作流程和代码风格。我们喜欢互相教授高级编程技术和行业最佳实践。

最终,随着我们晋升到更高的职位,一对一地进行交流,提供反馈和管理冲突的责任变得不可避免。

其他人可能会争辩说,如果仅以“服从命令”为需求来聘请程序员,就不需要沟通技巧。

然而,即使是仅遵循项目开发指令的程序员,仍然需要通过沟通确保不可协商的要求得到充分理解。

即使是实习生和初级软件工程师,如果发现规范中存在错误,或者是在存在歧义的地方提出问题,也应该能够表达出来。

因此,沟通是程序员的核心技能。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序员
    +关注

    关注

    4

    文章

    949

    浏览量

    29759
收藏 人收藏

    评论

    相关推荐

    Linux驱动程序程序员指南

    电子发烧友网站提供《Linux驱动程序程序员指南.pdf》资料免费下载
    发表于 11-22 15:53 0次下载
    Linux驱动<b class='flag-5'>程序</b><b class='flag-5'>程序员</b>指南

    AI编程工具会不会抢程序员饭碗

    AI编程工具可辅助编程,减少手动编码,提升效率,对程序员有积极影响也有挑战。程序员需深化技能、拓宽知识应对。长远看,AI与人类程序员将共生共荣。
    的头像 发表于 11-08 10:17 106次阅读

    第五届长沙·中国1024程序员节开幕

    据官方媒体报道,10月24日;  第五届长沙·中国1024程序员节在湖南湘江新区开幕;本次中国1024程序员节以“智能应用新生态”为主题。设置有岳麓对话、技术英雄会、主题峰会及赛事、展览等活动,一场
    的头像 发表于 10-25 15:42 155次阅读

    京东上万程序员都AI用它!

    对大模型生成代码进行智能修复,为程序员开启代码漏洞修复的“自动驾驶”模式,不但减少人工接入、提高工作效率,更为企业抵御内外部各种攻击构建起一道坚固的安全屏障,确保业务的连续性和稳定性。 JoyCoder是京东云自主研发的一款辅助开发人员
    的头像 发表于 07-17 16:29 223次阅读
    京东上万<b class='flag-5'>程序员</b>都AI用它!

    程序员节视频创意大赛,用串口屏赢取千元大奖

    10月24日,程序员专属的节日里,我们盛大开启“程序员节视频创意大赛”特别活动!这不仅是一场视觉的盛宴,更是智慧与创意的璀璨碰撞。我们诚挚邀请每一位程序员及编程爱好者,拿起你的镜头,记录下那些平凡日子中的不凡瞬间,让编程的魅力与
    的头像 发表于 07-08 10:38 72次阅读
    <b class='flag-5'>程序员</b>节视频创意大赛,用串口屏赢取千元大奖

    程序员节视频创意盛宴,邀您共襄盛举!

    10月24日,程序员专属的节日里,我们盛大开启“程序员节视频创意大赛”特别活动!这不仅是一场视觉的盛宴,更是智慧与创意的璀璨碰撞。我们诚挚邀请每一位程序员及编程爱好者,拿起你的镜头,记录下那些平凡日子中的不凡瞬间,让编程的魅力与
    的头像 发表于 07-04 09:00 67次阅读
    <b class='flag-5'>程序员</b>节视频创意盛宴,邀您共襄盛举!

    助力程序员告别困扰已久的梦魇-Bug

    程序员的噩梦是什么?不用怀疑,就是让你加班到崩溃的Bug!下面是经过业界大佬们“长期加班”积累的小妙招,助力你离早下班又进一步~一、定位Bug范围及性质要有效解决问题,首先要缩小范围,集中关注最近
    的头像 发表于 07-02 08:10 267次阅读
    助力<b class='flag-5'>程序员</b>告别困扰已久的梦魇-Bug

    大模型时代,程序员当下如何应对 AI 的挑战

    随着 AI 技术的飞速发展,特别是大模型的出现,传统的程序员角色正在经历深刻的变革,我们不得不重新对自己进行审视和思考。 通用领域大模型的“泛化能力” 在过去的二十年内,AI 领域的大部分研究
    的头像 发表于 06-28 16:19 502次阅读
    大模型时代,<b class='flag-5'>程序员</b>当下如何应对 AI 的挑战

    阿里云发布首个AI程序员,引领应用开发进入“分钟级”时代

    近日,在备受瞩目的阿里云上海AI峰会上,阿里云向全球开发者们展示了其最新的技术成果——首个“AI程序员”。这款创新应用基于通义大模型构建,具备了令人惊叹的多项技能,包括架构师、开发工程师、测试工程师等,为软件开发行业带来了革命性的变化。
    的头像 发表于 06-24 10:36 618次阅读

    适者生存,程序员最终会流向哪……

    程序员没有永远的护城河!!就目前的互联网大环境来看,it行业已经是……
    的头像 发表于 03-11 17:11 387次阅读
    适者生存,<b class='flag-5'>程序员</b>最终会流向哪……

    薪资高、青春饭,是不是程序员=青楼?

    进入裁员阶段。所以我们程序员要做的只能是与时俱进。 适者生存,程序员亦是如此 顺应时代发展,是我们必须跟紧的。就好比技术更迭我们就要学习更新。而现在我们程序员最好的赛道出路在哪? 目前
    发表于 03-06 21:32

    瑞萨Flash程序员V3 发布说明

    电子发烧友网站提供《瑞萨Flash程序员V3 发布说明.pdf》资料免费下载
    发表于 02-19 09:37 1次下载
    瑞萨Flash<b class='flag-5'>程序员</b>V3 发布说明

    2024程序员的未来方向如何走?还看今朝

    这几年的IT行业想必大家已经感受到了,Android、Java、前端等等程序员都经历了大厂……
    的头像 发表于 02-02 09:45 777次阅读
    2024<b class='flag-5'>程序员</b>的未来方向如何走?还看今朝

    1月18号“纯鸿蒙”千帆启航,程序员预备!

    。 如何正确看待鸿蒙? 我作为程序员来说,首先是看鸿蒙的发展、市场开发岗位、薪资以及前景。 这几年对鸿蒙的发展情况来分析,从2019年开始鸿蒙的出来今天,华为鸿蒙取得了很大的成就。从“不兼容
    发表于 01-16 22:13

    诚邀报名 | GPT驱动的新程序员时代,开发者如何编程?

    2023开放原子开发者大会 . OPENATOM DEVELOPERS CONFERENCE GPT驱动的新程序员时代 我们该如何编程 2023.12.17 生成式AI正以旋风般的速度重塑我们的工作
    的头像 发表于 12-11 22:20 513次阅读