V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
p7534a
V2EX  ›  程序员

随着行业发展,软件开发作为一种职业,对个人来说是不是已经变成很差的选择了?

  •  
  •   p7534a · 232 天前 · 1704 次点击
    这是一个创建于 232 天前的主题,其中的信息可能已经有所发展或是发生改变。

    《人月神话》一书中对软件工程师这一职业乐趣和苦恼的概括:

    职业的乐趣

    创造的乐趣与成就感

    - 创造的东西于他人有用,能对世界产生影响 
    - 将各种部件精密组合在一起,本身就有意思 
    

    持续学习:

    • 快速反馈,易于打磨,修改,立刻生效。纯粹的思考成果,立刻转化成产品(对比一下重资产的行业)

    职业的苦恼

    - 计算机语言的完美主义严格倾向
    - 权力和责任不匹配: 目标由他人设定,信息由他人提供,执行靠自己
    - 对其他程序员工作成果的依赖, 而他人的程序质量良莠不齐,思路千奇百怪
    - 创造的乐趣伴随着大量枯燥艰苦的劳动:bug , 测试, 配置等
    - 迭代快,竞争大,做好的产品,设计好的程序,很快就过时了
    

    这么多年下来,以上这些职业的苦恼丝毫不减,但相比于以前手工小作坊单打独斗的时代,职业乐趣还存在多少?

    以下是个人观点:

    创造的乐趣

    - 软件业最近几十年的突飞猛进,维护占比相对新开发越来越高。在他人工作上修修补补,创造的乐趣显然比较低。 
    
    - 软件项目越来越大, 每个人负责的模块越来越细小,对个人来说越发抽象,难以直观理解对用户的意义,对现实世界的意义
    
    - 虽然说现在的软件已经不是从 0 到 1 开始开发,而是建立在各种包、模块上,但是复杂程度不减。由于各种原因,大量存量软件成为事实上的 shi 山,而各种组件不能做到清晰的接口,简洁的说明,各种毛病不断,何来“将各种部件精密组合在一起”的乐趣
    
    - 大量的代码规范,“best practices”,内部的 conventions ,编码工作越来越像流水线,每个动作精确规定,有何乐趣?
    
    - 快速反馈感: 分支管理, 繁杂的配置项,自动测试,部署,权限...中间已经设置了重重阻碍
    

    至于持续学习,感觉各种技术都是茴字的 100 中写法

    各位怎么看?

    4 条回复    2024-05-10 15:12:01 +08:00
    qsnow6
        1
    qsnow6  
       231 天前   ❤️ 6
    过早优化是原罪,学会与遗留代码共舞。

    从业 2 年以上就会明白,丑陋的代码才是常态,作者不仅是以前的维护者、同事,还有可能是自己。
    jefferyJQ
        2
    jefferyJQ  
       231 天前
    @qsnow6 完美的代码就是给自己挖坑
    aw2350
        3
    aw2350  
       231 天前
    完美主义害死人
    FSZR
        4
    FSZR  
       231 天前
    @qsnow6 刚满两年,感受深刻。好代码是改出来的,绝大多数人其实没有足够的能力更没有足够的时间去写好的代码
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2735 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 13:06 · PVG 21:06 · LAX 05:06 · JFK 08:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.