我将如何成为一名Web开发人员……并且会吗?

接受最近的采访以及星期五之后,我将发布一个更详细的故事,说明我打算从设计师转到网络开发人员,以讨论并从社区获得建议。 我自己写书,没有人站在灵魂之上,没有阅读课文,没有人力资源管理人员的潜台词和技巧,就像其他有关成功培训的文章一样。

序言


在哈布雷(Habré)上经常写关于“从9个月的出租车司机到程序员”的文章。但是,如果我只想克服这条路怎么办? 突然不起作用了? 无论如何,我想谈谈我自己,我想要什么以及为什么决定采用这种方式。 这不是另一个成功的故事,也许永远不会成功,但是我认为有些人会看到自己在这些方面,他们的恐惧和借口,并决定做出一些改变。 我想谈谈已经完成的工作和刚刚计划的工作,并希望获得该领域经验丰富的专家的反馈。 所以,让我们按顺序进行。

关于我自己的一点


Anatoly,27岁
城市:斯摩棱斯克
婚姻状况:已婚,有女儿和抵押贷款
大学和专业:NRU“ MEI”,工程师ASOIU
军事服务:无线电拦截Osnaz GRU
当前职业:设计工程师2大类

在编程方面,我还不是一个初学者,我有一定的背景知识。 教育从高中的BASIC和Pascal开始,然后是Delphi,C / C ++,PHP,JavaScript。 现在我的主要语言是Go。 当然还有C用于微控制器。

在第四年和第五年之间,他在“工作和旅行” 自由劳工计划下在美国度过了四个月,在那里他收紧了英语,并且旅行了很多次(照片摄于硅谷)。 大学毕业后,他按兵役入伍,在那儿担任无线电拦截员,并在VBA上编写了游戏,他在返回哈布雷时就谈到了这一点。

我在该研究所学习期间去了工厂实习,在军队退伍后回到了那里,这对我的职业发展起到了很好的作用。 我目前的任务包括气体分析设备开发和维护的全过程:从设计电路到编写文本文档。 任务范围非常模糊,我们一次完成所有工作。 这是从传感器编写和维护遥测收集服务器的第一手经验。 我选择Go作为后端语言,选择Vue.js.作为前端语言。

我上网的方式


从我的学生时代开始,我就已经(主要是业余爱好)在现成的引擎上创建/完成/支持站点,并在PHP下为它们编写各种解析器:图片,产品,文章,评论。 基于此,我对网络的了解直到最近才结束。

去年,我遇到了Go,并选择它作为工作任务的语言:有必要提高服务器以通过TCP从传感器收集遥测信息。 熟识很成功,我能够迅速解决问题,并开始进一步研究。 我经历了从Mail.ru到Coursera的两门课程,解决了其中的一些应用问题,其中一个问题围绕Heroku并为我带来了今天的帮助:它贯穿了我并为我提供了来自视频托管的视频,因为我们已阻止访问工作中的视频文件。

另外,在一年前,我开始编写基于浏览器的io-toy JS(Phaser)+在网络套接字上运行。 我采用了旧的BiPlanes蓝牙玩具的构想和图形,目的是添加几种类型的游戏(死亡比赛,夺旗,橄榄球),并将玩家分成每个10人的小房间。



我想了很长时间如何为机器人组织AI,但是我没有想到,很遗憾我暂停了这项工作,因为 现在正在忙于另一个项目,关于它的进一步工作。

挑战是开发用于室外照明的自动化自动控制系统:这包括设计设备本身以及编写服务器和客户端部件以进行管理。 在开发和组装用于微控制器的软件的开发板之后,他带了一个学徒的同事,与此同时,他接管了服务器端。 服务器的任务包括通过TCP定期轮询设备参数,并支持REST API for SPA。 对于客户端部分,Vue保留了管理面板空白,通过JWT将其连接到服务器部分,并逐渐增加了这两个部分的功能。

在这个阶段,它看起来像这样(如果有,则分为两层板):









我们目前正在谈判解决关系,投资和系统的进一步开发。

在此过程中,我意识到我确实缺乏SQL知识:我不了解用于联接两个表的查询的工作方式。 我开始寻找将我的知识放在该领域的位置:我阅读/研究了一些理论,然后开始在SQL-EX网站上进行练习。 我对结果感到非常满意:我解决了80多个问题并获得了基本证书,现在在SQL中我感到更加自信。 我计划逐步解决扩展证书的任务。

当前的工作为我们广大国家的广大旅行提供了大量的商务旅行。 从我对专业重新定位的想法感到不适的那一刻起,我就开始调整商务旅行,以这种方式通过莫斯科或圣彼得堡时,我会遇到各种各样的杂物,这些杂物以某种方式影响了Web编程。

在会议上,我尝试倾听和探究所有发音,结识新朋友,并使自己沉浸在这种文化中。 坦白地说,没有足够的知识和经验,但是人的大脑是如此,以至于所有听到的东西都放在一个遥远的抽屉里,我相信有一天它会派上用场。 我在这里注册了Slerm-2的在线访问权限,希望在DevOps领域有所作为。

为什么我决定换工作


简而言之,我很无聊。 去年没有有趣的项目,没有新设备的开发。 所有的工作都是微不足道的,我的发展才刚刚停止。 我想工作,最后很有用。

在工厂工作,我感到落后于这个世界。 有多少种现代技术使我们流连忘返? 当我是该部门中唯一使用Git的人时,我能怎么说? 其余的自称为“程序员”的员工仍将程序保存在不同的文件夹中,并定期丢失“必需的”版本。

当然,应该有一段关于薪水的段落,这对我来说通常是一个痛处。 而且这甚至与具体的金额无关(我认为我的薪水很正常,大约是该地区的两倍),但是我妻子的薪水却更高……我很幸福,但你能想象这会如何影响我吗? 暂无评论。

最重要的是,IT领域提供了无限的发展机会,而在工厂中,这种发展非常有限,要解决的领域和任务范围非常狭窄,而且您实际上只限于一个工作地点,凭借这样的技能,我很难在其他任何地方派上用场了。 我想创建一个可以使用并且可以使用的真实产品,但是与官僚机构和阅读有关安全性的GOST无关。

我的计划


简而言之,那就是:继续学习,再学习,也不要害怕,开始发送简历以寻找新工作。 我尝试使过渡平稳,并逐渐将硬件任务与后端编程任务混合在一起。

最大的问题是缺乏导师来寻求建议或只是谈论网络,一切都必须从互联网上的文章中获取。 原则上,我现在甚至准备在更有能力的程序员的指导下研究一个想法,以获得相关经验。

在不久的将来,我计划花大量时间阅读Martin Kleppman的书《高负载的应用程序》,并且仍然要读到最后,这肯定会影响我对网络上正在发生的事情的认识。 在最近的一篇文章的背景下,这并不是一个技巧,采访是在一个月前进行的,我真的读过了……我是从对哦的采访中发现的,我是与Mail.ru的Golang课程老师Vasily Romanov一起编写的。 虽然我为什么要找借口?

我的恐惧


我敢肯定,几乎每个想换工作的人都有这种担心,甚至不一定在新的领域。 在这里,所谓的冒名顶替综合症在某种程度上为您说话,您需要了解这一点。

恐惧#1-很少有工作经验。
是的-不够,是的-拥有更多会很好,但是经验是一种收获:您可能不知道任何特定的技术,但是没有人取消生活经验和对发展的渴望。 总的来说,我认为自己的一生都是独一无二的:是的,在军队中,我用卫星过滤掉了空军一号中装有多少冰箱的信息。 好吧,当然,不仅如此……而且故事对此也保持沉默。

恐惧#2-公司需要中级/上级/潜在客户,但不需要六月
是的,有关职位空缺的统计数据证实了这一点,但是6月份有职位空缺,这是主要问题。 谁说会容易呢? 需要搜索。

恐惧#3-对我来说,6月在新地区的薪水将比现在低很多,但我需要养家糊口
这种恐惧是基本的。 我希望部分补偿它,这是因为总体上IT费用较高。 我了解您可能必须同意某种程度的薪资调低,但为了更大的前景,我准备做出决定,我的妻子最近离开该法令的时间越长,经过两年的绝食,我们正在慢慢站起来。 她对此表示支持,前几天她说:“但我们走吧?” 而仅凭开发气体分析仪的经验又可以去哪里呢? 这进一步激发了职业转变。

恐惧4-第一项工作不应遥不可及
我相信,无论是初学者还是有经验的人,在远程工作的组织中使用现代技术都不会出现任何问题。 对我来说,这种情况使得我所在的城市几乎没有公司可能需要后端开发人员:只有小型网络工作室铆钉了名片站点,因此要首先获得办公室工作经验,我会做对的。 在这里,我准备考虑临时搬迁到莫斯科或明斯克实习的选择,并进一步远程进行工作。 显然,这是实践。

恐惧5-我的年龄不再适合6月
好吧,我希望在这里我已经比昨天的学生多一些经验,并且我必须用自己的工作来弥补其余的部分-我一直认为自己是一个有能力的学生。

我的目标


当然,最全球化的目标是:成为一名远程后端开发人员,租一个安静的房间并做自己喜欢的事情。 是的,我了解我是通过粉红色眼镜的棱镜看世界的,但是我想要这个,并且我相信它。 斯摩棱斯克位于莫斯科和明斯克之间,距彼此只有4小时的车程,如果我不只是在工厂门口,那么在开会的情况下这应该非常方便。

到目前为止,本地目标如下所示:

1.阅读《高负载的应用程序》一书。
2.开始发送简历和面试。
3.更多练习...恢复游戏上的工作。
4.继续解决SQL-EX中的问题,并开始了解查询优化。

结论


我希望这个故事不会太混乱,我正在等待您的评论和建议。 顺便说一句,明天我将去IT领域进行第一次面试。

相关链接:


1. 从外科医生到开发商:如何在40岁时改变职业?
2. 我如何在9个月内从一名新手转变为一名软件开发人员,而又不中断主要工作
3. 与坦波夫出租车司机相比,我进入IT部门的经验
4. “我已经在三年内与冒名顶替综合症作斗争”-程序员的10个问题,第7期

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


All Articles