Godel continues recruiting for Mastery internships in various divisions, after which you can start a career in an international IT company.

How to successfully pass an interview? How does the learning process work? Why is it important to gain practical experience? What happens after the internship? We asked these questions to an experienced Mastery mentor and coordinator at Godel Vilnius, Senior JavaScript Software Engineer Pavel Drazdou.

Tell us about your experience as a mentor. How did you start?

At first, I studied at a lyceum, I was good at math and physics, and then I went to university and studied to be a programmer. In my second and third years, I did internships that were available in my city. After completing one of them, I stayed in the company and started working.

My path in IT was simple and straightforward – there was a tactic, and I stuck to it. For the first time, I tried myself as a mentor at the university – we had a lab, and did some very simple things, but I was interested in working with students and got mentoring experience. I participated in all Godel Masteries: somewhere I was a mentor, and somewhere I helped write tasks for the project. Now I participate in the Mastery as a coordinator – I deal with administrative matters and at the same time conduct interviews, I also wrote a test for it.

Some Mastery candidates found the test quite challenging. What do you, as its author, have to say about this?

The test is both difficult and easy at the same time. We invite candidates without knowing what knowledge they have. The test had to be designed in such a way that a person could be assessed based on their answers to a certain number of questions. If candidates answer 70% of the questions, we invite them to an interview. The test helps determine the level of candidates’ knowledge – what topics they know well and which of them not so much. I analyse how candidates answer – I can understand whether they made a mistake because they fell into a trap, basically understanding what the question was about, or they just answered at random.

The test has both very simple and very difficult questions. If a person cannot answer the simplest questions, this is already a warning sign. The test may seem difficult because it contains questions that a certain percentage of candidates will not answer – this is already a high level. It is impossible to know everything, and the test is very extensive. It is impossible to prepare for a test focused on different knowledge – we can evaluate candidates as objectively as possible.

What does the learning process of Mastery look like?

The first week is an immersion into work, getting to know the company and the mentor. Interns are given labs for independent study – topics that they will encounter on the project and that need to be improved. Most often, people who come to Mastery have knowledge, but no experience.

In the first two weeks, we explain team interactions: what they are built from, how we divide the work, work with tickets, and what we do with problems if they arise. Now on JavaScript Mastery, we are making an educational news portal: we show the interns what functionality we need to make, and what we should receive in three months. We tell them that we will work agile and that we will have weekly sprints, and meetings of different content.

In the third week, work begins on the project, which already has daily meetings, planning, retro, demo, backlog, task tracker, repository, and a team lead, who explains what we will do. This week is a warm-up: the guys figure out who knows what topics well, what topics not so well, who they can come to with a question on this or that matter. We also need to set up a project – this is also the interns’ task. After that, sprints begin – ten of them over three months. After that, the interns fix bugs in the features that they managed to make, we prepare for the demo to show what a beautiful product we have made – a kind of project defence takes place.

At the last Mastery, even the Head of our division was present at the demo. The team talked about the technical side of the issue, held a demo of the product, and divided into groups. One group talked about the backend, another about the frontend and the third about the infrastructure. At the end, they were asked technical questions as engineers: what would they improve, why they chose this and not another.

You mentioned a news portal as a project. Do interns work with real or test projects on Mastery?

At Mastery, we hire people who have good knowledge but almost no experience in production: doing a project yourself is not the same as doing it in a team. Theoretical knowledge is not enough to code on a project. This is a test project in the sense that it will not be published anywhere. Previously, we created modules for our internal systems, but the experience was not considered very successful. When you work on a customer’s project, you focus on their needs. And when you do a training project, you focus on code. In Mastery projects, there are things specially created for learning. This is an extract from production projects, something that you can potentially encounter – this is a concentrated development experience.

During Mastery, interns are assigned an individual mentor. What does this look like in practice?

Each intern is assigned a mentor. It happens that one mentor has several people – it depends on the workload and the number of people. If the team lead does a code review, fixes different things and explains how to fix them, then the mentor is a person you can ask questions to. They communicate with them personally, and regular syncs are held once every one or two weeks. The mentor assesses the intern’s level of knowledge so that the team lead understands which technology the person is lacking in and whether it is worth giving him more tickets on a particular topic.

Since the project is educational and everything is scripted in advance, we have, in our opinion, its ideal implementation. In essence, the mentor is a role model for the intern. He answers questions about the project, helps find training materials and directs in the right direction in line with the technologies that need to be studied on Mastery.

What JavaScript stack do you work with on Mastery?

Now on the project, we will have React, Node.js, Express, SQL database and Prisma. Sometimes we use libraries. There are things that no one writes from scratch – this is a very large complex task. On Mastery, we try to write as many things as possible ourselves, so that interns can “touch” everything. Express is a slightly outdated framework, now they use another one more often. But we are pursuing the same educational goal – you can write a lot of other things on top of it to get closer to Nest.js and Next.js.

What happens to Mastery graduates who are hired as Juniors at Godel? Can they get into the project right away?

When we take people to Mastery, it’s obvious that people will come without experience, but with knowledge, and we will be able to train them additionally. Some interns are taken to the project at the internship stage – but it’s an exceptional case when we see that a person is ready to work as a Junior. In standard situations, the intern passes the interview well after training, the team lead gives fair feedback, and we make an offer for the Junior position. After that, the person waits for the moment when they will be called to the project.

What does it take to successfully complete an internship? What advice can you give to candidates?

As a rule, those who have motivation do very well on Mastery. And persistent, constant work beats talent. Talent and persistent work are the best combination. But if you have talent, but do nothing, you will be surpassed by someone who works hard. Our programme is not Olympiad tasks, these are real things that you constantly encounter in your work. It consists of 80% routine tasks and 20% complex, engineering ones, where you need to work as a detective to solve them.

A methodical approach gives results. It is better to do a little every day than to try to learn everything in an unrealistically short time. You need to work on Mastery every day, without sitting until night, without going into debt to your body.

Students are often afraid to ask questions and take the initiative. But where could you get bumps? We often like to talk about successful experiences, but we are embarrassed by unsuccessful ones. But on Mastery we don’t have grades – only the result is important. An internship is a place where you can make mistakes, and nothing will happen to you for it.