实际编程与学术编程
我很想告诉你们这些新入行的开发者,职场竞争充满激情,而且能做自己喜欢的事,但这并非事实。我目前在一家很棒的公司工作,每天都精力充沛地投入工作,而且大部分时间我都乐在其中。但这和我上学时的情况截然不同。我毕业于阿肯色大学小石城分校,那是一所很棒的学校,我在那里爱上了编程,但它并没有让我做好成为一名全职开发者的准备。所以,我打算给你们一些建议。这些建议都基于我的个人经历,所以可能因人而异,但我真希望当初有人能对我说说其中的一些话。
-
你的老师/教授和客户截然不同。
在大学里,教授会为你设定截止日期,提出明确的要求,他们的主要目标是让你掌握知识。而客户则不然,他们并不关心你使用 jQuery 还是 WebAssembly,Angular 还是 React。他们不在乎你是否渴望通过运用设计模式来提升自身技能,他们只关心你为他们完成的工作是否符合他们的预期。因此,确保产品质量和交付时间完全取决于你。没有评分,没有重来的机会,也没有任何借口。 -
有些项目就是让人头疼。
作为一名开发人员,你有时不得不做一些不像开发下一个 Snapchat 或 Facebook 那样光鲜亮丽的事情。我每天 75% 的时间都在处理文档匮乏的遗留代码,这些代码要么是经验远不如我的自己写的,要么是很久以前被交给某个倒霉蛋的。从数据录入到使用古老的 Access 数据库,你必须习惯不用接触最新最先进的技术。 -
你的同事就像你的家人
。如今,我看到每个进入这个行业的人都想成为独角兽,想成为关键人物或专家,他们的行为就像是在争夺班级最高分一样。在我看来,这种做法是有害的。你的同事就像你大家庭的一份子,你和他们相处的时间平均比和你的亲生家人相处的时间还要长。你应该把他们看作是你想帮助他们成长的人,而不是竞争对手。我的同事都知道我这个人喜怒无常,容易犯错,也容易失职。但他们也知道,如果烽火台点燃,刚铎呼救,我会是第一个冲上山顶的洛汗骑士。这种态度确保我不会成为别人进步的绊脚石。 -
你会失败……希望
我这么说没有恶意。如果你想进步,就一定会失败。有时候是小事一桩,比如项目构建失败,或者客户的需求被遗忘在邮件往来中。有时候则是惊天动地的大事,比如数据库被删除、没有备份、电脑崩溃、客户怒吼、场面如同迈克尔·贝电影里那样混乱不堪。失败迟早会发生,但你会挺过来,而且会从这些看似会毁掉你职业生涯的错误中吸取宝贵的教训。通常你会很快发现,只有你自己才会觉得这些错误会毁掉你的职业生涯。 -
你可以掌控自己的学习计划。
没人会告诉你下一步该学什么。成为一名开发者没有一成不变的公式。从A点到B点没有预设的路径,而且毕业证书也不是终点。你必须热爱自学。YouTube教程和书籍固然好,但没有什么比得上亲自动手编写代码,不断修改直到出错,然后再修复它们。
我希望这些解释能让你明白,也希望对你有所帮助。
文章来源:https://dev.to/dakoon2003/real-world-programming-vs-academic-programming-c1f