我学到的一些东西。作为软件工程师的 10 年。
大家好,我是 Corey。这是我一年半以来的第一篇博文(查看笔记)。
我是一名专注于后端技术和分布式系统的软件工程师。自2010年毕业以来,我涉足过多个领域。最初,我进入一家电商营销公司,用C#和.NET构建定制电商解决方案。几年之后(这段经历既是一段学习经历,也是一段令人沮丧的负面环境,直到我离开公司后,我才在一家本地公司找到了另一份工作,这家公司为高等教育机构构建数据和互动平台。那是一段美好的时光,让我摆脱了之前工作带来的消极情绪,并与优秀的人共事。
在同一时期,我创办了几家小公司,经历了不同程度的失败,在iOS应用商店发布了游戏,并在业余时间开发了一些SaaS应用。最终,我找到了今天的自己,一家在种子轮融资时就加入的、正在成长的B轮初创公司。
接下来的这些,只是我一路走来学到的一些东西。我并非完美无缺,有时也对自己在这个世界上的未来感到困惑,但这些想法一直在我脑海中盘旋。就这样吧。
撞倒:
- 除非你要求,否则你永远不会得到任何东西
- 情商>智商
- 职场同理心
- 面试技巧
- 好奇心。
- 应对倦怠和职业困惑
- 多年经验!=经验。
1. 除非你要求,否则你永远不会得到任何东西。
不要以为只要等待就能获得加薪、晋升、团队调动或其他任何好处。你需要明确表达你的意图。很多时候,我们犹豫是否要开口,以免显得太过苛刻,或者害怕听到“不”。被拒绝是最糟糕的情况,而这其实是一件无关紧要的小事,根本无关紧要。这表明公司对你的看法与你对自己的看法不同。这种认知非常重要。最终,你会得到你想要的(当然,你必须努力争取),或者你会意识到自己得不到,而你可以利用这一点来推动你未来的职业发展。
2.情商>智商
如果你曾在充满敌意的公司里工作过,你就会明白智商并非达到目的的手段。我宁愿与那些并非顶尖工程师的优秀人才共事,也不愿与那些自负的天才共事。优秀的人有能力让周围的人变得更好,他们会放大积极性。情商比智商更能让你走得更远。凡事适度是关键,但这并不意味着高智商的人总是消极的,也不意味着高情商就意味着他们是水平低下的工程师。当你遇到那些自负的人时,你就会知道他们是什么人。
3.工作场所同理心。
这些天我们都在经历一些糟糕的事情。有些人经历得比其他人更严重。能够理解他人有助于我们与这些人建立更密切的关系。这反过来又有助于建立团队成员之间的联系,并营造积极包容的文化。
精彩短视频:同理心与同情心
4.面试技巧
在现实世界中工作会让你变得生疏。我相信我们都经历过面试,回想起来,都会惊讶地发现自己准备得多么不充分。面试技巧与日常工作中的技巧截然不同,你永远不知道什么时候会需要这些技巧来保持敏锐和纯熟。口头沟通、技术交流、技术理解、系统设计。这些都是我们试图给潜在雇主留下深刻印象时必须具备的关键技能,但在现实世界中,这些技能会随着时间的推移而逐渐退化(如果你足够幸运,也许并非所有技能都适用)。
无论你是否需要这份工作,每10-12个月面试一次。最糟糕的情况也不过是被拒绝。我们的目标是磨练和提升面试技巧。这部分对于口头和行为沟通至关重要。能够与新朋友交流,并就你自己、你的背景和你的目标进行对话至关重要。
不要害怕技术面试。是的,这些面试可不是日常工作。是的,它们很烂。是的,它会让你梦想着遍历二叉树和在数组上运行滑动窗口。多年来,我一直回避任何涉及现场编程、hackerrank 或 leetcode 的事情。我因为怀疑自己和拒绝准备而错过了多少机会?这些技术面试是为了展示技能,但更重要的是,它能证明你花了时间准备。此外,了解数组、列表、字符串、树、字典树、搜索、大O 以及如何组装可扩展系统总是有好处的。一点一点地准备,一天一天,一周一周。这些事情可能需要几个月的时间才能完全准备好,让我们对任何抛给我们的问题都充满信心。另外,不要把你的记忆过度集中在特定的 LC 问题上。学习数据结构和算法背后的理论、模式和思想,以及如何将它们应用于任何问题。我推荐《Grokking the Coding Interview》来了解不同类型问题背后的想法和模式,并推荐《Cracking the Coding Interview》作为参考,复习那些生疏的技能。
5.好奇心
作为工程师,我们必须始终对许多事物保持好奇心。探索新的语言、框架、想法,或探索其他领域。重要的是不要满足于你所知道的,而要日复一日地不断积累知识和技能,这才是关键。如今,科技的浪潮席卷而来,想要理解其中任何一项都会变得非常困难。我们的目标并非成为 10 倍速的超级工程师,而是保持好奇心,找到让你感兴趣并感到兴奋的事物。工程领域的热情很容易消退,尤其是在现实世界中工作。永远不要停止探索、学习和不断进步。
6. 应对倦怠和职业困惑
当我第一次列出我想讨论的内容时,这是我首先想到的。说实话,我对此并没有答案。我每天都在努力尝试,希望能更好地理解一切。上面的第5点确实很有帮助,在工程领域重新找到激情让我保持希望。如果有人能有什么想法或有用的方法,那就太好了。
我对职业困惑的定义是:我还想继续做我现在的工作吗?为什么我不开心?除了编程,我还有其他实用技能吗?我是不是浪费了过去十年?我能做什么才能让自己快乐?每天只是例行公事,没有解决那些能激发你创造力的问题,也没有得到认真对待,从职业角度来说,你对自己在这个世界上的位置感到完全困惑。
7. 年经验!=经验。
我们存在于自身经历的累积之中。我们经历的越多,突破舒适区,在个人和职业发展上就越有成就。我们很容易陷入接受平庸和自满的陷阱。我以前就遇到过这种情况。在一份工作上待得太久,学不到新技能,薪水也不够高,只是自满。想想看,如果要我定义成功,对我来说它是什么样子?你能在目前的状态下实现成功吗?你是否一天天进步?还是停滞不前?别害怕,我们都经历过这些。关键在于投资自己,即使事情看似无望,也不要放弃,要承认失败。因为失败是成功的基石。
附言:我本来想多用点图片,但最后没用。图片好用吗?会分散注意力吗?还是会清洁托盘?
文章来源:https://dev.to/coreyjs/a-few-things-i-learned-10-years-as-a-software-engineer-2e1p