我需要在空闲时间编写代码才能成为一名优秀的开发人员吗?
“要想成为一名优秀的开发人员,你需要利用业余时间编写代码”——在我的职业生涯中,我经常听到这样的话。刚入行时,我经常听到这种说法。在开发行业工作了近10年后,我仍然会听到这种说法。我经常在阅读一些CEO的采访时听到这句话,他们说:“我永远不会雇佣一个不在业余时间编写代码的开发人员。”我去一些公司面试时,他们会问我:“跟我们讲讲你的副业项目吧”,希望我能讲一些精彩的故事,但我没有。
但更多的时候,我看到的是开发人员因为在空闲时间不编写代码而怀疑自己,尤其是当他们的同事和朋友做相反的事情时。
但这真的那么重要吗?每个人都对我抱有期望吗?我真的需要在空闲时间写代码才能成为一名优秀的开发者吗?
我的答案是“不”。
“但是,我喜欢写代码,并且对此充满热情”
别误会我的意思。我不介意有人在空闲时间写代码。在很多不同的情况下,这都很有意义,比如初级开发人员显然需要学习和练习。或者当你需要学习一门新语言或新技术时。或者当你准备面试(尤其是在大公司)。或者当你只是喜欢编程,把它当作你的爱好时。或者当你在做自己的项目时。等等。所有这些情况和理由都很棒,没有理由争论。
我的问题有点不同 - 如果我的情况不同,为什么有些人期望我在空闲时间编写代码?
简单介绍一下我自己——虽然我喜欢编程,而且工作水平很高,但编程并非我的爱好。看到自己工作的成果,我真的很享受。看到人们如何与我构建的界面互动,感觉棒极了。即使已经开发了8年,我仍然热爱编程。
但我每天工作8个小时,三分之一的时间用来睡觉,结果就是没那么多时间做其他事情。我的爱好怎么办?家人怎么办?朋友怎么办?我需要很多时间陪伴他们。我需要平衡。我妻子邀请我参加家庭聚餐时,我不想对她说:“好的,我马上就到,再处理一个小问题。” 因为我知道那样的话,我就会一个人吃晚饭,而且会吃一些冷的东西。我不想错过生命中真正重要的时刻。
我的爱好和电脑有点关系。我喜欢练瑜伽,也喜欢骑自行车旅行。我喜欢烘焙(虽然我不太擅长)。我正在努力学习吹口琴。我想尝试新事物和新爱好,想感受电脑之外的生活。可是,晚上的时间这么少,我怎么才能抽出足够的时间来做这些爱好呢?
我的爱好和兴趣不会让我成为一个糟糕的开发者
与IT行业无关的爱好和兴趣让我的大脑更加活跃,思维更加开阔。我能找到很多相似之处和方法,并将它们运用到工作中。我的想象力更加丰富。拥有不同的爱好也教会我如何找到平衡,并合理地利用时间。
此外,在电脑前工作了一整天后,我需要休息一下。唉,我奶奶至今仍觉得这简直是胡扯:“你怎么会累呢?你只是坐着按着按键而已!而且不知怎么的,你还能拿到工资!”我敢肯定,她更希望我找一份真正体力活儿多的正经工作。因为只有这样,我才有资格抱怨自己累。
不管怎样,我的身体可能还没那么累,但我的大脑和心智确实很累。我们不是机器人。我实在没法再坚持写一两个小时的代码了。我的效率会很低,我可能只会花一个小时打开IDE,构建我的项目。我的大脑想通过做点别的事情来休息,我理解这一点。我有多少次能够在完全随机的时间做其他事情的同时找到某个问题的解决方案?相当多!
我年轻的时候,觉得“倦怠”这个词很虚伪,只是为了挣点带薪假。我当时无法理解工作压力会对人造成怎样的影响。但后来我经常看到这种情况——人们把最大的精力都投入到编程中,然后就完全筋疲力尽了。他们又累又无聊。
那么,为什么我需要休息会让我成为一个糟糕的开发人员呢?事实并非如此,也永远不会如此。
“这听起来很棒,但是什么时候学习和研究新技术和语言呢?”
我认为应该在工作时间进行。因为双方都对此感兴趣——你想学习新东西,不断进步;你的雇主也希望拥有经验丰富、乐于与时俱进的开发人员。
工作中有很多机会可以尝试新事物。比如新产品发布?不妨展现一些主动性,并阐述你为什么应该尝试新技术。也许它可以提升产品性能,或者让公司更吸引新开发者。本地黑客马拉松也是尝试学习新事物的好例子。问问学习预算,并为此预留一些时间——在线课程、会议,或者预留一些时间。
当然,并非所有公司都有这些可能性。例如,我曾经在一家大型银行工作,那里有很多特定的遗留代码,而且官僚作风非常繁琐。不幸的是,我对如何处理类似情况没有什么好的建议。我刚离开那家公司,但我仍然学到了很多东西。
“好吧,但我想赶上潮流,我感觉我已经跟不上潮流了。”
这完全没问题。因为我们永远做不到——进步的速度远远快于我们保持知识更新的速度。我们只是凡人,不可能无所不知。我工作越多,就越明白,我的薪水是来自我构建应用程序的经验,而不是我对最新技术的了解。当然,有些新人虽然了解所有被炒作的新技术,但他们缺乏实际的生产经验。
只想再说一遍——我不反对在空闲时间写代码。我也不是要求任何正在写代码的人立刻放弃。一点也不。每个人的情况都不一样,每个人都应该做让自己开心的事。我们每个人都不一样。
我只是说,没有人应该仅仅因为有不同的优先事项和梦想而感到难过或羞耻。
也许我忽略了一些重要的东西,一些重要的细节,比如有人说:“抱歉,马克西姆,我们不能录用你,我们招的是晚上写代码的人,再见。” 也许我只是不太聪明。但我相信我的知识,尤其是经验(不仅仅是作为一名开发者,而是我的整个人生经历)更有意义。我的心态、学习能力和灵活性很重要,而不是我不在空闲时间写代码的事实。
我并不是说这些公司不好,我们的期望不一致完全正常。在这个行业里,这种情况经常发生。我不可能在所有人面前都表现出好人缘,这根本是不可能的。如果有些公司认为我不是一个好的开发人员,一无是处,那也没关系。因为与此同时,也有很多公司的想法与我相反,他们的价值观与我一致。
又一个老生常谈的话题——人生苦短。我根本没时间去做那些不让我快乐、无法让我更接近梦想的事情。很遗憾,我在做完脑部手术后才意识到这一点,虽然很晚才意识到(不过我现在完全康复了,不用担心),但迟做总比不做好,我很高兴自己意识到了这一点。
-
所以,做让你快乐、真正重要的事情吧。追随你的梦想!做你喜欢、充满激情的事情!别让任何人影响你。
文章来源:https://dev.to/chechenev/do-i-need-to-code-in-my-free-time-to-be-a-good-developer-10h9