如何将科学留在IT中并成为测试人员:一个职业的历史


今天,我们向节假日的人们表示祝贺,他们每天都在照顾着世界各地的测试员们。 在这一天,Mail.ru集团的GeekUniversity为那些希望以宇宙的熵加入战斗机队伍的人开设了一个学院 。 该课程的结构设计使得即使以前在完全不同的领域工作过,也可以从头掌握“ Software Tester”专业知识。

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

在我的文章中,我想展示一个相当戏剧性的职业转变的可能性。 在成为测试人员之前,除了以前的工作所必需的要点外,我与信息技术的接触并不多。 但是在许多因素的压力下(我将在下面对此进行详细描述),我决定离开纯粹的IT领域去研究科学领域。 一切顺利,现在我可以分享我的经验。

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


从大学获得生物医学工程学位后,我在一家工业企业担任了工业工程师的工作。 这是一项非常有趣的工作,我的职责包括测量和控制企业产品以及不同生产阶段的原材料的参数。

我想成为一名优秀的专家,所以我逐渐沉迷于生产技术并掌握了相关专业。 例如,当出现这种需求时,我研究了使用州标准和行业法规作为来源进行化学分析以控制水质的方法。 后来,我向其他实验室助理教授了该技术。

同时,我正在准备自己的论文,并为自己成功辩护。 作为候选人,我设法从俄罗斯基础研究基金会(RFBR)获得了一笔巨款。 同时,我以0.3的竞标价格被邀请去大学任教。 我进行了赠款工作,为大学的学科开发了课程和教材,发表了科学文章,发表了演讲,进行了实习,并开发了针对电子教育系统的测试。 我非常喜欢教书,但是不幸的是,合同终止了,我的职业生涯也成为了大学的雇员。

怎么了 一方面,我想继续我的科学之旅,例如成为一名助理教授。 问题在于合同很紧迫,不可能在大学中站稳脚跟-不幸的是,他们没有提供新合同。

然后我退出了企业,因为我决定需要进行一些更改,我真的不想一辈子都担任实验室工程师。 我只是无处专业发展,没有发展机会。 企业规模很小,因此无需谈论职业阶梯。 由于缺乏职业前景,我们增加了薪水,增加了企业本身的位置,增加了生产伤害的风险。 我们遇到了一系列必须解决的问题,例如戈尔迪结,即退出。

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

新学习和自由职业者


不知何故,我偶然发现了GeekBrains课程的广告,所以我决定尝试一下。 首先,我参加了“编程基础”课程。 我想要更多,所以我也参加了“ Web开发”课程,这仅仅是个开始:我掌握了HTML / CSS,HTML5 / CSS3,JavaScript,然后开始在“ Java程序员 ”课程中学习Java。 教育对他们的优势是一个巨大的挑战-不是因为课程本身很困难,而是因为经常有必要怀抱一个孩子学习。

为什么选择Java? 我不得不反复阅读并听到这是一种通用语言,例如可以在Web开发中使用。 另外,我读到了解Java,如果需要,您可以切换到任何其他语言。 事实证明这是事实:尽管我并没有深入探讨语法的基础知识,但我还是用C ++编写了代码并且奏效了。 一切都在Python中完成,它为网页编写了一个小型解析器。


有时我必须像这样工作-将孩子放在一个ergo背包中,给一个玩具,并希望这足以完成下一个订单

拥有一定的知识和编程经验后,我便开始执行自由订单,因此我编写了一个个人财务会计应用程序,即要订购的文本编辑器。 至于编辑器,它很简单,它具有一些用于格式化文本的基本功能,但是可以应付其任务。 另外,我解决了文字处理的任务,并且从事网页的布局。

我注意到编程研究从整体上扩展了我的能力和视野:我不仅可以编写按顺序编写程序,还可以为自己做项目。 例如,我写了一个很小但有用的程序,让您知道是否有人破坏了您的Wikipedia文章。 程序将使用文章分析页面,查找上次更改的日期,如果该日期与上次编辑文章的日期不一致,则会收到通知。 我还编写了一个程序,用于自动计算特定产品(如人工)的成本。 该程序的图形界面是使用JavaFX库编写的。 当然,我使用了该教程,但是我自己开发了算法,并且为实现它使用了OOP的原理和mvc设计模板。

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


总的来说,我喜欢成为自由职业者-您无需离开家就可以赚钱。 但是这里的问题是订单数量。 如果有很多的话,钱就可以了,但是有一些紧急项目,我不得不在紧急模式下熬夜。 如果客户很少,那么您会感到需要金钱。 自由职业者的主要缺点是时间表不规则和收入水平不固定。 当然,所有这些都会影响生活质量和总体心理状态。

人们已经认识到,正式就业将有助于摆脱这些问题。 我开始在专业网站上寻找职位空缺,并编写了一份不错的简历(感谢老师-我经常向他们咨询简历中应指出的内容,以及与潜在雇主亲身提及的内容)。 在搜索过程中,我执行了测试任务,其中有些非常复杂。 我将结果添加到投资组合中,最终变得非常庞大。

结果,我设法在一家正在开发用于自动化医疗机构工作流程的医疗信息系统的公司中找到一名测试人员。 “生物医学工程”领域的高等教育有助于找到工作,以及软件开发方面的知识和经验。 我受邀参加面试,最后得到了一份工作。

我现在的主要任务是测试程序员编写的应用程序的持久性。 如果软件未通过测试,则需要对其进行修改。 另外,我检查来自我公司系统用户的消息。 整个部门都在致力于解决各种问题,我也参与其中。 我们公司开发的软件平台已在医院和综合诊所中实施;如果遇到困难,用户会提出解决问题的请求。 我们分析这些要求。 有时我自己选择我将要处理的任务,有时我会与经验丰富的同事一起建议如何选择任务。

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

不幸的是,由于自动化的引入是一个复杂的业务流程,需要认真的论证和认真的准备,大多数测试必须手动进行。 但是,我熟悉一些自动化工具。 例如,用于测试API块的Junit库。 还有一个来自ebayopensource的孪生框架,它使您可以编写模拟用户操作的脚本,这与Web上使用的Selenium非常相似。 加上精通黄瓜框架。

与自由职业者相比,我在新地方的收入增加了一倍-事实主要是由于我全职工作。 顺便说一下,根据hh.ru和其他资源的统计,在塔甘罗格(Taganrog),开发人员的薪水为40-70000卢布。 通常,此数据是正确的。

工作场所配备了所有必需的设备,办公室宽敞,窗户很多,空气一直新鲜。 另外,还有厨房,咖啡壶,当然还有饼干! 团队也很酷,在这方面没有负面方面。 好的工作,同事,测试程序员还需要满足哪些条件?

另外,我注意到该公司的办公室位于我的家乡塔甘罗格(Taganrog)。 有很多IT公司,因此有可以扭转的地方。 如果您愿意,可以搬到罗斯托夫-那里还有更多机会,但是到目前为止,我还不打算搬家。

接下来是什么?


现在,我喜欢我拥有的东西。 但是我不会停止-因此我会继续学习。 有现货-关于“ JavaScript。 “第2级”,一旦有更多的空闲时间,我一定会开始精通它。 我会定期重复已经完成的材料,此外还会观看讲座和网络研讨会。 除此之外,我还参加了GeekBrains的指导计划。 因此,对于已成功完成课程并在家庭作业中完成学习的学生,有机会成为其他学生的导师。 导师回答问题,帮助完成家庭作业。 对我来说,这也是材料的重复和合并。 在空闲时间,我会尽可能利用hackerrank.comcodeabbey.comsql-ex.ru等资源解决难题。

我也在学习由ITMO老师教授的Android开发课程。 这些课程是免费的,如果您愿意,可以通过付费考试。 我注意到ITMO团队在编程比赛中获得了世界冠军。

对编程感兴趣的一些技巧


我已经有一些开发经验,我想建议那些打算去IT的人不要急于求成。 要成为一名优秀的专家,您需要烧掉自己的生意。 为此,您应该选择自己喜欢的方向。 幸运的是,这并不是什么大不了的事情-现在,在Internet上的任何开发,语言或框架领域都有很多评论和说明。

好吧,值得为正在进行的学习过程做准备。 程序员无法停止-就像死亡,但就我们而言,不是物理上的,而是专业的。 如果您准备好了,那就继续吧,为什么不呢?

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


All Articles