为什么建议程序员培养这种思维?

2024-06-13 21:05:54 浏览数 (2)

不知道大家有没有听说过:面试造火箭,入职拧螺丝?

这实际上说的是一种现象,就是公司在招人的时候,面试要求很高,能力要求比较全面,但实际工作内容却是比较局限的某一部分,要求并不高。

互联网公司在招聘时,通常希望找到能力全面、具有较高潜力的候选人,以应对未来可能的各种挑战。通过招聘时夸大职位的重要性和复杂性,吸引更多高素质的候选人,从而确保招聘到最优秀的员工。然而实际的工作由于团队合作和精细分工,通常只涉及一个较为狭窄的领域。

随着这些年移动端开发领域开发者越来越多,公司的岗位却没有增加那么多,再加上互联网大厂裁员一波接一波,这就导致招聘市场上供需关系更加失衡,这一现象也越来越多。

造成这一现象的原因有很多,对于公司来说,一方面可以招到综合素质更好的人,另一方面,精细的分工可以保证项目的质量和效率。

互联网产品,如大型的互联网平台、服务和应用程序,通常非常复杂。项目管理和性能优化需要将任务专门化,这样可以提高效率和产品质量。 同时,细分任务让每个团队或个人专注于自己的职责,也可以降低错误和提高工作效率。

分工的好处

  1. 提高效率:
    • 专业化运营:高度细分的任务允许员工专注于自己最擅长的领域或技能,从而提高整体工作效率。例如,后端开发、前端开发和UI设计各有专人负责,可以在各自领域精益求精。
    • 流水线式工作流程:分工明确、职责分明的团队能像流水线一样流畅运作,减少摩擦和重复工作。
  2. 优化资源分配:
    • 技能利用最大化:将最合适的人分配到最合适的岗位,可以最大化地利用每个员工的技能和经验,做到人尽其才。
    • 成本控制:通过专门化的分工,公司能更好地控制项目时间和成本,更高效地完成任务。
  3. 项目管理与质量控制:
    • 明确责任:清晰的分工使得每个模块或功能的责任明确,一旦出现问题可以迅速定位并解决。
    • 质量保证:专人负责的模块或任务通过标准化和流程化管理,可以保证质量。

当然,对于我们员工来说,分工的好处还有一个就是业务熟练了以后,效率大大提高,工作就不那么容易饱和,大部分情况下,就有机会摸鱼了,哈哈。

但实际上,这种分工对于作为员工的我们来说并不一定是好事。

分工对个人发展的坏处

  1. 职业发展受限:
    • 缺乏全局观:长期从事单一的、细化的任务,可能会让员工缺乏对整个项目或产品的全局理解和掌控。这会限制他们的职业发展和岗位提升。
    • 技能单一化:专注于一个狭窄领域,可能会使技能变得单一,限制了其它技能的发展。对于互联网公司来说,技术快速更替,员工需要多维度的技能来保持竞争力。
  2. 工作单调与倦怠:
    • 缺乏挑战:重复性和单调的工作容易让员工感到厌倦,降低工作满意度和动机。
    • 创造力受抑:长期从事细分任务,可能会限制员工的创造力和创新能力,使他们难以应用新的思路和方法来解决问题。

这其中,我觉得最重要的影响是限制了我们的视野,也就是导致我们只会做我们的本职工作,其他一概不知。

我们如果是开发,就只会开发,不懂UI设计、不懂产品、甚至不懂测试。对于其他工作岗位也是一样,UI就只会设计,测试就只会测试。

这样会导致一个什么问题呢?就是我们的发展会很局限,没什么可能性!说得更直白一点,就是很可能这辈子就这样了。

扎不扎心,老铁?

那怎么破局呢?我觉得一个关键是我们得自己有产品思维。

那什么是产品思维呢?

产品思维(Product Thinking)是指在开发和设计过程中,始终以产品为中心,关注用户需求、产品体验、商业价值和市场竞争力的一种思维方式。这种思维方式不仅仅限于产品经理,开发者、设计师、市场人员等所有参与产品开发的人员都可以受益于产品思维。

作为移动开发者,除了关注技术问题,平时还要有意识地从整个产品的角度去思考一些问题。

建议大家可以尝试下以下几个方法:

把自己当作普通用户去用心体验自己的产品
  • 自己做的产品,对比竞品,交互上、功能上有没有差距,有没有什么交互感觉更喜欢竞品的,或者觉得自己的产品体验起来不合理不舒服的点
  • 从自己实际使用出发,有没有想增加的功能?
  • 思考一下,为什么产品里面的一些交互要这样设计?比如,App里面为什么这里有引导有动画,那里没有?这种小的点都可以思考。
  • 如果产品是B端的,甚至是服务端开发同学,则可以把自己当作App开发者或者是外面三方使用我们接口的客户开发,来考虑接口方面的易用性、扩展性和综合性能。
把自己当做其他角色去思考,设身处地
  • 站在产品的角度,想想产品经理为什么这么设计?有什么考虑?为什么这里不参考竞品?如果你是产品经理,你有没有别的想法?如果可能的话,可以找产品聊聊,验证下自己的想法
  • 站在测试的角度,多想想他为什么能测到这个场景,我能不能提前想到,提前自测到,甚至在下一次开发完成之后能先自己测试一下。总结看看测试关注的点。
  • 用这种设身处地的思路,去思考其他事。比如改bug的优先级,哪些bug可能产品比较在意,必须要改,哪些可以先放一放;UI和测试方面也是同样的。
多关注自己的竞争对手的产品

这里指的是对应的竞品,比如App,竞品上了什么新功能,新交互,为什么要这么设计,市场反馈怎么样?评分什么的有没有正面反馈。

有没有想过自己设计一款产品?

通过以上几点的反复训练和积累,慢慢就会打开自己的视野,让我们对其他岗位也有一定的了解和学习。而这些方面加上我们自己的技能,就像拼图一样,可以支撑我们走得更远,比如,何不尝试自己设计开发一款产品呢?

总结

产品思维是现代产品开发中一个不可或缺的指导原则。它通过关注用户需求、提升用户体验、确保商业价值和保持市场竞争力,将团队的各项工作统一起来,从而提高产品的成功率和市场影响力。无论是对于开发团队、企业还是最终用户,产品思维都带来了显著的好处和价值。

对于我们个人而言,也是突破自己牢笼的利剑!

码字不易,求转发,求点在看,求关注,感谢!

0 人点赞