1. 社交技能 > 技术技能
现实情况是,要在这个职业中取得成功需要沟通,而且很多。
在某些时候,您必须与队友、项目经理和客户就功能进行协作。你将不得不在你不明白的事情上寻求帮助。更重要的是,广受欢迎是您保住工作并在职业生涯中获得新机会的方式。
你是一个多么优秀的开发人员并不重要。您每天可以编写数千行代码。
如果你不能就此进行有效沟通,你就不会取得成功。
2. 你永远不是专家
陈词滥调警告:软件在不断变化。
人们喜欢向我指出反向的事实。“FORTRAN 开发人员现在赚了很多钱,因为它们太稀有了!” 他们是如此罕见,因为他们的工作正在消失。
要在这个领域成功工作,您必须跟上变化。但是,您还需要避免追逐每一个闪亮的新工具。
在软件开发中,专业知识有点像是一种幻想。不要误会我的意思——有专业的开发人员。但他们不是专家,因为他们对特定技术了解太多。相反,他们之所以成为专家,是因为他们看到了多少来来去去的技术。
需要多年的一致性才能变得伟大。
如果您认为自己是专家,那么您很可能不是专家。专家知道他们不知道多少。
3. 工作常常很无聊
事实上,软件工程可能很无聊。
您花数小时盯着屏幕修复错误、实现功能或重构其他人的旧代码。大部分软件只是功能简单的 CRUD 应用程序。
大多数时候,手头的任务不会那么有趣。
资历有所帮助,但也使问题变得更加困难。现在您正在扩展 CRUD 应用程序或发现更具挑战性的错误。有时,这很令人沮丧。其实,每一天都有自己的小烦恼。
保持专注和好奇是一项艰苦的工作。
4. 这是年轻人的游戏
绝大多数情况下,开发人员都是年轻人。
在预期的群体(年龄、种族、性别)之外,你的道路会更加艰难。这是一个很难承认的事实。这是错误的,但它是真实的。
可怕的是缺乏多样性伤害了我们所有人。如果构建软件的工程师不多元化,那么他们创建的产品就会缺少其他团队的视角。当今世界拥有强大的软件,这有点可怕。
在这个事实中,还有另一个经常被忽视的关于软件的事实:年龄歧视。每个人都会变老。因此,最终您将被迫离职(提前退休或从事咨询工作)或晋升(进入管理或——对于极少数人而言——架构师角色)。
5. 没有完美的东西
开发人员喜欢干净、完整的解决方案。
软件几乎从不干净也不完整。
您会经常因技术债务、缺乏文档、糟糕的测试或代码库中缺少的其他内容而感到沮丧。
没有代码是完美的。
如果你追求完美,你就会竭尽全力而永远无法实现。
“够好了。” 这是大多数开发人员的口头禅。他们知道今天发布的好功能比一个月后发布的完美功能要好。
无论如何,需求变化如此之快。您可能会花费数小时来寻找完美的解决方案,结果却让客户提出完全不同的要求。
当然,这就是敏捷宣言背后的动机。
但就个人而言,这可能意味着工作总是一团糟。
我们正在构建的软件没有明确的、不变的规则,一切都有待商榷。
网友评论