JavaRush /Java 博客 /Random-ZH /开发中不需要与邪恶作斗争,但也不需要接触:程序员伊琳娜的故事

开发中不需要与邪恶作斗争,但也不需要接触:程序员伊琳娜的故事

已在 Random-ZH 群组中发布
在过去的 8 年里,数千名学生参加了 JavaRush 课程。如今,来自 106 个国家的超过 150 万用户在该项目网站上注册。并非所有毕业生都有时间谈论他们的成功:他们如何学习、通过面试并开始作为开发人员工作。但今天的学生有兴趣了解那些已经从事 IT 工作的人的故事。我们亲自处理此事,推出了一个新的特别系列,介绍来自不同国家和公司并接受过 JavaRush 培训的开发人员。我们的第二个故事是关于伊琳娜的。在学校和大学期间,她热爱技术科学,懂一点编程,但选择在上下文广告领域工作。尽管如此,艾拉还是想尝试一下开发。有一天,她收到一封关于为一项服务招聘实习开发人员的简讯。虽然女孩没有通过面试,但这激励了她开始学习Java。“开发中不需要与邪恶作斗争,但也不需要接触”:程序员伊琳娜的故事-1

“我确实想尝试一下开发”

九年级后,当需要选择进一步的学习方向时(我们分为技术、人道主义、经济、医学),我在人道主义和技术之间做出了选择。在我看来,人道主义方向就像一名记者为了全世界的善而揭露邪恶的形象。对于技术上的事情,我是这样想的:如果我不与邪恶作斗争,那么至少我不会接触到它,也就是接触到他们、接触到人。我选择了阻力最小的道路并选择了技术方向。毕业后,我进入一所大学主修信息学和计算机科学。可惜的是,这所大学没有提供任何语言的任何特定技能。我零碎地学到了一些关于 C++、C#、JavaScript 和布局的知识。在我的第三年,我无意中对上下文广告产生了兴趣,并且无意中在一家相当知名的公司找到了一份工作。结果,我在广告业呆了两年。成功固然很好,但我确实想尝试一下开发。我也没有经过深思熟虑的计划就重新开始编程:我的工作电子邮件收到了一封关于为新服务招聘实习 Java 开发人员的简讯。我决定去面试。当然,我当时的基础知识不足以获得offer,但这个故事促使我尝试寻找一些关于Java的东西。我在互联网上偶然发现了JavaRush网站。起初我并没有被迷住:因为所有这些图片和机器人故事,这看起来很无聊,但我真的很喜欢有机会练习和检查作业。我留下来并决定尝试一下,但后来我陷入了困境。

“我的前几次面试都失败了。”

我的学习没有严格的时间表,时断时续:在工作间隙,有时在晚上。在16-17级左右,我开始尝试找工作(此时我已经学习了大约三个月,中间有一些休息)。如果你没有工作经验,他们就喜欢问算法,我也几乎不认识他们。这就是我前几次面试失败的原因。我必须做额外的准备,寻找最常见的问题并记住它们的答案。我紧急学习了 SQL,研究了代码版本控制系统(JavaRush 中的 Git 提到得离谱,只有 30 级),SOLID,解决了 quizful.net 上的问题,记住了排序算法。结果,我被录用为一家小公司的初级职员。我第一份工作的任务非常琐碎:开发新的系统功能、添加当前功能、修复错误。我们按照瀑布方法进行工作:业务发送任务,分析师更详细地描述它,开发人员实现它,分析师测试它,然后开发人员将其推出到产品中。我们没有使用任何特殊技术:我们用纯 Java 编写了所有内容,使用整体而不是微服务。为了使用数据库,我们使用了自己的闭源框架。一开始就有很多困难——从如何将项目上传到存储库,到如何向数据库写入请求,以免超时。我必须在 google 上搜索很多关于使用 JSON、SOAP、Maven 是什么以及如何用它构建项目的信息。我没有放弃JavaRush,我尝试至少每隔一天学习一次,尽管有几次我放弃了一个月。但我们的目标是达到令人垂涎的 40 级。同时,我还学习了 Otus 的 Spring 框架课程。春天带来了许多新的机会,我简历上的录用机会增加了十倍。隔离期间,我换了工作,转到了微服务架构的项目。我们正在创建一项搜索、销售、购买和租赁住宅和商业房地产以及处理和支持抵押贷款的服务。我们 80% 的服务是用 Kotlin 编写的,另外 20% 用 Ja​​va 编写。

我近期的计划:

  1. 更深入地研究建筑。我想详细研究一下后端架构的设计。
  2. 学习C++。我认为这对于每个程序员来说肯定都是有用的——如果有必要,能够编写必须快速运行的应用程序部分。这对于任何复杂的数学计算也很有用。
  3. 开发运营。在一些公司,这甚至是对程序员技能的强制性要求。对于其他人来说,它肯定会有用。
  4. 我一点也不后悔我在九年级时选择了技术方向,两年前我不再害怕离开广告并开始编程。发展是一种魔力,是一种让人们把复杂的事情变得简单、让令人困惑的事情变得容易理解的方法。现在我正在努力让我 12 岁的弟弟对编程产生兴趣。一年前,我给了他一个 Arduino 构建套件,我正在考虑给他买一本关于用 Python 创建 Minecraft 的书。当我长大一点时,我会向你展示 JavaRush。我想他会喜欢的。JavaRush 给我带来的重要的事情之一是我意识到你真的不能害怕为好的材料付费。它将获得百倍的回报。

给新手开发者的建议:

  • 继续编程。程序员的全部工作包括解决某些问题、发现某些错误并纠正它们。有时它可能(并且将会!)看起来难以忍受的困难、无聊、烦人,但任务最终解决的那一刻感觉就像是真正的突破、胜利,几乎是一个发现。依此类推,围成一圈。愤怒——接受——长期的尝试和无尽的失败——胜利。而等待下一次的突破和胜利,就是作为一名程序员的快感。“开发中不需要与邪恶作斗争,但也不需要接触”:程序员伊琳娜的故事-2
  • 无论何时,只要有可能,就继续学习。阅读文章、书籍,查找并学习某些开发领域的课程,一定要尝试新技术并将其应用到您的家庭项目中。与同样热衷于开发的人交流,交流经验和想法。曾经,正是与这些雄心勃勃的人的交流帮助我在我的第一家公司中不至于枯萎,不害怕并继续前进。
  • 因此,第三条建议是——不要害怕改变一些东西:工作、框架、语言(愿 JavaRush 原谅我)。我对自己的所有主要胜利都是在换工作的那一刻。最初,在没有完全掌握技术或语言的情况下去某个地方似乎很可怕,但这对于开发、研究这种未知的技术或语言来说是非常刺激的。第二股风吹来,理解和研究某些东西似乎有特殊的意义。
  • 评估自己的优势是健康的。即使有一段时间你能够把工作、在家自学、一些课程、大学、也许一个家庭结合起来,那么很有可能会耗尽体力。不幸的是,我认识几个人,在经过很长一段时间的大学生活、赚钱工作和实习开发人员之后,在某些时候感到厌倦并退出了编程。如果我们额外休息一段时间,在大学休假,花一天时间休息而不是学习,放弃课程几个星期,也许一切都会有所不同。
  • “开发中不需要与邪恶作斗争,但也不需要接触”:程序员伊琳娜的故事 - 3
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION