网易首页 > 网易号 > 正文 申请入驻

2020年帮你加薪的几个小习惯!

0
分享至

本文经授权转载自程序员DD(ID:mhcoding)

作者 | DD小分队

责编 | 胡巍巍

软件工程师花费大量时间通过练习leet code问题和完善简历来获得更好的面试通过可能。

一旦他们最终被谷歌、亚马逊或其他公司录用,他们可能会发现:过去用来得到这份工作的技能与他们日常工作中需要的技能并不匹配。

我们的团队受到 TechLead 创建的高效程序员七项技能的启发。我们想提供我们自己对这个话题的看法。以下是我们总结的高效程序员的七项技能。

学习如何阅读别人的代码

除了你,每个人写的代码都是垃圾?实际上,能够在别人的代码之上继续工作是一项有多重好处的伟大技能。

不管以前工程师的代码是多么混乱或者考虑不周,您仍然需要能够扩展它。毕竟,这是你的工作。同时,这个“以前的工程师”也可能是一年前的你。

这项技能在两个方面对你有益。第一,能够阅读他人的代码是一个了解什么是糟糕设计的好机会。当你浏览别人的代码时,你会知道什么是有效的,什么是无效的。

更重要的是,您可以了解什么类型的代码对于其他工程师来说是容易扩展的,以及什么类型的代码难以扩展。

你需要确保在阅读他人代码时尽可能多地找出问题所在。这样,其他的工程师就会知道你是一个多么优秀的工程师。

确保您提出了关于可维护代码和良好注释的重要性观点。这进一步显示了你在编程领域的优势。

您的代码应该设计得非常好,不需要任何文档。事实上,如果你是一个好的程序员,你不需要任何文档来说明你的任何代码。这只是浪费时间,更需要你花时间的是编码和开会。

能够阅读别人乱七八糟的代码的话,也使得在需要更新的时候变得容易。这有时意味着更新您缺乏经验的代码。例如,我们曾经将一个脚本从 Powershell 更新到 Python 再到 Perl。

我们在Perl方面的经验有限,但我们仍然有足够的背景知识来弄清楚这段脚本到底做了什么,并做出必要的改变。

这一切都来自于对所有代码的良好理解以及能够阅读以往的代码。阅读别人的代码会让你变得有价值,因为这项技能甚至可以让你接手那些让别人难堪的过度工程化的系统。

对坏项目的感觉

有许多技能需要花时间去学习。我们认为值得了解的技能之一是理解什么项目不值得做,什么项目显然是行尸走肉。

大公司总是有非常非常多的项目在进行(老板自己都不知道有多少),其中有些项目可能永远都不会完成,即时完成了,可能对公司也没有什么有利的影响。

有些可能本身就没有任何商业意义(至少对你来说不是) ,还有一些项目可能存在管理不善的问题。

这并不是说当你不认可一个项目时,你应该立即拒绝这个项目。最嗨还是看看项目干系人是如何看待这个项目的,如果他们自己都不能正确地解释他们对这个项目的最终成果会怎么样的,那么可能这个项目就不值得做。

此外,有些项目可能过于专注于技术而不是解决方案,以至于从一开始就很清楚不会有太多的影响。

这个技能需要你在知道一个糟糕的项目到底是什么之前做很多糟糕的项目。所以,不要过早地花费太多时间试图辨别每个项目。

在你职业生涯的某个时刻,你会拥有良好的直觉与意识。

避免不必要的会议无论您是软件工程师还是数据科学家,会议都是必不可少的,因为您需要能够与项目经理、最终用户和客户达成共识。

然而,也有一种倾向,会议会突然接管你的整个时间表。这就是为什么学会如何避免不必要的会议是很重要的。

也许一个更好的词是管理,而不是避免。这里的目标是确保你把时间花在能够推动决策和帮助你的团队前进的会议上。

最常见的方法就是每天抽出两个小时的时间,这是一个持续不断的会议。通常,大多数人会在他们认为有益的时候定期召开会议。他们会利用这段时间来赶上他们的开发工作。

另一个避免开会以便完成工作的方法是在别人之前出现。就我个人而言,我们喜欢早到,因为一般来说,办公室比较安静。大多数早到的人和你一样,只是想把工作做完,这样就不会有人打扰你了。

这对个人贡献者来说很重要,因为我们的工作需要我们集中注意力的时间,而且我们不会和其他人交谈。

是的,有时候你可能需要解决问题,你可能想和其他人一起工作。但是一旦你解决了阻塞问题,你只需要编码。

它是关于进入那个区域,在那里你不断地在你的头脑中有许多关于你正在做的工作的复杂的想法。如果你总是停下来,很难从中断的地方重新开始。

使用Git

一些计算机专业的学生在他们出道的那天就开始使用 Git 了。他们不需要专业人士指导就可以理解每一个命令和参数。

其他人在他们的第一份工作中第一次体验到 GitHub。对他们来说,Github 是一个地狱般的地方,充斥着混乱的命令和进程。他们永远都不是100%的确定自己在做什么(备忘录之所以流行是有原因的)。

无论您的公司使用什么仓库系统,如果您正确使用它,该系统都是有用的,如果使用不当,则是一个障碍。

一个简单的commit或push就可以让你花上几个小时来理清一些由多个分支合并组成的大杂烩。此外,如果您经常忘记使用仓库的最新版本,那么您还将处理不那么好玩的合并冲突。

如果您需要一个 Git 命令备忘单,那么就做吧。只要能让你的生活更简单。

编写简单可维护的代码

年轻的工程师可能会有一种倾向,那就是试图将他们所知道的一切都实现到一个解决方案中。

有一种愿望,那就是把你对面向对象程序设计、数据结构、设计模式和新技术的理解用到你编写的每一个代码中。

然后,你就很有可能创建了一个不必要的复杂性,因为它很容易过度依附于您过去使用过的解决方案或设计模式。

在复杂的设计概念和简单的代码之间取得平衡。设计模式和面向对象设计应该尽可能的去简化宏观计划中的代码。进程越是被抽象、封装和黑盒化,就越难以调试和维护。

学会说不,分清主次

这一条适用于团队中的任何角色,不管你是财务分析师还是软件工程师。但对于技术角色似乎每个人都更需要学会这一条。

如果您是一名数据工程师,您可能会被要求做更多类似开发方向的事情。一些团队需要数据提取,其他团队需要仪表盘,其他团队又需要新的数据分析对接。

区分事情的优先顺序和说不,是两种不同的技能,但它们紧密地交织在一起。优先级区分意味着你只花时间在对公司有很大影响的事情上。

然而,说不有时只是意味着回避应该由其他团队来处理的工作。对于所有角色而言,它们经常同时出现。

这可能是一个很难获得的技能,因为你总是希望用自己的方式去满足每一个请求。尤其是你刚从大学毕业。

你想避免让任何人失望,而且你总是能得到大量的工作。但是,在大公司里总是有无穷无尽的工作量,所以一定要抓住关键:只承担能做的事情。

有很多技能在面试中是没有办法测试和验证的,甚至在大学里都没有教过。通常情况下,这更多的是环境的限制,而不是缺乏让学生暴露在真实环境中发展成长的愿望。

场景化思维有一种技能在面试中很难测试,在大学学习时也很难复制,那就是思考最终用户可能会如何错误地使用你的软件。我们通常将其称为场景化操作思维。

由于大部分编程都是维护性的,因此它通常意味着更改与其他代码高度耦合的代码。即使是简单的更改也需要跟踪对象、方法和 API的每一个可能存在引用的地方。

否则,很容易意外地打破你没有意识到的模块连接。即使您只是更改数据库中的数据类型。

它还包括在进入开发之前通过边缘案例和整体化的高级设计进行思考。

对于开发新模块或者微服务的场景就更加复杂,花时间去考虑所构建的操作场景非常重要。

想想未来的用户可能需要如何使用您的新模块,他们可能会如何不正确地使用它,可能需要什么参数,以及未来的程序员是否会以不同的方式需要您的代码。

简单的编码和编程只是问题的一部分。创建一个在你的电脑上运行良好的软件是很容易的。但是部署代码可能出错的方式就会有很多。

一旦进入生产环境,就很难说代码将如何使用,以及哪些其他代码将附加到原始代码中。五年后,未来的程序员可能会对你的代码局限性感到沮丧。

本文译自:https://dev.to/seattledataguy/7-habits-of-highly-effective-programmers-inspired-by-an-ex-google-techlead-humor-4b4k

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
秦岚,睡吧睡吧

秦岚,睡吧睡吧

阿芒娱乐说
2024-04-27 17:04:23
台湾第一绝色,纯欲天花板,演艺生涯40多部片你一定看过!

台湾第一绝色,纯欲天花板,演艺生涯40多部片你一定看过!

生如稗草
2024-04-28 09:17:35
终于有人把中国10大超级县城,整理出来,不知道的收藏

终于有人把中国10大超级县城,整理出来,不知道的收藏

书山有路勤为径
2024-04-27 21:18:06
工行总行多部门“一把手”调整!

工行总行多部门“一把手”调整!

农村阿祖
2024-04-28 11:05:19
俄专家评价布林肯访华:对华施压不再好使,美国仍幻想着剥削中国

俄专家评价布林肯访华:对华施压不再好使,美国仍幻想着剥削中国

娱乐的小灶
2024-04-28 16:46:07
AITO汽车回应问界M7车祸

AITO汽车回应问界M7车祸

新京报
2024-04-28 13:31:05
“靖康之耻”有多虐心?皇帝生母每日接客超百人,公主肛裂而死

“靖康之耻”有多虐心?皇帝生母每日接客超百人,公主肛裂而死

阿胡
2024-03-28 15:30:23
耶伦果然败了,美媒承认美债卖不动,中方再补一刀,抛售百亿美债

耶伦果然败了,美媒承认美债卖不动,中方再补一刀,抛售百亿美债

大国观察眼
2024-04-28 01:49:14
刚刚汪妈曝光大小S吸毒,小S偷偷上线,大S妈妈留言求饶

刚刚汪妈曝光大小S吸毒,小S偷偷上线,大S妈妈留言求饶

娱乐八卦木木子
2024-04-26 17:55:19
23岁林妙可发育过猛!微胖身材穿公主裙扮可爱,却意外显瘦又洋气

23岁林妙可发育过猛!微胖身材穿公主裙扮可爱,却意外显瘦又洋气

宋若时尚搭
2024-04-27 10:56:39
笑麻了!南昌连续三次向游客喊话来旅游,网友:不会日语怎么办?

笑麻了!南昌连续三次向游客喊话来旅游,网友:不会日语怎么办?

小白探影8
2024-04-27 15:32:03
具俊晔近照,描眉画眼涂唇膏!大S为赢汪小菲把老具折腾的不像样

具俊晔近照,描眉画眼涂唇膏!大S为赢汪小菲把老具折腾的不像样

柠檬有娱乐
2024-04-28 10:21:11
55岁邓文迪最新出席晚宴把人美到!花朵裙配波浪卷发,又嫩又霸气

55岁邓文迪最新出席晚宴把人美到!花朵裙配波浪卷发,又嫩又霸气

时尚丽人风行
2024-04-27 14:50:20
拒绝2亿!巴萨正式通知巴黎:不卖亚马尔,他是未来巨星

拒绝2亿!巴萨正式通知巴黎:不卖亚马尔,他是未来巨星

叶青足球世界
2024-04-27 16:47:11
为什么男人偷情会上瘾,女人偷情却……

为什么男人偷情会上瘾,女人偷情却……

闻心品阁
2024-04-27 09:15:08
明日船侠G4 东契奇因膝盖伤势出战成疑 小哈达威大概率缺阵

明日船侠G4 东契奇因膝盖伤势出战成疑 小哈达威大概率缺阵

直播吧
2024-04-28 04:44:13
国际空间站这下要玩完,美国加拿大日本只能干瞪眼了

国际空间站这下要玩完,美国加拿大日本只能干瞪眼了

搞笑的阿票
2024-04-28 07:30:03
她拍过无数三级片,却是口碑最好的艳星

她拍过无数三级片,却是口碑最好的艳星

活好当下
2024-04-25 11:54:25
俄罗斯在开战不久后与乌克兰的和谈协议公诸于世,堪比二十一条

俄罗斯在开战不久后与乌克兰的和谈协议公诸于世,堪比二十一条

探索星空
2024-04-27 11:13:29
访华结束,布林肯打破惯例,没有直奔机场,去了一个不起眼的地方

访华结束,布林肯打破惯例,没有直奔机场,去了一个不起眼的地方

三分亮剑
2024-04-28 15:56:07
2024-04-28 18:06:44
CSDN程序人生
CSDN程序人生
关注程序员生活 汇聚开发轶事
1302文章数 754关注度
往期回顾 全部

科技要闻

马斯克周日突然现身北京,要谈FSD入华?

头条要闻

警方回应"警车进村喊话村民涉嫖娼":多次传唤对方不到

头条要闻

警方回应"警车进村喊话村民涉嫖娼":多次传唤对方不到

体育要闻

赢了!詹皇末节14分制胜咆哮 压力给到KD

娱乐要闻

张杰谢娜发文为何炅庆生,亲如家人!

财经要闻

上财万字报告深度解读Q1经济

汽车要闻

鸿蒙首款行政旗舰轿车 华为享界S9实车亮相车展

态度原创

数码
手机
家居
公开课
军事航空

数码要闻

AMD和英特尔竞争的焦点 CPU缓存为何对游戏如此重要?

手机要闻

OPPO A60正式发布 搭载骁龙680 起售价约1570元

家居要闻

光影之间 空间暖意打造生活律动

公开课

父亲年龄越大孩子越不聪明?

军事要闻

也门胡塞击落美军"死神"无人机 并展示残骸

无障碍浏览 进入关怀版