程序员的青春期该怎样度过

这个阶段可以看做是开发者的青春期那就再恰当不过了,这些人的特征是有“心理冲动或“拉力”,认为他们实际上知道他们需要知道的一切”。我认为这种描述是非常恰当的,处于成长阶段的开发人员多少有些温和的傲慢,他们认为自己已经弄明白了,就像一个十几岁的孩子认为父母都错了一样。与青少年一样,中级开发人员可能没有必要的视角来理解他们的天真,或者他们新发现的教条的危险性质。虽然这篇文章并不能讲出中级开发人员可能遇到的所有潜在陷阱,但这也是作者从自己和其他人身上观察到。的。还请注意,可能会遇到其中的一些陷阱,但并不是一个中间体。我们没有人是完美的工程师,而且总有空间去提高。我们的认知一般分为是哪个过程:自负,认识到自己,提高自己开发人员青春期的现象与邓宁-克鲁格效应有一些相似之处,唯一的不同是,对于软件开发人员来说,青春期似乎要晚一些。这是由于学习成为一名软件开发人员的压倒一切的天性。在初学者掌握基本知识之前,他们没有足够的视角来感到自信。然而,一旦初级工程师晋升到中级水平,效果就非常相似了。这种总是“知道正确答案”的倾向对任何级别的工程师都是危险的,但在中级工程师中最常见。这种特性通常表现为与特定工具或架构相关的强大教条,这就变成了一种“锤子-钉子”的情况。以下是几个例子:认为OOP是编写软件的唯一方法,而其他一切都是不行的。认为函数式编程是编写软件的唯一方法,其他一切都是不可取的。对特定框架有强烈偏好,以至于积极抨击或颠覆另一个解决类似问题的框架的原则。对代码质量问题有很强的见解,比如制表符优于空格(反之亦然)。将混乱的代码等同于技术债务,然后利用任何机会进行重构。将面临的所有问题都归咎于他人使用了低劣的方法或工具。相信自文档化代码。相信记录一切。虽然这些点大多代表健康的价值观,但当走向极端时,它们就会变得明显不那么重要。技术压倒一切虽然把技术能力凌驾于一切之上是一个优秀黑客的标志,专业程序员必须平衡额外的价值,即沟通技巧。作为一名中级开发人员,很容易陷入这样的想法:原始编程技能、代码整洁性、减少技术债务等等,是他们所做的工作中最重要的方面。虽然开发人员不应该低估这些技能的价值,但重要的是要认识到它们与其他软技能和非编程概念同等重要。这些主要是沟通技巧、识别和执行业务价值的能力,以及能够做出良好妥协的批判性思维。落入这种陷阱可能会导致你做出对流程或以非原始代码行方式对项目做出贡献的其他团队成员的一些有害的事。它还导致对项目/公司成功所需的非常重要的非技术流程的忽视。从不理解系统和项目文档的重要性,到忽略Scrum、TDD或编写技术规范等有用的过程,这些都有可能。我们什么都做错了”综合症MonicaLent将这种特殊的陷阱描述为“技术上的FOMO”,换句话说,就是开发人员确信为当前项目选择的工具并不正确。这是我通常认为的良好实践的产物:跟上技术新闻和开发。大多数情况下,这是由于认真地阅读hackernews或其他技术新闻聚合器,接触到走在新技术前沿的公司,从而感觉用于某个特定项目的“旧”工具不是正确的。这种信念肯定会随着时间的推移而消失,当然,总会有一些离经叛道的否定者会证明自己是个例外,但在很大程度上,经验会抑制人们将前沿解决方案作为最佳解决方案的冲动。一些建议同样,我并不声称自己拥有所有的答案,我认为这些建议适用于处于开发阶段的程序员积极努力保持谦虚虽然您应该始终提倡您认为有价值的想法,并且永远不要仅仅根据权威来接受一个“正确”的答案,但是任何开发人员都可以从积极尝试在日常工作中变得更加谦逊中获益。这可能采取积极倾听的形式,你只专注于听别人在说什么,而不注意他们说话时你的反应。此外,您可以选择您不喜欢或不理解的工具或方法,并在坚持该工具/方法的原则的同时构建一个小特性或边项目。如果一个工具或方法与类似的解决方案相比没有定义良好且易于理解的优势,您可以更进一步,尝试定期抛出您喜欢的工具或方法。这确实需要付出努力,但如果你认为自己并不总是了解问题的全貌,或者认为解决问题的最佳方法是绝对正确的,那么以后你就会对问题有一个非常健康的看法。着眼于新的观点挑战你认为是真理的想法的最好方法是强迫自己接受新的观点。这可以通过使用您不会使用的工具或框架、与在某个领域比您更熟练的开发人员进行结对编程,以及向其他人传授您认为非常熟悉的知识来实现。结对将迫使您理解其他开发人员处理问题的方式,并且毫无疑问,结对将使您认识到永远不会只有一个解决方案。结对编程的好处还在于,它是一种很好的方法,可以克服各种挑战,提高代码的整体质量。如果你还没有,我绝对推荐你去试试。教别人一些你认为自己很了解的东西,会让你知道你实际上对那件事知之甚少。这适用于几乎任何主题,不仅仅是编程。有趣的是,教学是最好的自学方法之一,它是挑战不健康教条和自我肯定的有力工具。保持自信我在这里所写的很多东西似乎表明,高度的自我怀疑是改善的唯一途径。这并不完全正确。自信是你可以利用的一个重要工具,也是良好沟通和合作的关键部分。换句话说,最好的方法可能是始终对自己的想法和他人的想法保持健康的怀疑,但你不应该让这种怀疑妨碍你质疑和重新评估一个问题、工具或解决方案。令人困惑的是:总是怀疑,但不要怀疑你的怀疑。永远不要停止学习寻找优质的导师。参与大型/开源项目,离开你的舒适区,挑战你自己,发挥你能力的极限。这些方法可以让你不断提高你的技能,确保你一直在进步。这个领域通常对那些技能停滞不前的人并不友好,而且总会有对你的职业生涯有益的新发展。当技术发生变化时,保持对技术的领先,保持好奇心,并始终致力于学习新事物。


转载请注明:http://www.xxcyfilter.com/zyjn/zyjn/16614.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了