保持自己的节奏!一名软件开发人员工作15年后的反思
转自微信公众号
我不得不说,在我从事软件开发的15年里,我经历了许多专业阶段。今天,我已经找到了职业和个人生活的平衡点,我可以说我非常喜欢开发软件,但这不是一个适合每个人的职业。
在这篇文章中,我将谈谈这些年来我学到的东西,使我兼顾职业生活与我的私人生活。
1、经常换工作
当你开始从事这一职业时,通常情况下你会以初级开发者的身份开始,并没有赚到多少钱。无论你如何努力,想要在你的公司里取得快速的进步都不是一件容易的事,尤其是在一个小公司里。如果你想提高你的技能和快速增加你的薪水,经常换工作,寻找一个更好的职位。
如果你的生活中没有太多的责任,那就更不要犹豫。
2、为你自己而不是他们做好你的工作
努力学习、提高,把事情做对,但要为自己而不是为公司而做。你只会在事情出错或不再需要你的时候成为一个可有可无的数字。
你的时间是你的,它是你拥有的最宝贵的东西。不要把它送给你的公司。
3、如果你被解雇了,把它当成一个机会去做你不敢做的事
今天你毫无动力地工作在一个平庸的工作中,下个月你就在另一家公司找到了一份很棒的工作。有时你会害怕失去工作,但有时候,被解雇是发生在你身上的最好的事情。
几年前,我有一份高薪舒适的好工作。经济危机来临时,他们解雇了一半没有项目的员工。我就是其中之一。我以为这是可能发生在我身上的最糟糕的事情,但生活改变了很多,而这是我生活的许多方面可能发生的最好的事情。我很失望,因为我为公司做了所有的事,也花了很多个人时间。
现在我做我想做的事,做我的项目,在一家我每天都充满动力的公司里工作。我觉得这份工作很吸引人,周一也不再是周一了,喜欢工作了。
4、你可以交到好朋友,但是当你换工作时,你会失去他们中的大多数
这些年来,我在工作中遇到了很多人。每年,在我去过的公司里,我们会有公司晚餐,公司午餐,以及每个人都去参加的公司“活动”,但所有这些美好的和谐并不像我想的那样真实。
很多人只是想取悦老板,当同事或老板不在身边的时候,他们就会批评他们。我意识到我在这些事情上浪费了多少时间。现在,我只在我想去的时候才去参加这些活动,而不在乎别人会怎么想。就是不要去参加无效的应酬。
与以前的同事保持联系很困难,而且随着时间的推移,我在大多数情况下都失去了联系。我交了一些好朋友,但在大多数情况下,换工作后,人际关系就失去了,而大多数我认为对我重要的人都没有。
5、如果你安顿下来,你就会失去机会
在这个职业中,最糟糕的事情之一就是你在一份工作中过于安逸,而没有继续学习。如果你这样做了,你就会害怕改变和提升你的职业生涯,你就会害怕在你的公司里会发生什么。
我有一个朋友做这样的工作已经十多年了;他过得很舒服,不想学任何新东西,但他在事业或生活上的选择越来越少,随着时间的推移,我看到他越来越害怕——当然,他讨厌工作。
我做了差不多两年的工作,我觉得很舒服,但我没有学到任何新东西。这份工作很容易,而且我每天都有很多空闲时间,但我是在用我的未来作抵押。因为这个原因,我决定换工作。
6、批评代码,而不是人
如果同事做错了什么事,有很多方式可以表达。永远不要指责别人,因为你这样是在树敌,不仅在个人方面,在职业上也是如此。试着帮助每个人,如果你认为可以的话,改进代码,但要解释原因,不要强加这些改进。记住,生活总是在兜圈子。
有些开发者倾向于对自己所做的事情产生一种强烈的依恋感,就好像他们的工作是自己的“宝贝”,任何对它的批评都会被当成是对自己的批评。
记住,对代码的批评而不是对人的批评。仅仅因为有人在过去写了糟糕的代码,并不意味着他们现在就是一个糟糕的开发人员。代码是或是坏的,而不是人。一切都可以改进。
7、投资于好的工具和你的工作空间
这是基本的。如果你的工作电脑太慢了,它会让你花更长的时间去完成事情,而时间就是金钱。如果你的显示器很小,你就不能把屏幕分成不同的屏幕,同样,你会浪费你的时间。
随着流感的流行和每天在家工作,我决定投资一把好椅子,一个大显示器,现在我可以在编程时把它分成几个屏幕,和一个功能强大的电脑。这可能看起来很贵,但是随着时间的推移,它会为你节省很多钱。
现在我一个人做更多的项目,我更快地完成必须做的任务,而且我的背也不会受伤。
此外,我有更多的时间做运动,所以我不需要去做背部按摩,晚上我的眼睛得到了更多的休息,我可以享受在床上看书。
8、如果你有带薪或不带薪的假期,如果可以的话就休假吧
时间是你拥有的最宝贵的东西。工作和金钱并非是最重要的东西。此外,每年请假对你有好处,想想你对自己正在做的事情是否满意,或者做不同的事情,让工作脱离日常生活。
另外,休息有助于我们了解自己在做什么以及是否做得好。
在闲暇时光中,我总是有最好的主意,我一生中最好的决定总是在空闲时间做出的。
9、技术债务欠佳
技术债务是软件开发中的一个概念,它揭示了现在采用简单(有限)的解决方案而不是使用会花费较长时间的更好方法所导致的额外工作的隐含成本。尽管如此,我还是更喜欢沃德·坎宁安(Ward Cunningham)创造的这种隐喻,该隐喻构想了如何处理技术债务,并将其视为金融债务:增加新功能的额外努力是债务的利益。
如果您迅速采取行动,没有采取良好的做法,也没有足够的思考,那么将来您将遭受重创,您将不得不花费数小时的空闲时间来解决问题。
10、学会即兴创作,不要太在意变化
我记得我在该行业工作的头几个月,当时我认为项目定义明确,客户知道他们想要什么。我很快意识到事实并非如此。
这让我感到焦虑,因为我想按时完成事情,很多时候这是不可能的。意识到事情会发生变化,很多时候您不会按时完成项目,但这不是您的错。放轻松,拥抱变化。
11、如果您在工作中没有做出决定,其他人会为你做出决定
如果您想成为决定使用新技术还是在项目中以不同方式做事的人,则必须先了解该技术或要使用的事物,然后再对同事说。
如果你不这样做,他们可能会把技术强加给你,或者否决你的想法。
12、保持自己的节奏
软件开发的世界发展非常迅速,但请放轻松,并始终按照自己的步调不断学习和发展。如果您不能学到一切,请不要失望。关键是要完美地学习重要的基础知识,并与其他技术保持同步。
13、了解如何阅读文档
急于使用某些东西使我们不能很好地阅读文档或正确理解API。
如果您想做正确的事情而又不浪费时间,请不要走捷径。仔细阅读文档。否则,您可能不会以最好的方式做事。
对Stack Overflow,Google和其他来源持批评态度。不要照搬解决方案,要理解它。
14、学会断开连接
不要把工作上的麻烦带回家。如果存在您不知道如何解决的错误或技术问题,请第二天处理。您会节省很多时间,而且您不会讨厌工作,因为您花费了一整天的时间来解决问题。休息一下会更有效率。
如果不这样做,第二天您将遇到同样的问题,但会更困。
不过实施起来并不容易,但这是我学到的最有价值的东西之一。
总结
我在本文中写的只是个人观点,可能看起来平淡无奇。但是在很多情况下,即使我们知道如何改善工作和生活,我们也没有做到,而是生活迫使我们去做。不要把它留到最后一刻;如果我在开始工作时应用了这些技巧,那么我肯定会节省很多时间和麻烦。