如何离开科学领域转向 IT 并成为一名测试员:一个职业的故事

如何离开科学领域转向 IT 并成为一名测试员:一个职业的故事

今天,我们向每天确保世界多一点秩序的人们——测试人员表示祝贺。 这一天,Mail.ru 集团的 GeekUniversity 打开学院 对于那些想要加入对抗宇宙熵的战士行列的人。 该课程的结构使得即使您以前在完全不同的领域工作,也可以从头开始掌握“软件测试员”这一职业。

我们还发布了 GeekBrains 学生 Maria Lupandina 的故事(@mahatimas)。 玛丽亚是一名技术科学专业的候选人,主修声学。 她目前在一家为医疗机构开发软件的大型工程公司担任软件测试员。

在我的文章中,我想展示一种相当剧烈的职业转变的可能性。 在成为一名测试员之前,除了上一份工作所必需的时刻外,我对信息技术没有太多的接触。 但迫于诸多因素的压力(下文将详细介绍),我决定离开科学领域,转向纯粹的IT领域。 一切都很顺利,现在我可以分享我的经验了。

这一切是如何开始的:技术加科学

大学生物医学工程专业毕业后,我在一家工业企业找到了一份实验室工程师的工作。 这是一个很有趣的工作,我的职责包括测量和监控企业产品的参数,以及生产不同阶段的原材料。

我想成为一名优秀的专家,所以我逐渐沉浸在生产技术中并掌握了相关专业。 例如,当需要时,我以政府标准和行业法规为来源,研究了进行化学分析以控制水质的方法。 后来我把这项技术教给其他实验室助理。

与此同时,我正在准备我的博士论文,并成功通过了答辩。 作为一名候选人,我成功地获得了俄罗斯基础研究基金会(RFBR)的一大笔资助。 同时,我还被邀请到大学当老师,工资是0,3。 我在资助下开展工作,为大学的学科开发课程和方法材料,发表科学文章,进行讲座,进行实践,为电子教育系统开发测验和测试。 我真的很喜欢教学,但不幸的是,合同结束了,我作为大学雇员的职业生涯也结束了。

为什么? 一方面,我想继续我的科学之路,例如成为一名助理教授。 问题是合同是固定期限的,不可能在大学立足——不幸的是,他们没有得到新的合同。

与此同时,我退出了公司,因为我认为有些事情需要改变;我真的不想一辈子都在做实验室工程师。 我根本没有职业发展的地方,没有发展的机会。 公司规模小,职业阶梯没必要谈。 除了缺乏职业前景之外,我们还加上工资低、企业本身位置不方便以及生产中受伤风险增加。 我们最终会遇到一系列的问题,我们只能像解决一个棘手的结一样解决这些问题,也就是说,放弃。

被解雇后,我改吃免费面包。 因此,我开发了无线电工程、电气工程和声学方面的定制项目。 特别是,她设计了抛物面微波天线并开发了消声室来研究麦克风的参数。 虽然订单很多,但我仍然想要一些不同的东西。 有一次我想尝试成为一名程序员。

新研究和自由职业

不知何故,GeekBrains 课程的广告引起了我的注意,我决定尝试一下。 首先,我参加了“编程基础”课程。 我想要更多,所以我还参加了“Web开发”课程,而这只是一个开始:我掌握了HTML/CSS、HTML5/CSS3、JavaScript,之后我开始在“Web开发”课程中学习Java。Java程序员” 学习对我的优势来说是一个巨大的挑战——不是因为课程本身很难,而是因为我经常不得不抱着孩子学习。

为什么选择Java? 我多次读到和听说这是一种通用语言,可以在 Web 开发等领域使用。 另外,我读到,了解 Java,如果需要,您可以切换到任何其他语言。 事实证明这是真的:我用 C++ 编写了代码,并且它有效,尽管我并没有深入研究语法的基础知识。 一切都用Python解决了,我用它编写了一个小型网页解析器。

如何离开科学领域转向 IT 并成为一名测试员:一个职业的故事
有时我不得不这样工作——把孩子放在一个符合人体工程学的背包里,给他一个玩具,并希望这足以完成下一个订单。

当我有了一定的知识和编程经验后,我开始以自由职业者的身份履行订单,所以我编写了一个个人财务会计应用程序,一个自定义文本编辑器。 至于编辑器,它很简单,它有一些格式化文本的基本功能,但它可以完成工作。 此外,我还解决了文本处理问题,并且还参与了网页布局。

我想指出的是,学习编程总体上扩展了我的能力和视野:我不仅可以编写自定义程序,还可以为自己做项目。 例如,我编写了一个小但有用的程序,可以让您找出是否有人破坏了您的维基百科文章。 该程序会解析文章页面,查找上次修改日期,如果该日期与您上次编辑文章的日期不匹配,您会收到通知。 我还编写了一个程序来自动计算劳动力等特定产品的成本。 程序的图形界面是使用JavaFX库编写的。 当然,我用的是课本,但是算法是我自己开发的,并且采用了OOP原理和mvc设计模式来实现。

自由职业很好,但办公室更好

总的来说,我喜欢成为一名自由职业者 - 因为你足不出户就可以赚钱。 但这里的问题是订单数量。 如果有很多,有钱就万事大吉,但有些紧急项目你不得不在紧急模式下坐到深夜。 如果顾客很少,那么你就会觉得需要钱。 自由职业的主要缺点是工作时间不规律和收入水平不一致。 当然,所有这些都会影响生活质量和总体心理状态。

人们已经认识到,正式就业将有助于摆脱这些问题。 我开始在专业网站上寻找职位空缺,制作了一份不错的简历(为此我感谢我的老师 - 我经常向他们咨询简历中应该包含哪些内容,以及在与潜在雇主的个人沟通中最好提及哪些内容)。 在搜索过程中,我完成了测试任务,其中一些任务相当困难。 我将结果添加到我的投资组合中,最终变得相当庞大。

结果,我设法在一家公司找到了一份测试员的工作,该公司开发医疗信息系统,以实现医疗机构中文档流的自动化。 生物医学工程方面的高等教育,加上软件开发方面的知识和经验,帮助我找到了工作。 我受邀参加面试并最终得到了这份工作。

现在我的主要任务是测试我们程序员编写的应用程序的强度。 如果软件没有通过测试,就需要改进。 我还检查来自我公司系统用户的消息。 我们有一整个部门致力于解决各种问题,我也是其中的一部分。 我公司开发的软件平台已在医院和诊所实施,如果出现困难,用户可以提出解决问题的请求。 我们正在研究这些请求。 有时我自己选择我要处理的任务,有时我会向更有经验的同事咨询任务的选择。

任务确定后,工作就开始了。 为了解决问题,我找出错误的根源(毕竟总有可能是人为因素造成的)。 与客户澄清所有细节后,我为程序员制定了技术规范。 组件或模块准备就绪后,我对其进行测试并将其实施到客户的系统中。

不幸的是,大多数测试必须手动执行,因为自动化的实施是一个复杂的业务流程,需要认真的论证和仔细的准备。 不过,我开始熟悉一些自动化工具。 例如,用于使用 API 测试块的 Junit 库。 还有来自 ebayopensource 的孪生框架,它允许您编写模拟用户操作的脚本,与 Web 上使用的 Selenium 非常相似。 另外我掌握了 Cucumber 框架。

与自由职业者相比,我在新工作中的收入增加了一倍——不过,这主要是因为我是全职工作。 顺便说一句,根据hh.ru和其他资源的统计,塔甘罗格的开发人员的工资为40-70万卢布。 总的来说,这些数据都是真实的。

工作场所配备了所需的一切,办公室宽敞,窗户很多,总是有新鲜的空气。 另外还有厨房、咖啡机,当然还有饼干! 团队也很棒,完全没有这方面的负面影响。 干得好,同事们,测试程序员还需要什么才能快乐呢?

另外,我想指出的是,该公司的办公室位于我的家乡塔甘罗格。 这里的IT公司不少,所以还有扩张的空间。 如果您愿意,您可以搬到罗斯托夫 - 那里有更多机会,但目前我不打算搬家。

接下来是什么?

到目前为止,我喜欢我所拥有的。 但我不会停下来,这就是我继续学习的原因。 有货 - JavaScript 课程。 Level 2”,只要我有更多的空闲时间,我一定会开始掌握它。 我经常重复我已经介绍过的材料,此外我还会观看讲座和网络研讨会。 除此之外,我还参加了 GeekBrains 的导师计划。 因此,对于成功完成课程并完成家庭作业的学生来说,有机会成为其他学生的导师。 导师回答问题并帮助完成作业。 对我来说,这也是对所涵盖材料的重复和巩固。 在空闲时间,如果可能的话,我会利用以下资源解决问题: 黑客排名网站, codeabbey.com, sql-ex.ru.

我还在参加 ITMO 老师教授的 Android 开发课程。 这些课程是免费的,但如果您愿意,可以参加付费考试。 我想指出的是,ITMO 团队获得了编程竞赛的世界冠军。

给那些对编程感兴趣的人的一些建议

已经有一些开发经验了,我建议那些打算进入IT行业的人不要急于入坑。 要成为一名优秀的专家,您需要对工作充满热情。 为此,你应该选择你真正喜欢的方向。 幸运的是,这并不复杂——现在互联网上有很多关于任何开发领域、语言或框架的评论和描述。

嗯,你应该为持续的学习过程做好准备。 程序员无法停止——这就像死亡,尽管在我们的例子中,这不是身体上的,而是职业上的。 如果你已经准备好了,那就继续吧,为什么不呢?

来源: habr.com

添加评论