corporate training at MTS Theta

We have simultaneously simplified the learning process for everyone: both for students and for managers who are looking for new talents. Today I will talk about our project, and four colleagues who have already completed (or developed!) our courses will share their thoughts.

Who do we train

Our company employs more than 8 thousand IT specialists, and we try to help them develop their skills. To do this, we launched MTS Theta, a structure that specializes exclusively in IT education. Courses should benefit the company, help specialists continuously learn, and make their career and educational path transparent.

Everyone wins: we focus on IT when working with courses, it is easier for the company to train staff, and the employees themselves do not have to look for educational programs somewhere outside.

Bonus: networking, exchange of experience, getting to know the products of other teams within the company. Students work together on projects, mentors (the same employees as students, only more experienced) support their graduates.

We develop courses in all key areas: Go, Java, JavaScript, Python, mobile development, DevOps, DevSecOps, C#, QA, SRE, architecture, data science, AI, generative AI.

Training formats

MTS Theta offers two formats for employee training, they should be familiar to you: synchronous and asynchronous.

  • Synchronous courses are similar to the university format: lectures, seminars, “semester” lasting 3–6 months. There are also entrance exams. Checking homework and mentoring require the teacher’s time and energy, which, unfortunately, are limited. Therefore, out of 500+ applicants, we select about 80 students. Instead of final exams, there is a final project. In product training, the main thing is that the student is able to apply knowledge in practice when solving problems.

  • In an asynchronous format, an employee can learn everything he needs at a time convenient for him and at a comfortable pace. All training materials are available in our LMS. With this structure of the educational course, it is impossible to get help from a mentor, but everyone can turn to more experienced colleagues for help in the guild chat.

MTS Theta: we help find talents

During training, we also identify HiPo specialists – active, purposeful, independent guys who want and can do more. HiPo strives to take on tasks at the next level (for example, a junior takes on a middle-level task). And he doesn’t just take it, he also decides on his own. Such specialists will become the future of our company, the main thing is to give them more opportunities.

And, of course, Theta is a chance for teachers to improve their personal brand, share their expertise, try themselves as a mentor, and practice public speaking. And also – to learn something new or remember a well-forgotten old one. But teachers will talk about this in the following blocks.

A teacher's perspective

Vladimir Mikhailov

Leading QA Expert

If you can’t learn something, it’s better not to waste time on it

When I, a recent student, came to get a job at an IT company, I was offered a choice between development and testing. Like, you’re still a blank slate, whatever you want, that’s what you’ll become. I asked where it would be easier to get comfortable? That's how I got into testing.

“We are not looking for easy ways” – this is not about QA. We don't just look for easy ways, we even look for easy ways to find easy ways. The job of a good tester is to find ways not to do something. Where to replace manual tests with automated ones, where to use which framework. Of course, there are a couple of nuances:

  1. The easy path should lead to the same place as the difficult one, only faster. The quality of work should not suffer from professional laziness.

  2. Sometimes, in order not to work, you must first work hard.

We launched a course on QA at MTS Theta when we realized that there was too much manual testing in MTS Digital. I wanted to help people get out of this routine. Because in fact, few people want to do it and few places need it. Usually people simply don’t know that there is any other way.

I tried to include in the course only what I couldn’t do without. If you can’t learn something, it’s better not to waste time on it. But even the most necessary things turned out to be a lot. There is also basic programming – which is basic for me, but for a person without experience – a dark forest. There is both a general testing methodology and specific technologies.

I have 15 years of experience in QA. For the last 8 years, I have also been involved in targeted mentoring and coaching – helping people solve their problems: managerial (helped to grow into a leader and develop the necessary skills) and technical (automated testing and built the testing process from scratch). This is also why I decided to teach at Theta.

It turned out that developing a full-fledged course is a task of a completely different level of complexity. I had to systematize my 20 years of experience, throw out what was superfluous, and fill in what was missing. Because no matter how much experience you have, you still don’t know some nuances or you’ll forget them. As they say, if you want to truly understand something, try to explain it to another person.

When teaching students, I tried to explain to them when it is okay to be lazy and when it is not. When approaching a new concept or technology, I immediately asked – why do you need to know this? Or maybe it’s not necessary? It is important that students themselves understand how specific knowledge will be useful to them.

The course had two streams (Java and Python) of 30 students each. Another two dozen were “in reserve” – in case someone fell off. Total 80. A total of 500 applications were submitted – because everyone loves to learn and everyone was interested. But we selected those who could benefit most from our course.

We spent three months learning the basics of programming. We got a little overboard with the final coding project. It was necessary to write a small card game in the console, and although everything was outlined step by step, many students were afraid: “how is it, I’m doing the whole game?” In the next thread, we will rebuild the structure of the remote control so that the final project is written gradually.

The next three months are the actual testing. We divided the material into seven blocks – web testing, mobile testing, and the like. To successfully complete the course, you had to pass the DS in four blocks to choose from. There is no point in studying everything at once: we gave students the opportunity not to waste time on what they can do without for now.

Not all students completed the course and successfully passed all assignments

I was dissatisfied: in the process of developing the course, I read smart articles with statistics and expected 50%. But it was difficult for some to start, while others fell off course altogether. Naturally, mentors tried to actively communicate with their mentees, help with tasks, and support.

After the course, my colleagues and I realized that we need to work more actively with student motivation.

Numbers are numbers, but they do not measure the most important thing – emotional impact and interpersonal connections. We became very close to the students. The course was intense but fun. To keep everyone's attention, we tried to place jokes in strategic places, and students threw out thematic memes in the chat.

Personally, running the course gave me two things. First, I made sure that this task was up to me. And secondly, it was very cool to bring real benefits to people. Not to some abstract users for whom my tests will indirectly improve UX, but to my junior colleagues with whom I communicated face to face.

Theta as a tool for the development of technological culture

Sergey Chepkasov

Leading QA Expert

The course was not taken by individuals, but by teams

Performance testing is often not given enough attention, although in theory everyone agrees that it is a useful and important thing. A similar approach is permissible for a small website or a barely fledgling startup. A large IT company should not allow this to happen. Performance testing is one of the important indicators of technological maturity.

MTS has a global strategic goal – 100% test coverage of all critical products. Now things are going… unevenly. In some teams, performance testing has been carried out for a long time and successfully. Others understand that this is needed, but lack competencies, testers or other resources.

I've been doing performance testing for the last five years. I worked in two, probably, the largest service teams of this profile in Russia.

My first teaching experience was two years ago, when a colleague asked me to substitute for another teacher on a course at my previous company. When I came to MTS, I brought this experience with me – and came to the conclusion that we can develop a culture of load testing from the inside, giving the necessary competencies to local employees. I contacted the Theta team and asked them to help me organize the course. I had my own interest in this. So I wanted to kill three birds with one stone:

  1. Connect all significant products to the performance testing process;

  2. Train as many teams as possible: there is a desire, but no expertise;

  3. Close the issue with similar tasks in Jira for testing. They moved teams from quarter to quarter with comments about the lack of resources, time, and competencies.

During training at MTS Theta, we often test hypotheses or experiment. For example, the course was taken not by individuals, but by teams. From each critical product, people were allocated who should take on performance testing. Some people still came from one person, from others – groups of five people. In total, 32 teams came to study—about a hundred people.

As homework, write load tests for your real application

We divided the course into three blocks. The first block contained theory – they talked about approaches, best practices, and how to correctly build a testing methodology. But already at this stage we began to think about the ultimate goal. Each team had to develop a testing strategy for their product. They submitted these strategies as DT, mentors checked them, and gave recommendations. It was important that mentors were assigned to each team, immersed in the context of a specific product and helped to achieve the best result.

In the second block there was practice, and here it became even more interesting. How are similar courses usually structured? They either talk about one specific technology, or review all technologies at once. But we didn’t need erudites who had picked up the skills, and not adherents of some framework. We tried to prepare specialists who would do load tests for their own product.

Therefore, we divided our 32 teams into 4 subgroups, depending on the specifics of their products. Each subgroup was given one of four popular tools – Locust, K6, Gatling and JMeter. By the way, Locust was not initially included in the program. But the students voted in the chat, the teachers agreed and voila – another tool.

As homework, write load tests for your real application. About half of the students have already completed the task.

The third block was about what to do with test results. About analysis, finding bottlenecks, writing reports. And as a final project, students took the strategy from the first block, tools and tests from the second, knowledge from the third – and developed a holistic performance testing process, with analysis and pipelines.

The first stream ended on December 21. But we were pleased with the results, and we decided that the course would become regular.

Now I’ll tell you more about the results.

  • Out of 32 teams, 2 fell off during the process due to a high load of business tasks;

  • 13 teams managed to complete the testing, prepared the first reports with the results and received recommendations and reviews from mentors by the end of the course;

  • Another 6 teams completed their projects in January 2024;

  • The remaining 11 teams are still in progress; most have already passed the preparation stage, developed scripts and are ready to test. Now they are facing a review.

The course is only the first step in developing a culture of product performance testing in the company. Now the teams have received a theoretical basis, formed a testing strategy, mastered one of the tools for generating loads, developed the first scripts and conducted the first tests. The mentors outlined a path for further development for each team.

It was only during the course that many of the students first encountered the need to formulate non-functional requirements for their products and set up monitoring. And this in itself is useful for their products.

We realized that learning directly from our product is a big plus for our students. In fact, they completed a work task and increased the technological maturity of their products. And at the same time we learned something new.

If one team managed to copy from another, great!

Another important result of the course: the living community we created. Students and teachers, united by a common goal and interest, communicate and share experiences. Sometimes students suggested something interesting that their teachers didn't know about. For example, before the course, I was superficially familiar with K6 and Locust, but learned more about them as I interacted with students and checked their homework.

Cheating is also officially allowed in our course. If one team managed to copy from another, great! This means that a common work process is being built, networking is underway: this is exactly what we need.

Now the company assembles the testing process for each product from scratch, based on open tools and practices. But Theta helps create company-wide standards. This means that the implementation of widespread load testing will be much easier.

Theta for changing professions

Olga Novokoshonova

Systems Analyst

Theta course materials are much more useful than a printed textbook

I have an economic education: first I studied at college to become an accountant, then at university with a degree in World Economics. The position I took at MTS was related to economics quite indirectly – a combination of analytics and project management. I worked in a department that connects marketing and IT billing settings at MTS. We customized products (for example, new services or tariffs) to work as internal customers requested.

I'm a curious person. Well, that is, by IT standards – normal. I have long been attracted to the work of a systems analyst for its structure and the need to delve into details. I also like the opportunity to see the results of my work: here I was doing something with the team, and here is a new feature that has appeared. Therefore, when I heard about the selection for the School of Systems and Business Analysis (SSBA) in Teta, I immediately signed up there.

For my level of knowledge at that time, the selection was not easy: I knew nothing about the interaction of systems, I had a basic understanding of the SQL in which I had to write a query, and only with the help of logic I solved algorithmic problems. I had to sweat. Some of my colleagues also decided to participate, but not all of them made it. I was one of the lucky ones.

SSBA was very different from my experience of “formal” education. At the university we had a lot of theory, but from practice we only had a thesis, one for four years of study. The SSBA course lasted four months, and half of that time we worked on a final project.

Another difference is the attitude of the teacher. We had a curator whom we could always turn to for any educational issue. There was no need to hunt him down from the pulpit and he was always ready to help. I also liked the educational materials. There were not just general words – the teachers put personal experience into them, cases from which they gained knowledge and found optimal solutions. This is much more useful than a printed textbook.

And finally, the atmosphere. After completing the course, I still keep in touch with the teachers. Despite the intense program, they taught us in an informal style, a lot was explained using memes, cats, and figurative examples. For example, the difference between synchronous and asynchronous interaction was given using the example of a cafe. A synchronous request is when you order coffee and wait at the counter for it to be brewed. Asynchronous is when you sit at a table and read a book on your phone, and when the order is ready, they will call you.

The final project is not just part of your studies. In its finished form, it has become an artifact that can be presented when applying for a new position. Thanks to him, I was offered a transfer with an increase in salary, and I became a systems analyst.

One of the first tasks in the new position was setting up integration. It was necessary to display information from another resource on our website page. API methods from colleagues from another resource were ready and for an experienced analyst this would be a straightforward and simple task. But for me it ended up with an asterisk.

I constantly ran into obstacles: different names for essentially identical query parameters, parallel undescribed modifications on the part of that team, discrepancy between real data and planned data. I think this would confuse anyone. But everything worked out thanks to the base I received during my studies.

I plan to work and gain experience over the next year. And then – who knows. I still want to learn and grow. Now I am looking with interest towards solution architecture: analyzing business requirements and designing a product based on them, choosing the optimal technologies seems very interesting.

Theta for learning new things

Yaroslav Nasonov

CTO

I was afraid that after my research, the course would not be very useful to me. But the program turned out to be very powerful

I got to MTS through Moove — a joint educational project with Skolkovo Business School. From there I was hired as an intern at MTS Developers. Soon I rose to the rank of project manager there, and then moved as CTO to Clutch.

Clatch is a women's calendar app. This is a rather unobvious project for MTS, since it is not integrated with other services and is not distributed under the main brand.

When I started working on Clatch, it was an oversized MVP. Initially, the application was made by a third-party team at the request of MTS, after which they decided to move the development in-house. The application was created on the Ionic + Capacitor stack, which is not a priority for MTS. There are few specialists in it, it works worse than we would like. And in any case, due to the fact that this is an MVP overgrown with features, there is a lot of technical debt and legacy code. This means it’s better to rewrite it on a more suitable stack.

I started looking for the optimal technology for this. Only cross-platform, well-supported solutions were considered, and the choice was narrowed down to two options – React Native and Flutter.

There are many articles online comparing these technologies (for example, once, two, three).

For me, the defining criteria were:

  • popularity: I didn’t want to run into difficulties with selecting a team, but in Russia Flutter more popular so far React Native;

  • performance: we have Design First-an application in which everything should work smoothly;

  • performance: by this parameter Flutter ahead React Native, slightly inferior to Native;

  • development speed: write in Flutter turned out to be faster.

For about six months I studied Flutter on my own and pestered my colleagues with questions. And then I found out that Theta was planning a Flutter course for beginners.

What is the problem with independent learning: you come up with tasks for yourself. And they don't always correlate with the theory you're going through. For example, in theory they show you how to make dynamic lists, but the application you created for yourself doesn’t have them at all. With more systematic training, this problem does not exist. In six months, I learned the basics, which were enough for some simple things, like an application with flashcards.

I was afraid that after my research, the course would not be very useful to me. But the program turned out to be very powerful. There were guys stronger than me, for example, with different front-end frameworks. I found myself somewhere in the middle—not quite a beginner, but I still don’t understand everything.

I deepened my knowledge a hundredfold during the course. I began to understand, for example, how streams work and what they are needed for, and the principles of application architecture.

What impressed me about the course was the intensity and emphasis on practice. We made a messenger as an educational project, developing it iteratively. At the first lesson, we were shown how to make screens, buttons, and how to connect to the database. Then they told us to bring an already working messenger to the next lesson. And we really did bring it.

After the course and self-study of the technology, already understanding the pros and cons, I defended the idea of ​​​​making a new version of Clatch on Flutter. We have now hired a team and are preparing a new cool version of the application for users.

In general, if you look at our training from a bird's eye view, Theta is an excellent tool for quickly immersing yourself in a new technology and consciously managing product development.


Maxim Yarovoy

Head of MTS Teta

MTS Teta is a place where the interests of business customers and IT specialists converge

The employee wants to learn. The company wants the employee to master technologies that are important to it. As a result, we synchronize the training process, taking into account the needs of employees and managers.

Our goal is to help employees develop their skills and abilities and build a transparent career path. Our courses appeared last year, but there are already very good results. In general, if you find yourself in MTS, come and study with us 🙂

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *