О выборе пути
Программистом хотел стать с детства. Мне всегда были интересны компьютеры: как они работают, что там внутри. А вторая мечта ― стать космонавтом, потому что мой отец служил в космических войсках. Это определило мой дальнейший путь: я учился в Военно-космическом кадетском корпусе и служил в космической части. В военной академии я получил образование программиста.
Об обучении
У нас была информатика в пятом классе: сначала прошла первая четверть, а дальше занятия шли как дополнительные. Я ходил на все уроки, изучал литературу. Книги тогда были дорогие, приходилось читать в библиотеке.
В кадетском корпусе у нас была сильная информатика, плюс я посещал дополнительные занятия. Поэтому в военной академии многое из программы я уже знал. Но высшее образование помогло мне структурировать знания, сформировать цельное понимание, что, как и из чего следует. Второе, чему я научился, ― это учиться. Высшее образование можно сравнить с реализацией проекта.
Про обучение не хочется говорить в прошедшем времени. У разработчиков, когда ты заканчиваешь учиться, ты перестаёшь жить. Здесь технологии обновляются каждые полгода, и надо ежедневно узнавать что-то новое. Если ты не учишься, ты останавливаешься в развитии как специалист и как человек. Поэтому я учусь до сих пор и всем рекомендую.
О трудностях
Главная трудность ― у меня долгое время не было компьютера. Он появился только в одиннадцатом классе. До этого я шесть лет ходил по кружкам информатики и друзьям. У меня было такое программирование на листочке. Пишешь на бумаге, потом приходишь с дискетой, набираешь на компьютере и смотришь. И это непередаваемое ощущение, когда всё работает.
Было время, когда пользовались популярностью приставки «Сюбор». Туда можно было вставлять картриджи, как в Dendy. Ещё там был Basic и можно было программировать. А у меня были только листочки. Я очень хотел разрабатывать игры, поэтому склеивал из бумаги фигурки, делал карты локаций и представлял, как это всё можно будет запрограммировать, написать 3D-движок и математически вычислить способы взаимодействия объектов.
О начале карьеры
У меня интересный карьерный путь, который позволил с разных сторон прикоснуться к программированию. В первую очередь я офицер запаса, я служил. До службы у меня был первый рабочий опыт в кадетском корпусе. Тогда я заработал первые 200 долларов, написав для небольшой фирмы базу данных на С++.
После того как я уволился из вооруженных сил, я работал в образовательном проекте Лаборатории Касперского. Занимался веб-разработкой и преподавал основы вирусного анализа. Затем сменил вектор ― пошёл в техподдержку, в администрирование серверов, настройку инфраструктуры. Я немного отошёл от программирования, но получил много знаний, которые помогли в строительстве сложных распределённых систем и интеграций.
После этого я ушёл в маленькую веб-студию, где было пять человек. Там снова погрузился в разработку, в различные стеки вплоть до мобильной разработки. Потом я пришёл в GeekBrains и уже работаю здесь.
О лучших проектах
Я горжусь своей первой работой на С++. Из глобальных проектов, в которых я принимал участие, могу выделить антивирусную школу. Это был образовательный проект для Лаборатории Касперского. Его концепция сильно опередила время, это было более десяти лет назад. Тогда не у всех был хороший интернет, чтобы принимать участие в онлайн-конференциях. Но мы сделали это, и было много участников, и был открыт филиал в Польше, всё выходило на международный уровень. К сожалению, сейчас проекта не существует. Но с тех пор я кручусь в EdTech и продолжаю свой путь в GeekBrains.
О работе в GeekBrains
Я руководитель группы разработки. Моя работа ― соединить все процессы, которые дают конкретный результат. Мы работаем по Agile, у нас есть Scrum-доски, множество церемоний и ритуалов, backlog grooming, ретроспектива. Есть спринт, когда мы за неделю-две должны реализовать определённые задачи. Чтобы спринт с чем-то ассоциировался, мы стараемся назвать его в честь крылатой фразы или фильма.
Про свою команду могу рассказать забавные истории. В разработке есть термин «метод резиновой утки». Иногда разработчик говорит: «Не могу решить проблему». Я сажусь рядом, он начинает объяснять, я молча слушаю. Вдруг он находит ошибку. И в этом заключается метод резиновой утки: ты берёшь персонажа и объясняешь ему проблему, как своей бабушке. И в процессе ты максимально упрощаешь, начинаешь видеть шире и решаешь эту проблему. И вот ребята подарили мне резиновую утку, которая всегда со мной.
О найме сотрудников
Самое главное ― это общение. Для меня важнее, чтобы у человека горели глаза. Из недавних историй: я собеседовал человека, дал тестовое задание. Через два дня он присылает результат, а там не сделано и 10%. Но этот человек подробно прописал, что он сделал, а что не смог сделать. Он написал: «Я понимаю, что не могу пройти ваше тестовое задание. Но я обещал вам прислать, и я прислал». И мы взяли этого человека на работу, он очень замотивирован, он старался всё сделать и честно сделал.
Разработка ― это командная работа. Если человек очень замкнут в себе, но он классный специалист, ему всё равно будет тяжело. Я придерживаюсь правила, что проще нанять новичка и научить его программированию, чем крутого, но неразговорчивого специалиста.
О том, как освоить программирование
Для обучения программированию есть огромное количество возможностей, вплоть до специальных тренажёров на телефоне. Какой путь предстоит пройти ― это уже индивидуальный вопрос.
- Выучиться на джуниор-программиста и получить первую работу ― это в среднем от полугода до года.
- Дальше всё зависит от личных качеств, компании и ментора. Если ты будешь разрабатывать огромные приложения, которые используют server site rendering, последние технологии, то рост будет молниеносным.
Я бы рекомендовал начать изучение Си-подобного языка, например PHP, JavaScript. У них низкий порог вхождения, при этом они продолжают развиваться. Постоянно выходят новые фреймворки, новые библиотеки, всегда есть вакансии для разработчиков на этих языках.
А ещё на PHP и JavaScript можно полностью реализовать проект. Это как раз те языки, которые позволят сделать полноценный сайт для портфолио. Работодатели всегда смотрят работы кандидатов, а вам уже будет что показать. Это может быть хорошим аргументом, чтобы вас взяли в компанию.
Советы начинающим
В начале пути программистам часто говорят, что нужно выбрать вектор развития, специализацию. Я не разделяю это мнение, потому что все языки программирования подчиняются общим шаблонам и правилам, имеют примерно одинаковые процессы. Если ты изучишь один Си-подобный язык, его структуру, инструментарий, ты сможешь быстро освоить любой новый язык.
Начинающим специалистам на рынке не хватает уверенности в себе. Когда я сам начинал, у меня были моменты выгорания, я спотыкался, не мог найти решение, и меня это сильно демотивировало. Мне не хватало веры в себя и в то, что всё обязательно получится. И я вижу, что у многих ребят тоже нет этой веры. Человеку, который решил встать на путь разработки, но сомневается и боится, я бы сказал заезженные фразы: «Дорогу осилит идущий» и «Не ошибается только тот, кто ничего не делает». Самое главное в работе — нормально делай, нормально будет.
У вас тоже получится
Разработчик — первая программа обучения для осознанного выбора специальности и карьерной траектории в сфере информационных технологий от GeekBrains при участии Skillbox.
Получите востребованную профессию и актуальные знания в цифровых технологиях.