How to leave science for IT and become a tester: the story of one career

How to leave science for IT and become a tester: the story of one career

Today we congratulate people who every day make sure that there is a little more order in the world - testers. On this day GeekUniversity from Mail.ru Group opens a faculty for those who want to join the ranks of fighters with the entropy of the Universe. The course program is designed in such a way that the profession of "Software Tester" can be mastered from scratch, even if you previously worked in a completely different field.

We also publish the story of GeekBrains student Maria Lupandina (@mahatimas). Maria is a candidate of technical sciences with a degree in acoustics. Now she works as a software tester for a large engineering company that develops software for medical institutions.

In my article, I want to show the possibility of a rather drastic career change. Before becoming a tester, I did not come into close contact with information technology, except for the moments that were necessary for the previous job. But under the pressure of a number of factors, which are detailed below, I decided to leave the scientific field for pure IT. Everything worked out, and now I can share my experience.

How it all began: technology plus science

After graduating from the university with a degree in biomedical engineering, I got a job as a laboratory engineer at an industrial enterprise. This is quite an interesting job, my duties included measuring and controlling the parameters of the company's products, as well as raw materials at different stages of production.

I wanted to become a good specialist, so I gradually immersed myself in production technologies and mastered related specialties. For example, when the need arose, I learned how to conduct chemical analyzes to control water quality, using government standards and industry regulations as sources. Later, I taught this technique to other laboratory assistants.

At the same time, I was preparing my Ph.D. thesis, which I successfully defended. Being already a candidate, I managed to get a large grant from the Russian Foundation for Basic Research (RFBR). At the same time, I was invited to the university as a teacher for 0,3 rates. I worked on a grant, developed curricula and methodological materials for the university disciplines, published scientific articles, gave lectures, led practices, developed tests and tests for the e-education system. I liked teaching very much, but, unfortunately, the contract ended and so did my career as a university employee.

Why? On the one hand, I wanted to continue my path into science, becoming, for example, an assistant professor. The problem is that the contract was urgent, and it was not possible to gain a foothold in the university - a new contract, unfortunately, was not offered.

At the same time, I quit the company, because I decided that something needed to be changed, I didn’t really want to spend my whole life working as a laboratory engineer. I simply had nowhere to grow professionally, there was no opportunity to develop. The enterprise is small, so there was no need to talk about the career ladder. To the lack of career prospects, we add low wages, the inconvenient location of the enterprise itself, and an increased risk of injury in production. We get a whole range of problems that we just had to cut like a Gordian knot, that is, quit.

After the dismissal, she switched to free bread. So, I developed custom projects in radio engineering, electrical engineering, acoustics. In particular, she designed parabolic microwave antennas, developed a muted acoustic chamber for studying the parameters of microphones. There were many orders, but still I wanted something else. At one point, I wanted to try my hand as a programmer.

New study and freelancing

Somehow an advertisement for GeekBrains courses caught my eye and I decided to try it. At first I took the course "Fundamentals of Programming". I wanted more, so I also took the Web Development courses, and this was just the beginning: I mastered HTML / CSS, HTML5 / CSS3, JavaScript, after which I began to study Java in the courses β€œJava programmer". Studying was a big challenge to my strengths - not because the course itself was difficult, but because I often had to study with a child in my arms.

Why Java? I have repeatedly read and heard that this is a universal language that can be used, for example, in web development. Plus, I read that knowing Java, you can switch to any other language if the need arises. This turned out to be true: I wrote the code in C++, and it worked, despite the fact that I did not dive too deep into the basic syntax. Everything turned out with Python, I wrote a small web page parser on it.

How to leave science for IT and become a tester: the story of one career
Sometimes I had to work like this - put the child in an ergo-backpack, give a toy and hope that this would be enough to complete the next order.

As soon as I had a certain amount of knowledge and programming experience, I began to fulfill freelance orders. So I wrote an application for personal finance accounting, a custom text editor. As for the editor, it is simple, it has a few basic functions for formatting text, but it does its job. In addition, I solved word processing tasks, plus I was engaged in the layout of web pages.

I would like to note that the study of programming has expanded my capabilities and my horizons in general: I can not only write custom programs, but also do projects for myself. For example, I wrote a small but useful program that allows you to find out if someone is spoiling your Wikipedia articles. The program parses the page with the article, finds the last modified date, and if the date does not match the date you last edited your article, you get a notification. I also wrote a program to automatically calculate the cost of such a specific commodity as labor. The graphical interface of the program is written using the JavaFX library. Of course, I used the textbook, but I developed the algorithm myself, and OOP principles and the mvc design pattern were used to implement it.

Freelancing is good, but the office is better

In general, I liked being a freelancer - after all, you can earn money without leaving your home. But here the problem is in the number of orders. If there are a lot of them, everything is fine with money, but there are urgent projects that had to be worked on until late in an emergency mode. If there are few customers, then you feel the need for money. The main disadvantages of freelancing are an irregular schedule and a variable level of income. All this, of course, affected the quality of life and the general psychological state.

The understanding came that official employment is what will help get rid of these problems. I began to look for vacancies on specialized sites, developed a good resume (for which I thank the teachers - I often consulted with them about what should be indicated in the resume, and what is better to mention already in personal communication with a potential employer). During the search, I performed test tasks, some of which were quite difficult. I added the results to the portfolio, which eventually became quite voluminous.

As a result, I managed to get a job as a tester in a company that develops medical information systems to automate workflow in medical institutions. Higher education in biomedical engineering, plus knowledge and experience in software development helped me find a job. I was invited for an interview and eventually got the job.

Now my main task is to test the applications written by our programmers for durability. If the software does not pass the test, it needs to be improved. In addition, I check messages from users of my company's system. We have a whole department working on solving various problems, and I am part of it. The software platform developed by our company has been implemented in hospitals and clinics, if there are difficulties, users send a request to solve the problem. We are looking into these requests. Sometimes I myself choose the task with which I will work, and sometimes I consult with more experienced colleagues about the choice of tasks.

After the task is fixed, work begins. In order to solve the problem, I find out the origin of the error (after all, there is always a possibility that the cause is a human factor). Having clarified all the details with the customer, I form the terms of reference for the programmer. After the component or module is ready, I test it and implement it into the customer's system.

Unfortunately, most of the tests have to be done manually, since the implementation of automation is a complex business process that requires serious justification and careful preparation. However, I got acquainted with some automation tools. For example, a Junit library for testing a block using the API. And then there is the twin framework from ebayopensource, which allows you to write scripts that imitate user actions, very similar to Selenium, which is used on the web. Plus I mastered the Cucumber framework.

My income at the new place has doubled compared to freelancing - although this is largely due to the fact that I work full time. By the way, according to statistics from hh.ru and other resources, the salary of a developer in Taganrog is 40-70 thousand rubles. In general, these data are true.

The workplace is equipped with everything you need, the office is spacious, there are many windows, there is always fresh air. Plus there is a kitchen, a coffee maker, and of course cookies! The team is also great, there are no negative points in this regard at all. Good work, colleagues, what else does a tester-programmer need to be happy?

Separately, I note that the company's office is located in Taganrog, this is my hometown. There are a lot of IT companies here, so there is room for expansion. If you wish, you can move to Rostov - there are more opportunities there, but so far I do not plan to move.

What's next?

So far I like what I have. But I'm not going to stop - and therefore I continue to study. In stock - a course on "JavaScript. Level 2”, as soon as I have more free time, I will definitely start mastering it. I regularly review the materials already covered, plus I watch lectures and webinars. In addition to this, I participate in the mentoring program at GeekBrains. So, for students who successfully completed the courses and during the time they handed in their homework, there is an opportunity to be a mentor for other students. The tutor answers questions and helps with homework. For me, this is also a repetition and consolidation of the material covered. In my free time, when I have the opportunity, I solve problems from resources such as hackerrank.com, codeabbey.com, sql-ex.ru.

I am also mastering a course on Android development, which is taught by ITMO teachers. These courses are free, if you wish, you can take a paid exam. I would like to note that the ITMO team holds the world championship in programming competitions.

A few tips for those who are interested in programming

Already having some experience in development, I want to advise those who plan to go into IT not to rush into the pool with their heads. To become a good specialist, you need to burn with your work. And for this you should choose the direction that you really like. Fortunately, there is nothing complicated about this - now there are a lot of reviews and descriptions on the Internet about any area of ​​​​development, language or framework.

Well, you should be prepared for a constant learning process. The programmer must not stop - it is like death, however, in our case, not physical, but professional. If you are ready for this - then go ahead, why not?

Source: habr.com

Add a comment