我和代码:如何成为一名受追捧的程序员

在最近的帖子之后,我们收到了许多有趣的问题和评论。 在我们看来,包括您在内想知道如何成为一名受追捧的程序员。

克拉斯诺达尔工作室Plarium的项目在所使用的技术堆栈方面存在很大差异。 我们必须解决各种问题,并需要大量专业人员。 程序员是Plarium Krasnodar团队的重要组成部分。 总共有超过50位同事在工作室项目中创建代码。

我们已经分析了他们的经验,并准备回答问题。



任何人都可以成为程序员


也许所有IT人员都不时被问到:谁可以成为程序员? 如果您愿意,任何人都可以从事这个职业,您只需要在自己中发展某些素质即可。 程序员至少有两个基本要求:思考和分析的能力。 尽管技术背景显着简化了这项工作,但与陈规定型观念相反,接受的教育并不那么重要。

数学基础的重要性取决于您将来将要做什么。 因此,在数据科学中,对数学的深入了解是程序员的必备技能。 为了解决该领域的大多数问题,有必要创建复杂的模型。 当然,如果您按顺序和逻辑地思考,那么您无需数学博士学位即可编写合适的公式。 但是,适当的理论培训将为您节省大量时间和精力。

现在,英语是不成文的行业标准。 俄语的质量教程很少。 有关权威人士的最新技术,新闻,研讨会,演讲的文档(很少有例外)以英文出版。 本地化版本可能根本不存在。



学习永无止境


IT行业正在不断发展。 每隔几年,就会开发出新的编程语言。 库,工具箱和有效的编码技术出现的频率更高。 因此,专业教育和学术成就不是万能药,因为事实上,编程培训永远不会结束。 高校更可能形成必要的思维模式。 正如我们许多同事所坚信的那样,在母校内部获得的知识很少在实践中应用。 真正重要的信息必须独立提取。

学习编程语言不应该花很长时间。 建议每天为此课程花费几个小时。 并一路走来-发展时间管理技能。 尽管此能力不依赖于将来的专业知识,但您学会如何正确地管理自己的时间越快,您的学习和下一步工作就越成功。 与程序员交流是程序员学习的重要组成部分。 在这些对话中,您可以了解新技术和专业机密。

互联网是最好的知识来源


对于初学者和专业人士来说,互联网是主要的知识来源。 您将需要程序员和常规站点的专用资源。 例如,最好通过Twitter跟踪新闻。 在这里,您会发现经验丰富的开发人员提供的生活技巧。

YouTube上有很多有用的信息:不同难度级别的教程,讲义,研讨会,演示,各种技术功能的视觉演示。 不要忽略直播编码广播(在Twitch和YouTube上进行)。 在他们身上,您可以实时看到成功的专家的工作方式,如果有些事情难以理解,请立即向彩带提问。 广播观看的技巧和工作方法,以及窗口的排列和使用的键盘快捷键,将为您节省大量时间,并避免令人讨厌的错误。

在培训过程中,分析已经运行的代码非常重要。 GitHub和类似的服务在这里很方便。 编程书籍不能提供相同数量的质量和相关示例。

在日常工作中,Plarium Krasnodar的专家还使用许多其他站点。 我们选择了最有趣的内容,并为程序员准备了一系列资源。

如果您打算致力于C#和Web开发,那么有用的信息资源将是:

-https://blogs.msdn.microsoft.com/dotnet
-https://metanit.com
-https://learn.javascript.ru/

如果您对学习Unity引擎感兴趣,请继续关注以下资源的更新:

-https://connect.unity.com
-https://blogs.unity3d.com
-https://jacksondunstan.com

如果您想沉迷于游戏开发行业,请访问以下网站:

-https://dtf.ru
-https://gamasutra.com
-https://www.alanzucconi.com
-https://app2top.ru
-https://simonschreibt.de
-https://engineering.riotgames.com
-https://proglib.io/p/gamedev-blogs



程序员-通用专家


IT程序员是一名通用战士。 不必专注于特定的活动领域:尽管技术堆栈不同,专家仍可以轻松地从游戏开发者切换到企业开发者,反之亦然。 这一点完全不能消除您需要了解作品功能的事实。 例如,gamedev中的程序员仍然需要了解游戏行业并自己成为游戏玩家。

在学习过程中,不可避免地会出现一个更好的问题:研究尽可能多的技术或专门研究特定的技术。 答案将伴随着经验-当您解决程序员在日常工作中会遇到的任务时。

常见的初学者错误


我们分析了新手程序员的典型错误,并根据这些错误制定了一些技巧。 不要踩别人的耙子!

除非绝对必要,否则代码不能复杂。 该清单应易于阅读,以便立即清楚了解程序的每个部分做什么以及如何做。 当一段时间后您无法弄清楚如何使用先前创建的类或库时,这种情况是不允许的。 笨拙,不明显的构造很难调试,并且在编写它们时很容易出错。

不要重新发明轮子。 对于几乎所有任务,您都可以找到合适的工作代码。 如果搜索失败,则很可能是您错误地提出了请求。 通常,程序员倾向于具有一定的自信心。 即使搜索成功,似乎自写代码也比现成的解决方案更好。 随着时间的流逝,您将开始确切地了解何时从头开始编写系统所花的精力是合理的。 在此之前,最好使用其他人的开发。

无需放弃书籍。 工程师与具有良好理论知识的传统编码器不同。 通过这样的培训,他可以更好地浏览技术堆栈,快速找到最佳解决方案并减少错误。 基本的理论基础是由专业书籍而非文章提供的。

测量七次,切一次。 如果截止日期允许,您需要在开始编写代码之前仔细考虑所有细微差别。 否则,您可能会浪费大量时间来寻找错误并优化算法。 更好地磨练您正确思考的能力,而不是快速键入代码。

快速而优质的工作。 即使代码看起来不太好,也必须尽快解决一些任务。 在其他情况下,截止日期不是很关键,可以强调质量。 如果您开始在这些编程方法之间交替,那么最后,您将开始快速有效地执行任何任务。

摆脱思维的僵化。 与年长的同事相比,年轻的程序员更容易解释不这样做。 随着年龄的增长,我们对新思想的开放程度降低,并开始痛苦地接受批评。 尽量不要被束缚,并从不同角度考虑问题。

我们希望本文对那些开始编程的人有所帮助。 如果您已经成为代码专家,请在评论中分享您的故事:您如何学习,在哪里获得经验,如何激发灵感,犯了什么错误。

Source: https://habr.com/ru/post/zh-CN433530/


All Articles