数学学位在学习编程时是否有优势?一切都取决于你在相关科目上付出了多少努力。

这是来自乌克兰的罗曼的故事。如今,他是一名高级 Java 开发人员。2015年年中在读应用数学硕士。原来的故事在这里。您可以在下面找到最重要的部分。

考虑到他祖国的现实情况,Roman 确信接受数学教育只会让他作为程序员赚到很多钱。但他选择成为一名 Java 开发人员是随机的,而不是深思熟虑的。他不想只靠书本或全日制课程学习:我们的学生认为这些课程花费太多,但收益甚微。

然后他找到了我们的 Java 课程。这是在 2015 年 8 月底/9 月初。

一个Java学习计划

在准备学习计划时,罗曼从他没有时间闲逛的事实出发。

他设定了一个目标:快速获取知识以保持学习兴趣,但又不能快到让他的大脑超负荷。

因此,这就是他的决定:

  1. 每周学习五天(周一至周五)。
  2. 周末,除了学习什么都做。
  3. 为每个学习课程分配 4 小时——每个小时后,休息 15 分钟,散步、放松和泡茶。

每周总计 20 小时。还不错吧?此外,罗曼有时不得不去上大学,因为他还在读研究生。

到 12 月,他已经完成了一半的课程,并认为自己已经学到了很多东西,尽管他的大脑有时会拒绝接收新信息,但只有一个没有任何编程的周末帮助他取得了进步。

迈上新台阶

在 Roman 开始学习三个月后,他开始想知道为了找到工作他还需要知道什么。为了寻求建议,他转向了他认识的程序员。

哦,他听到的不熟悉的词,比如“数据库”(恐怖!)等等,让他知道他需要加快步伐,做更多的事情。这些提示肯定也会对您有所帮助。

  1. 在读书。在 Roman 的案例中,推荐给非常新手的“Head First Java”非常有用。这有助于他更好地理解一些细微差别。
  2. 联网。您应该访问您所在城市(和其他地方)的所有相关程序员聚会场所。即使有很多不清楚的地方,这也是您沉浸在环境中的方式。
  3. IT 网站。面向程序员的媒体、YouTube 上的视频课程、论坛——您需要深入研究所有这些,并阅读有用的文章,以全面了解 Java 开发人员蓬勃发展的意义。
    就个人而言,我们建议从 CodeGym 上的文章、论坛和聊天部分开始 :)
  4. 掌握相关技术:MySQL、HTML、CSS等。
  5. 为自己创建一个很酷的 LinkedIn 个人资料,列出您的所有技能,并积极扩大您的专业人脉圈。
    Roman 分享了他的经验:“我现在在 LinkedIn 上有 10,000 多个朋友。这是开始的必要条件。[当] Android 自由职业者团队想要添加新手时,它帮助了他们联系我。”

第一次失败

当然,在学习的同时,Roman 也在寻找公司的实习机会,有一天他得到了面试。他还没有准备好用英语令人信服地展示自己并回答技术主管的所有问题。根据他的说法,他“以某种方式完成了[测试任务],尽管没有使用所有功能。过了一段时间,他的申请被拒绝了,他决定继续前进。

Roman 在 LinkedIn 上找到了他的第一份工作,在那里他被邀请参与一个 Android 开发项目。当然,真正的工作比 CodeGym 上的任务更困难,并且在此过程中有很多东西要学习。团队逐渐瓦解,无法将试点项目提升到一个新的水平,他不得不另谋高就。

寻找新工作

去哪儿?罗曼在网络媒体上搜索程序员,在那里他找到了他所在城市合适公司的联系信息。他发起了一场大规模的邮寄活动。

为了确保一切顺利,他用英文写了简历。据他说,这是一堆废话,因为他觉得自己没有什么特别的东西可以写。必填项是求职信(也应该是英文的),以便招聘人员了解您申请的职位以及原因。他为那个最喜欢的采访问题准备了英文回答:“请介绍一下你自己。” 这非常有用。

面试困难、尴尬、不舒服,但罗曼挺过了。在某些时候,他们只是想聊天。在其他情况下,需要执行一些编码任务。

首次报价

四次面试后,有两家公司拒绝了 Roman,但有两家公司向他发出了邀请:一家是 Android 开发人员,另一家是 Java 开发人员。他胡思乱想了一段时间,不知道该怎么做,但最终他成为了一名 Java 开发人员。

几年过去了,Roman 是一名高级 Java 开发人员,他在业余时间积极参与开源项目(这里是他的GitHub 个人资料),并经常在CodeGym 的“文章”部分与学生分享他的有益经验。