职业:程序员。并非一切都清楚

我们写了有关前端后端,关于移动开发测试的文章但是这些是特殊情况。当一个人从事第一职业或下一个职业时,他很少说自己将成为iOS的开发人员或直肠病医生,通常这听起来像是“程序员”和“医生”。经验丰富,以后才能专业化。但是,为了坚定地表明您想成为一名程序员,医生,建筑师,地质学家等,您需要摆脱该职业的浪漫化,并明智地,有意义地进行操作。即使您突然决定成为一名程序员,也是为了“在35岁之后进入IT”。如果我们从浪漫的角度谈论程序员,那么这些人会将我们的想法变成代码,并使生活变得更好,更轻松,更便捷。坦率地说,程序员的工作很紧张,通常是例行工作,有很多利弊。我们将讨论这个。

艺术家-Nadezhda Kotkina,摆姿势-cyber_roach

是谁呀?


术语“程序员”可以隐藏狭窄的程序员,软件开发人员,工程师,系统分析人员等。但是,所有程序员都有一个共同点-能够将人的要求纳入机器代码中,以使工作或娱乐活动自动化,便捷,简单。程序员为计算机创建指令,作为这些指令的执行结果,可以获得某种目标结果。 

您应该考虑自己是否是未来的程序员,如果……

您的动力来自内心,您喜欢控制计算机的过程,不仅要使用程序(游戏,应用程序),还想知道它的工作原理,对其进行修改。

...您不会期望疯狂的收入,也不会认为编程是一个新的潮流,主要是创造魔术的愿望:将思想变成代码。

...您知道如何改进任何程序,任何站点,任何移动应用程序。您确切地知道该程序需要什么,并且想学习如何编写完美的代码。

在哪里需要?


今天,到处都需要程序员,我认为这种趋势不会在未来的10-15年内改变。工业,科学,太空,商业,医药,运输甚至IT公司都不需要程序员(开个玩笑,你知道在1C-Bitrix上为在线商店找到优秀的1C程序员或开发人员有多难吗?!)通常,即使在教会和慈善机构中,也需要程序员。这很棒,因为您不仅可以选择程序员的专业,还可以将它与自己的爱好相关:化学,生物学,力学,通信,甚至历史和语言学。此外,如果您将软件开发技能和核心业务的基础知识相结合,您的市场价格将会大大提高,竞争也会改变。

因此,您不需要了解那么多在哪里工作,而应该了解您更接近多少开发。

  • — (, , , , IoT ..). .
  • - ( ) — - , , - . WEB, .
  • — , . , , .
  • — , , — (, , ..). .
  • , — , . , , . , COVID-19, :-)
  • ( ) — , . , . 
  • DevOps/DevSecOps — , . « , », DevOps , .
  • 应用程序开发和软件业务是一个独立的开发世界,您可以在Delphi上编写桌面并获得数百万美元的收入,了解COBOL并成为市场上最有魅力的专家,浏览Java并在社区中扮演领导角色等。这是一条危险的开发路径,主要针对经验丰富的开发人员,但是如果您碰巧爱上C / C ++ / Java或某种“来自编程的拉丁语”-为什么不呢? 

我再次列出了主要领域,但实际上,在它们的界面上,形成了新的有希望的领域,例如,自然语言处理(NLP),AR / VR,游戏开发,测试自动化等等。 

重要的是要了解另一个部门。

  1. - , , , , UI/UX .. , ( ?:-))
  2. -- , : , CRM, ERP, , , , -, 1 .. , , - , , . 

在编程教学的过程中,您肯定会精通所有领域和任务,因此,从培训开始六个月后,您将对要转到哪方面有所了解。例如,我有一个朋友除了与阅读器的软件填充相关的工作外,不想做其他任何事情。结果,他经历了Barnes&Noble的工作,曾参与Google项目,现在在中国工作(满意,健康,热爱中国的生活)。每个人都有自己的路。

基本专业要求


编写代码本身并不是最困难的任务,要理解,解释要求并将其翻译成机器友好的语言要困难得多。与代码的客户(这里是指客户,同事,雇主等)一起工作总是很紧张和冒险,因为他们自己不知道自己想要什么,他们简单地思考并认为技术是万能的。但是,如果您假装自己是一名专业的程序员,则不仅需要皱眉,而且还需要与人员,技术任务,要求等进行积极合作。这使程序员与简单的编码器区别开来。 

  • 批判性思维-能够突出需求中的主要内容,能够通过持续的优化和改进来接近自己的代码和他人的代码;寻找解决问题的最佳方法的技能。
  • — . , , . — .

  • , , — , . , « », .
  • — , . , ?! , ! , , , , , . , , - . , , 00:09, + ;-)
  • — , . , , . 

  • — , , code style .
  • — . , , SDK, API, . — 6-12 .
  • — , , , . , -, ( , ). , , . 

我敦促您不要相信内向程序员的童话故事。如果您想在编程方面有所发展,那么请保持内向。如果您想成为一个内向的人,您会很快陷入专业发展的顶峰,因为在开发人员的活动中仍然需要进行交流。即使在远程站点,您也必须与同事沟通,参加集会,回顾和讨论。 

需要外语知识


在不发展外语(尤其是英语)知识的情况下可以做到吗?能够。学习编程语言的语法和单词就足够了,您可以仅用俄语进行思考和交流。无知的语言不会成为许多公司职业发展,发展,沟通的障碍。 

但是-是什么赋予了外语知识?

  • . , ( ).
  • .
  • , , , .. , .
  • .
  • -.
  • .

关于Habré的讨论很多,关于足够熟练的英语水平可以在IT行业工作。我认为,为了不致聋哑,您需要最少的中高级或中级语言并能主动讲话(例如,您的语法很好,但是在课程,个人交流或实习中具有良好的语言水平)。

在哪里学习


在现代的俄罗斯大学中,有许多程序员专业,有本科和研究生课程,还有其他教育形式。如果您仍然只是选择自己的大学,那么,当然,值得去专门的学院,或者去物理,数学和其他技术专业。

如果您需要编程作为主要专业的辅助工具,则可以寻找相邻的选项(例如医学控制论和计算机科学),或者与主要专业同时学习。

如果您已经受过教育,那么您可以进行自我教育,各种课程,在线学校,公司大学等。您可以使用这些学习工具来学习编程,或者完全独立地学习,甚至可以通过导师来学习。您可以在此处阅读有关继续教育的信息


我特别提请您注意:高等教育仍然很重要,因为它对用人单位很重要,搬到另一个国家是必要的,它也提供了基础,基础,这将使我们能够迅速朝任何新的方向发展。

此外,学习哪种编程语言,了解数学,算法,计算,网络和服务器管理,网络原理,堆栈等的重要性并不重要。这个基础在大学中并不差。 

热门书籍和学习工具


每个专业都有一套自己的书籍和培训资源,但是每个人都应该阅读一些东西。

  • 编程的艺术,Donald Knuth
  • 编程的明珠,约翰·本特利
  • « »,
  • « . , », .
  • «. », .
  • « . Ebay?»,
  • « », .
  • « . »,
  • «. »,
  • « »,
  • « . »,
  • « -»,
  • «-. », ,

这些书不仅包含实用知识,而且还冷静地激发,塑造了程序员的思想和世界观。我敦促您:阅读,阅读可以发展您的思维,记忆力,并在任何面试中都立于不败之地。

从您喜欢的资源中:

  • Codecademy是用于教授编程语言的通用交互式平台。运气,成就,游戏化都是动机。
  • Udacity是用于学习编程的英语资源。
  • Codewars是大量测试任务的集合,用于以任何编程语言训练技能。
  • Coursera-没有评论,只是最好的演讲“大杂烩”。
  • 麻省理工学院的开放式课件课程来自麻省理工学院。

这是由另一位作者编写的课程很好概述,更详细地介绍了俄语课程。 可供程序员使用的

另一种新颖实用的在线方法。

忠告:即使您有时懒得学习,也至少要在后台听讲座,这样您才能沉浸在术语中,在强化学习期间要注意一些难以察觉的时刻。


专业的神话


关于程序员,有很多神话和谣言:关于性格,粗鲁,无法建立个人生活等。但是这些都是在行业中可以找到的特殊情况。例如,有一次我很接近医学领域,我可以说还有很多已婚妇女在工作,而在工作中已婚,有很多内向的人和粗鲁的人,但是有职业的人(宁可是石头砸死的)。通常,很难想象任何特定领域的幸福“飞地”。


如果程序员也是游戏玩家,您总可以找到一对夫妇;-)

因此,我将分析四个最流行的神话。

  1. . . , - , , , . , , — , , . 500 . , . « » «» , . , : . 
  2. . , . , , , , , , , - , . , . , , ( !), , , , , , — , , , .
  3. . , . , , CTO, CIO .. . 
  4. . . ? ;-)


如果您正在学习成为一名程序员,那么肯定会有一天要放弃这一切,因为这条路似乎太长了。您将对单调的训练任务感到厌倦,每次失败的编译都将导致沉闷,痛苦的绝望,您将梦见指针,递归和OOP原理(函数调用或函数调用不成功)。所有这些大惊小怪的事情似乎不仅是您的第一个独立项目,而且是第一次公司合并的疯狂。... 

退出的愿望是您采取正确方式,确实很紧张并且不使用Google的复制粘贴方法处理某些代码的第一个迹象。 (甚至没有GitHub!)。只有当您接受过简单任务的培训,以致于您变得无聊无聊时,您才可以自信地进入拥有良好知识基础的新阶段。 

提示很简单:不要掉落。休息一下,睡着这些想法,放弃训练一个星期再回来。您自己不会注意到脑海中有什么“喀哒”声,一切都准备就绪,在这里,是第一次合并,第一次审阅代码,第一次开源提交,在会议上第一次表演,您的宠物项目,中间职位。不要停止-一切都会!


All Articles