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

47 天前
 p7534a

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

职业的乐趣

创造的乐趣与成就感

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

持续学习:

职业的苦恼

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

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

以下是个人观点:

创造的乐趣

- 软件业最近几十年的突飞猛进,维护占比相对新开发越来越高。在他人工作上修修补补,创造的乐趣显然比较低。 

- 软件项目越来越大, 每个人负责的模块越来越细小,对个人来说越发抽象,难以直观理解对用户的意义,对现实世界的意义

- 虽然说现在的软件已经不是从 0 到 1 开始开发,而是建立在各种包、模块上,但是复杂程度不减。由于各种原因,大量存量软件成为事实上的 shi 山,而各种组件不能做到清晰的接口,简洁的说明,各种毛病不断,何来“将各种部件精密组合在一起”的乐趣

- 大量的代码规范,“best practices”,内部的 conventions ,编码工作越来越像流水线,每个动作精确规定,有何乐趣?

- 快速反馈感: 分支管理, 繁杂的配置项,自动测试,部署,权限...中间已经设置了重重阻碍

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

各位怎么看?

1448 次点击
所在节点    程序员
4 条回复
qsnow6
47 天前
过早优化是原罪,学会与遗留代码共舞。

从业 2 年以上就会明白,丑陋的代码才是常态,作者不仅是以前的维护者、同事,还有可能是自己。
jefferyJQ
47 天前
@qsnow6 完美的代码就是给自己挖坑
aw2350
47 天前
完美主义害死人
FSZR
46 天前
@qsnow6 刚满两年,感受深刻。好代码是改出来的,绝大多数人其实没有足够的能力更没有足够的时间去写好的代码

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1039210

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX