祝贺你!。让我们花点时间来庆祝你做出的开始或改变职业方向的决定。摆在面前的是大量的艰苦工作、满足感、偶尔想把你的笔记本电脑扔出窗外的愿望,还有大量的学习。大多数职业都是这样,所以你也有很好的同伴。
作为一名开发人员,您将解决一千个难题,然后再解决一千个。你的大脑会伸展和成长。您会梦见数据库、像素或花括号。我曾经做过一个梦,梦见我走在走廊上,但走廊是我的密码。这是个好梦。我发现了一个窃听器。
格雷格·勒蒙德(Greg LeMond)是一名职业自行车手,曾三次获得环法自行车赛冠军。他曾经说过一些关于自行车的事情,我想和你分享一下:
从很多方面来说,这描述了他在软件行业的职业生涯。你今天要解决的难题,一个月或一年后就会变得容易。您将学习新的模式和最佳实践。然后你将接受新的、更艰难的挑战。你会与之抗争,并从中学习和成长。然后你将重新开始这个循环(双关语)。
不过,我要补充的是,你将能够以更多的经验和信心来应对以后的挑战。我们给工作带来的是技能和经验的积累。这不是线性的。它有时进行得很顺利,有时比我们想象的要快。然后还有一些伸展,感觉我们是在黑暗中爬来爬去的。
例如,有一次我被要求编写一个WAP应用程序(想想智能手机出现之前的超早期移动应用程序)。我完全不知道我在做什么,而且我基本上是一个人在做这个项目。我先画了几个屏幕,深吸了一口气,然后开始建造。这真的很艰难,但那次经历给我留下了很多教训。我分解挑战并一点一滴接近它们的能力真的提高了。我习惯了扔掉代码,因为我写的第一个代码很糟糕。此外,该项目最终被取消,这完全是正确的商业决定。通过这一点,我了解了如何从业务价值的角度评估权衡-我的时间更好地花在了优先级更高的项目上。
在我现在的冒险中,近20年后,我再次编写了一款移动应用程序,并应用了所有这些经验教训。学习我以前没有用过的语言和框架就不那么令人望而生畏了。确保我正在做的最重要的事情是不断地重新校准,但这是现在感到舒服的一件事。一次克服一个绊脚石,并有克服它们的模式是第二天性。
就像学习不是线性的一样,职业也不是线性的。你的道路将是你自己的。你今天正在做的事情可能是也可能不是你十年后要做的事情。您可能会进入任何数量的其他软件领域,或者作为一名开发人员坚持到底。这是你的生活,所有这些选择都同样有效。我的一位前同事辞职去做手工制作的麦克风;另一位在加泰罗尼亚比利牛斯山做山羊奶酪。我个人的哲学是,在每个做出职业决定的机会,你应该选择你最感兴趣的方向。就像当你对你的学科感兴趣时,你会学得更快一样,当你对你的工作感兴趣时,你会提供更好的软件(或制作更好的奶酪)。
我想告诉你的还有很多,但这封信越来越长了。在我结束之前,我将补充一些简明的花絮。
真正擅长调试。这是一种技能,你会需要它的。
如果你不尊重你的老板,或者他们也不尊重你,那就去找一个新的。
丽贝卡·坎贝尔(Rebecca Campbell)在20多年前对软件开发说了“你好,世界”。她最初是一名开发人员,后来进入团队管理,然后进入高级领导层,目前正在与人共同创立一家初创公司。她偶尔在nerdyGirl.com上写博客。