JavaRush /Java Blog /Random EN /The most difficult thing is not to score: the story of Ma...

The most difficult thing is not to score: the story of Maxim Panteleev, who learned Java in 9 months

Published in the Random EN group
Over the past 8 years, thousands of graduates have taken the JavaRush course. Today, more than 1.5 million users from 106 countries are registered on the project website. Not all graduates had time to talk about their successes: how they studied, passed interviews and started working as developers. But current students are interested in learning the stories of those who already work in IT. We took matters into our own hands and launched a special series about developers from different countries and companies who were trained in JavaRush. Our tenth story is about Maxim Panteleev ( Maks Panteleev ). Maxim began his career by working as an investigator for tax crimes at the Ministry of Internal Affairs. But a few years later he quit and tried himself in different fields: he was involved in real estate, worked as a manager in a pizzeria, and drove people by taxi. One day he got the idea to write his own application. How Maxim learned development and why he managed to find a job immediately after training - read in our text. “The most difficult thing is not to score”: the story of Maxim Panteleev, who learned Java in 9 months - 1

“I didn’t even know there were different programming languages”

I was always good at mathematics at school: in grades 8-9 I even went to some olympiads. My parents wanted me to enter MSTU. N.E. Bauman, because our school was connected to this university and it was a little easier to get there. In high school, all this became uninteresting to me, I started drinking “screwdriver” behind the garages with the guys. As a result, I gave up on mathematics and went to study at the Academy of the Ministry of Internal Affairs, Faculty of Economics. I finished my studies and went to work as a tax revenue detective. I worked at this place for 5 years, in 2016 I left there and worked in different places: I worked in real estate, was a manager in a pizzeria, even a taxi driver for a couple of weeks. In 2020, I had the idea to create my own application, so I thought: “Why not learn a language and write it myself?” Even if nothing goes wrong with the application, I can just work as a programmer: sit remotely and receive my 100 thousand rubles. In January 2021, I sat down to study after the holidays and bought myself a book on development. You must understand that I do not have any IT background: I have never been associated with this field, I have no acquaintances or friends from IT. I just went to Yandex and wrote “I want to learn to program.” I didn't even know there were different programming languages. Among the first in the search results was a link to a free trial version of one of the books on Java (“Java Programming for Beginners”, Alexey Vasiliev). The book had a little theory, a little practice like writing Helloworld. I read it and thought: “Oh, cool, I think I understand this book.” I decided not to download the book, because it’s more convenient for me to study on paper, but to go to the bookstore and buy it. The store had books on Python and JavaScript, I took them too, just in case. But since I started with a book on Java, I decided to continue with it. That's why I put those two books aside and never opened them until now. I realized that Java suits me and I don’t want to change anything, I’ll learn it. And even later I realized why Java is needed at all, that you can write an application in it. That is, in essence, I just guessed and accidentally ended up in Java.

“I didn’t understand almost everything all the time”

I studied according to the book for two months. The book is actually ancient, because at some point there was a section with applets, and no one has been using them in Java for 15 years. On the one hand, the fundamental theory is presented quite well, simply and understandably for a person completely unfamiliar with the topic. On the other hand, there are indeed a number of outdated points in the book. After that, I started looking for courses: I didn’t want something very serious with a mentor and a schedule, but I also didn’t want to do it myself. I wanted to streamline my training, but at the same time not be rigidly tied to a specific scheme with grades, reviews and not pay astronomical amounts of money. That's how I found JavaRush. Completed the free level. It suited me financially, the possibility of studying at my own schedule and rhythm, and the interesting presentation. The first few levels were easy for me, because before that I had been studying with the book for two months. I already understood what methods, interfaces, loops, and variables are. Then, naturally, like everyone else, difficulties and misunderstanding of certain topics began. I didn't understand almost everything all the time. I didn’t understand what streaming was, and for a very long time I didn’t want to learn it or understand it. Lambdas also didn’t work out for me right away. Multithreading also blew my mind. Over time, when I got a little more practice, I realized that, in principle, there is nothing complicated. I don't like to be tied to rigid schedules and get very nervous when something goes wrong, so I didn't create any study schedule. Accordingly, I just got up, did my morning chores and sat down to study until I got tired of it. When I got bored, I rested a little, then studied again. Sometimes I could sit for 5 hours, sometimes I could hang out from morning until night. Sometimes I myself was very interested in completing the task, so I stayed late beyond any schedule. On some days, on the contrary, training did not proceed, but then I tried to sit for at least 1-2 hours so that I could go about my business with a clear conscience. Sometimes I studied for 2-3 weeks with almost no days off. During the entire training period, there were literally 2-3 times when I did nothing for a couple of days. Completed all levels on JavaRush by September 2021. Then they were recruiting for a JavaRush internship, where I successfully got in and studied there before finding a job.

“I realized that juniors without experience are incredibly needed”

I had no intention of looking for a job at all. I had a plan to do an internship and only at the end start looking for something. One person who was once actively involved in the JavaRush community said: “Why are you sitting? Go make your resume and look for a job.” I didn’t want to for a long time, it seemed like I wasn’t ready. But then I pulled myself together and literally in one day distributed my resume to 15-20 companies. The next week they started writing to me, calling me, calling me for interviews. I had 4 interviews, I went to each and got a job in one of them. I prepared closely for the technical interview. I spent almost a week trying to improve the theory. I prepared using articles and videos, and under the posts in JavaRush there is a file with questions and answers for the interview. Literally the day before the interview, I read information on SQL and was asked about it at the first interview. I went to two companies and chose Bell Integrator . This is a large IT aggregator that hires developers, assigns them to teams and provides a customer to a specific team. Our team’s client is the Moscow Stock Exchange: we are working on calculating indices for it. My role for the most part is to get acquainted with the project and solve some small tasks that are not of paramount importance. It’s better to get to know the project through them, because it’s huge. Now they give me some errors and I sit, dig, and figure it out. During the hiring process, I realized that juniors without experience are incredibly needed. They are in great demand. I myself thought: “Who needs a person without experience and education?” In fact, there is a huge demand for people without experience for two reasons: first, they can be paid less than an experienced developer, that is, 80-100 thousand rubles, and second, a developer with experience begins to make different demands on the company. He wants a modern stack, interesting work. Not every employer can offer this, so not every employer can hire a specialist with experience. Green June just wants to go to his first job in order to generally understand what is going on. And as soon as a year later he understands what is happening, becomes an experienced developer, and begins to download the rights. That is, for a year or two June is ready to perform boring tasks for fairly reasonable money. At the same time, there are not as many juniors as we think. Those who have unlearned and have confident knowledge. People at interviews see this: there are many juniors, but few who have knowledge. Therefore, if you have sufficient levels of knowledge, getting a job will not be a problem. How do you know that you have achieved it? You can simply open the Java Junior Developer roadmap and look at the technologies. If you know most of it, it's time to go for an interview. If half of you are a dark forest, then it’s worth learning more.

Tips for beginner developers:

  1. Загружайте проекты на Git. Если ваш Git пустой, вы не даете ссылку на Git в своем резюме or там есть лишь пара задач на 4 строки, шансов устроиться на работу практически не будет. Потому что единственное, что может предъявить джун How специалист — это его Git и code, который он пишет. Если у него нет образования и Git, то How вообще понять: разработчик он or нет? На двух собеседованиях открывали мой Git и задавали вопросы по моим проектам: что, How и зачем я сделал. У меня, во-первых, там тестовое задание лежит со стажировки JavaRush — это достаточно неплохой спринговый проект. Он отлично подойдет How визитка для резюме. Я также туда добавил тестовые задания для собеседований, которые мне давали. Если вы получаете тестовое задание от работодателя, то обязательно его делайте, оформляйте красиво и вешайте на Git. Если там все будет хорошо написано, это будет плюсом для вас. Было несколько небольших задач, которые я сам для себя придумал и реализовал. Были мои реализации известных алгоритмов.

  2. Самое сложное — не забить. Разобраться в любой проблеме с нуля можно всегда, просто потребуется то or иное количество времени. Самая большая проблема людей, когда они что-то не понимают — мысли, что программирование не для них, что они тупые, а все умные. Надо преодолеть этот барьер и просто биться над задачей, пока ты ее не решишь. Не получается — отдохни. Зайди с другой стороны. Всегда будет не получаться, но к этому надо относиться спокойно. Если принять мысль, что непонимание — это нормально, это часть профессии в целом, тогда дело пойдет.

  3. Пишите краткое резюме. Не надо много лишней информации о себе. Даже если у вас 700 лет опыта на разных заводах, убирайте это из резюме. Оставляйте пометку “нет опыта”. Все, что надо рекрутерам — это ваши навыки, актуальный стек технологий, которые вы реально знаете, ваши проекты и несколько слов о том, где учorсь, а также упоминание о стажировке, если стажировались.

  4. Не бойтесь собеседований. Я боялся дико своего первого собеседования, потому что был абсолютно уверен, что моего уровня не хватает, чтобы сейчас устроиться на работу. Думаю, что у многих такая проблема. Но если вам откажут, надо попросить совет — что выучить, что исправить. Надо использовать собеседования How этап обучения, чтобы выявить свои слабые места. И залить потом фундамент из соответствующих знаний. Возьмите паузу на месяц, закрепите темы и идите снова собеседуйтесь.

  5. Don't be afraid to contact older comrades. They understand perfectly well that you are a junior with no experience and cannot just go and sort everything out with the snap of a finger. The basic rule for a beginner is to spend enough time on the problem so as not to immediately pull everyone around and so as not to waste too much. Calculate the time you can spend solving the problem yourself before you start asking for help and disturbing your colleagues. There is no need to sit for a week and then say: “Nothing worked out.” And, of course, you don’t need to bombard your mentor with questions 20 minutes after receiving the task.

  6. Find a fellow developer to conduct a test interview with. Challenge each other with questions. This will help you prepare.

Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION