Найти в Дзене

Зачем нужен наставник?

Оглавление

Поговорим немного про «обучение с учителем» (machine learning тут не при чем). Один успешный парень делится мыслями, почему важно найти хорошего наставника и как он может изменить ваш подход к образованию. Этот парень — сейчас наш сотрудник, один из преподов Кодемики.

Получается своеобразная ретроспектива с благодарностями — про детство, вуз и работу.

Рассказывает Михаил Крючков — преподаватель, аналитик и IT-архитектор Кодемики.

Изучать программирование начал еще в школе, параллельно занимаясь различными смежными технологиями. Интересовался как паскалем, делфи, C# и ассемблером, так и администрированием операционных систем и компьютерными вирусами.

Этим летом я защитил магистерскую диссертацию по направлению ИВТ в одном из ведущих технических вузов в РФ. На этом я решил закончить часть с формальным образованием и на полном ходу включиться в профессиональную деятельность.

В такие переломные моменты невольно вспоминаешь весь тот путь, который проделал ранее, чтобы оказаться там, где находишься сейчас.

Мой путь начался ещё в школе

Я стал интересоваться компьютерами и всем смежным. Но не игрушками, а тем, как это всё устроено, как работает.

В старших классах я начал изучать программирование и сопутствующие области. Интересно было всё — компьютерное железо, программирование на различных языках, операционные системы, компьютерные вирусы и т.д.

В любом обучении половина успеха заложена учителем

Сильный наставник рядом — необходимое (хоть и не достаточное) условие для достижения существенных успехов. Такими наставниками в свое время для меня стали Роман Грушенков и Леонид Андриевский, сейчас вы можете видеть их в числе преподавателей Кодемики.

Помимо получения технических знаний и навыков я учился решать прикладные задачи, мыслить «как настоящий программист» и всегда достигать необходимого результата.

Все преимущества фундаментального подхода в обучении (пусть даже дополнительного к среднему образованию) я по-настоящему оценил уже в вузе. С его выбором мне также помогли наставники — я не боялся поставить амбициозную цель и двигался к ней на всех порах.

На протяжении всех шести лет я был на шаг впереди потока по профильным дисциплинам, что позволяло уделять время более интересным или важным предметам. Причем здесь фундаментальность? Если знания подаются в общем виде и подкрепляются конкретными прикладными примерами, возникает следующая синергия: опыт не даёт забыть общее, а общее позволяет решать любые другие частные случаи за пределами опыта. Знания, таким образом, становятся универсальным инструментом.

Толчок в карьере не заставил себя ждать

Леонид Владимирович научил меня языку языку C#, который я использую в работе по сей день. Работу же выбираю не исходя из финансов или удалённости от дома, а лишь из собственного интереса к делу.

Отмечу, что само по себе программирование в отрасли ничего не даёт. Программист (кодер) лишь заставляет компьютер делать то, что нужно. В реальной работе всегда необходимо не просто писать код, а решать прикладные задачи. Это инженерный подход, аналитическое мышление, способность к гибкости ума и постоянным поискам новых решений исходя из непрерывно меняющихся условий.

Так вот, смотря теперь на весь этот путь, невозможно не испытывать благодарности к моим учителям за то, что я смог почерпнуть с их помощью.

Что делаю сейчас

Работаю full-stack разработчиком в компании Cognitive Technologies и Леонид является моим непосредственным руководителем — тим-лидом и, конечно же, наставником.

Именно он старается дать мне те задачи, решать которые я ещё не умею, но в состоянии разобраться самостоятельно или с его помощью. По крайней мере, вопросы из серии «Как сделать лучше: так или вот так?» всегда приветствуются — в отличие от вопросов вроде «Покажите, пожалуйста, решение и сделайте заодно мою работу за меня».

Только придя в команду, я получал маленькие и простые задачи, связанные, в основном, с исправлением ошибок или расширением уже написанной функциональности. Постепенно сложность задач росла и теперь я решаю проблемы уровня целого модуля или инфраструктуры — тех частей большого решения, которыми в последствии пользуются другие разработчики в команде при решении своих частных задач.

На таких мета-задачах и требуется весь опыт и знания в области архитектуры ПО, шаблонов программирования и оптимизации работы ПО. От моих решений зависит удобство и эффективность работы других участников команды.