译者|布加迪评论|孙淑娟就像生活中的任何事情一样,适应一个新角色并不容易。晋升到高级工程职位可能具有挑战性,需要更大的责任、更好的优先级排序和磨练软技能。无论某人最近晋升为高级工程师,还是他正试图证明自己已为下一级别做好准备,请牢记以下一些重要经验教训,以确保成功担任该职位。优先考虑完美完美主义者可能会花费大量时间尝试改进代码库、分发编程最佳实践、要求更多时间重构代码以及修复手头的每个错误。但是,修复客户没有抱怨过的不常用功能中的错误并不是很好地利用时间。确定优先级应该是高级工程师工作的核心。软件工程师需要尽量避免不为公司提供价值并阻碍自身影响的错误。明确无误地表明,高级工程师不只是交付代码,他们还交付解决方案。避免尝试设计不必要的设计模式,避免寻找使代码“更漂亮”的方法来迎合某种审美。事实上,没有人关心独特的审美偏好,而是关心具有积极影响且年复一年持续存在的解决方案。当工程师编写代码、设计架构、传达信息或倡导新技术时,工程师有责任以神秘的方式表达,而不是增加复杂性。这样,解决方案更有可能产生积极影响并在多年后继续存在。许多软件工程师想修补一种全新的技术或一种新的编程语言。冷静下来,寻找使用现有技术架构实现相同目标的机会。虽然新技术很酷,但请记住:即使在您的组织中学习和教授新技术也可能让人不知所措。没有人愿意接触的代码是设计复杂的代码,但不一定是最难的代码。正如MartinFowler所说:“任何傻瓜都可以编写计算机可以理解的代码。优秀的程序员编写的代码是人类可以理解的。”优先考虑人类解决方案。不只是编写代码,谈论代码软件工程师经常陷入的一个陷阱是忘记关注软技能。编写代码最快并且可以开发复杂解决方案的工程师不一定准备好担任高级工程职位。高级工程师应该清楚地表达每一个曾经或现在属于他们的解决方案。如果工程师无法解释构建解决方案背后的原因,则表明他们是在按照配方行事,而不是仔细考虑他们做出的每一个决定。在这个级别上,精确度是关键,技术和沟通执行力是必不可少的。归根结底,高级工程师不一定是最能写代码的人,但必须能够清楚地解释他们开发的每一个解决方案。关注“完成”和“得到它”的原则作为一名高级工程师,你需要明白,培训结束后,你大部分时间都得靠自己了。同事和领导要求你日复一日地处理你的工作,不要手牵着手。毫无羞耻地提问或花一两周时间开发解决方案的日子已经一去不复返了。其实,成为一名高级工程师并不容易,前路无疑是坎坷的。这就是为什么仅仅知道它“有效”是不够的,您可能需要付出额外的努力来不断提高您的技能。在这个角色级别,您有责任每天不断推动自己学习和成长,挑战自己,并及时交付价值。对公司重要的事情现在对你也很重要。归根结底,这是高级工程师最重要的生存原则,对下一代人才至关重要。不要认为你只需要按部就班或在面对你不喜欢的项目时生气。我们从事这项业务是为了提供解决方案,我们必须继续这样做。有时,软件工程师的工作是深入挖掘并找出是什么阻碍了您的公司提供更多价值,并给出构建代码的理由。解决组织或用户可能遇到的每一个主要问题是不切实际的,但您可以从某个地方开始。你能做的最好的事情就是成为一名优秀的侦察员,让公司变得更好,引领潮流并激励其他人追随你的脚步。原标题:高级工程师的生存手册,作者:KeremBalci
