Юрий Тарарин: «Не стоит выбирать профессию за то, что она – модная»
Разговор начался необычно: с обязательного условия, что тема беседы должна быть интересной, а общаться собеседники будут по имени и на «ты».
– Очень непривычно! Можно, я буду обращаться к вам на «вы» по имени?
– Можно, но тогда и я буду обращаться к вам так же.
– А почему у разработчиков принята такая форма обращения? Ведь к незнакомому или старшему человеку надо обращаться на «вы» – этому учат еще в детских садах.
– Так исторически сложилось. Это помогает установить доверительные отношения между коллегами, создается ощущение принадлежности к большой ай-ти-шной семье. Вы же обращаетесь к родителям, родственникам и друзьям на «ты», даже если они старше вас? Вот и здесь то же самое.
– А почему вы сказали, что тема беседы должны быть обязательно интересной?
– Она должна быть интересной для вас. Результат интересной работы всегда получается лучше. А мне приятно отвечать на вопросы, которые действительно интересуют вас и ваших сверстников.
– Тема выбора будущей профессии нам интересна – скоро поступать. Чем занимаются IT-специалисты разных профессий?
– Прежде чем говорить о профессиях, стоит вспомнить о жизненном цикле программного обеспечения. Он есть у любого материального продукта человеческой деятельности, будь то автомобиль, телефон или какая-нибудь «приложка» (приложение на смартфоне – прим. автора).
Возьмем для примера обычный дом. Сначала должна возникнуть необходимость в его постройке. Затем он должен быть спроектирован – необходимо продумать количество этажей и комнат, выполнить чертежи, составить смету и план работ.
После того, как дом построен и заселен, работы не прекратятся – его продолжат обслуживать, выполнять ремонт, возможно будет выполнена перепланировка или к дому сделают пристройку. Работы эти могут выполняться регулярно, а могут быть приостановлены или возобновлены, но закончатся они только после того, как дом будет снесен. На различных этапах жизненного цикла продукта работы выполняют специалисты с разной специализацией.
– Но ведь дизайнер может понадобиться и на этапе составления проекта нового дома, и спустя годы, когда новые хозяева захотят сделать перепланировку помещений?
– Верно. Специалисты с разными квалификациями объединяют в группы для выполнения задач, присущих тому или иному этапу. В IT такие группы называются командами. Состав команды может меняться.
По сути, при разработке программного обеспечения этапы те же, что и в примере с домом. Они могут по-разному называться, могут иметь разный состав работ, но последовательность всегда одна: идея -> анализ -> проектирование -> создание -> ввод в эксплуатацию -> поддержка и сопровождение во время эксплуатации -> вывод из эксплуатации.
– Возможно, следующий вопрос покажется наивным: какой из этапов наиболее важен?
– Не такой уж он и наивный. Важно понимать, что нужны все этапы: нарушение на любом из них может привести к созданию неработоспособного или не востребованного продукта.
Например, в компании, которая занимается разработкой программного обеспечения для смартфонов, кем-то, кто определяет цели разработки, поставлена задача – реализация коммерческого приложения-будильника для Android. Дальше технологи описывают требования, проектировщики готовят проектное решение, программисты выполняют реализацию и исправляют ошибки, выявленные тестировщиками. Наконец новое приложение публикуется в GooglePlay, а спустя несколько месяцев оказывается, что оно не популярно среди пользователей. Выполненный анализ показывает, что в магазинах приложений есть десятки бесплатных аналогов, пользователи смартфонов отдают предпочтение им.
Это надо было выявить на этапе проектирования – и либо предусмотреть функциональность, существенно отличающую новое приложение от ранее созданных, либо отказаться от реализации.
– Помимо программистов, вы упомянули технологов, аналитиков, проектировщиков и еще кого-то, кто ставит задачи… в чем особенность работы этих специалистов?
– Я вспомнил одну шутку. Кандидату на должность в IT-компании предлагается закончить наполовину собранную игрушку-головоломку. Если собрал – становится программистом, если разломал – тестировщиком, если смог показать, что для решения недостаточно деталей – аналитик, если попросил инструкцию к головоломке – технолог. Ну, а если сказал, что наполовину решенная головоломка – неплохой результат, это будущий менеджер по продажам.
На мой взгляд, в этой шутке очень удачно описаны особенности основных специальностей. А должности специалистов, выполняющих схожие функции, могут различаться в разных командах или компаниях, в которых они работают.
Моя должность звучит как «Ведущий инженер-проектировщик внедрения».
– «Ведущий» – это тот, кто вводит в эксплуатацию?
– Не совсем. Специалисты одной профессии могут обладать разным опытом и квалификацией, соответственно способны выполнять разные задачи.
В нашей компании специалист может быть «обычным», «старшим», «ведущим» или «главным». Новички обычно трудятся на должности специалиста и всегда работают в паре со «старшим» коллегой. Ведущий специалист должен не только обладать компетенциями, но и делиться своими знаниями, например, в качестве консультанта на этапе проектирования или эксперта при решении нетиповых задач. «Главными» становятся лучшие из профессионалов, таких специалистов единицы, они привлекаются к решению самых сложных задач.
– Вы сказали, что новички всегда работают с кем-то старшим. Это особенность вашей компании или общепринятая практика?
– Помните, мы с вами говорили о командах? Специалистам, работающим над одной задачей, приходится взаимодействовать: разработчику может понадобиться помощь в воспроизведении ошибки, которую выявил тестировщик, а технологу при составлении тех. задания может понадобиться консультация программиста. Поэтому удобнее работать группой. Группа может формироваться на старте или переходить в неизменном составе из другого проекта. В каждой такой группе есть тим-лид (англ. Team Leader – руководитель команды, прим. автора), который выполняет роль, схожую с капитаном футбольной команды.
– Какие дисциплины могли бы помочь школьнику на пути к профессии разработчика программного обеспечения?
– Непростой вопрос. Какое-то время назад я бы сказал, что наиболее важными являются точные науки: математика, физика, информатика, а гуманитарные и общественные науки не так важны.
Сейчас же мне кажется, что будущий разработчик должен быть эрудитом. Выделять одни школьные предметы, пренебрегая другими, в корне неправильно. Безусловно, необходимо иметь навыки работы с компьютером и знать языки программирования, но подчас умение грамотно, свободно и четко излагать свои мысли важнее способности быстро написать код программы или предложить решение нетиповой задачи. В процессе работы может понадобиться изучение документации, составленной на иностранном языке, а общие интересы в области культуры или спорта могут стать хорошей основой для выстраивания взаимоотношений в команде.
То есть точный ответ я вам дать не могу. Помимо технического склада ума и базовых навыков разработчик должен быть всесторонне развит и быть открытым к получению новых знаний.
– Что делать, если связать свою будущую профессию с разработкой хочется, а знания в отдельных дисциплинах окажутся недостаточными?
– Здесь я бы выделил первую часть вашего вопроса – «хочется связать будущую профессию с разработкой». Это важно. Недостающие знания можно почерпнуть, перенимая опыт коллег, друзей или преподавателей, можно получить дополнительное образование или пройти обучающие курсы. Но вот если к разработке не лежит душа… При выборе профессии я бы не советовал останавливать выбор на специальности только потому, что она в данный момент популярна или ее выбрал кто-то из ваших друзей.
– Какой предмет в школе вам нравился больше всего?
– Пожалуй, физика.
– Вы любите читать?
– Да. Правда, времени на чтение книг в последнее время не так много, как хотелось бы. Выручают аудиокниги, чаще всего слушаю их по пути на работу.
– Ваша любимая книга?
– Их много. Выделить какую-то одну тяжело. В вашем возрасте это, наверное, были «Три мушкетера».
– Атос, Портос, Арамис или Д’Артаньян – кто ваш любимый герой?
– Сейчас – кардинал Ришелье.
– Почему именно он?
– Умный, сильный и дальновидный руководитель. Умеет видеть сильные стороны людей, расставлять приоритеты и признавать поражение.
Провел беседу Андрей Плужников,
а руководили работой над интервью
его педагоги Ануш Арзумян
и Татьяна Плужникова.
– Очень непривычно! Можно, я буду обращаться к вам на «вы» по имени?
– Можно, но тогда и я буду обращаться к вам так же.
– А почему у разработчиков принята такая форма обращения? Ведь к незнакомому или старшему человеку надо обращаться на «вы» – этому учат еще в детских садах.
– Так исторически сложилось. Это помогает установить доверительные отношения между коллегами, создается ощущение принадлежности к большой ай-ти-шной семье. Вы же обращаетесь к родителям, родственникам и друзьям на «ты», даже если они старше вас? Вот и здесь то же самое.
– А почему вы сказали, что тема беседы должны быть обязательно интересной?
– Она должна быть интересной для вас. Результат интересной работы всегда получается лучше. А мне приятно отвечать на вопросы, которые действительно интересуют вас и ваших сверстников.
– Тема выбора будущей профессии нам интересна – скоро поступать. Чем занимаются IT-специалисты разных профессий?
– Прежде чем говорить о профессиях, стоит вспомнить о жизненном цикле программного обеспечения. Он есть у любого материального продукта человеческой деятельности, будь то автомобиль, телефон или какая-нибудь «приложка» (приложение на смартфоне – прим. автора).
Возьмем для примера обычный дом. Сначала должна возникнуть необходимость в его постройке. Затем он должен быть спроектирован – необходимо продумать количество этажей и комнат, выполнить чертежи, составить смету и план работ.
После того, как дом построен и заселен, работы не прекратятся – его продолжат обслуживать, выполнять ремонт, возможно будет выполнена перепланировка или к дому сделают пристройку. Работы эти могут выполняться регулярно, а могут быть приостановлены или возобновлены, но закончатся они только после того, как дом будет снесен. На различных этапах жизненного цикла продукта работы выполняют специалисты с разной специализацией.
– Но ведь дизайнер может понадобиться и на этапе составления проекта нового дома, и спустя годы, когда новые хозяева захотят сделать перепланировку помещений?
– Верно. Специалисты с разными квалификациями объединяют в группы для выполнения задач, присущих тому или иному этапу. В IT такие группы называются командами. Состав команды может меняться.
По сути, при разработке программного обеспечения этапы те же, что и в примере с домом. Они могут по-разному называться, могут иметь разный состав работ, но последовательность всегда одна: идея -> анализ -> проектирование -> создание -> ввод в эксплуатацию -> поддержка и сопровождение во время эксплуатации -> вывод из эксплуатации.
– Возможно, следующий вопрос покажется наивным: какой из этапов наиболее важен?
– Не такой уж он и наивный. Важно понимать, что нужны все этапы: нарушение на любом из них может привести к созданию неработоспособного или не востребованного продукта.
Например, в компании, которая занимается разработкой программного обеспечения для смартфонов, кем-то, кто определяет цели разработки, поставлена задача – реализация коммерческого приложения-будильника для Android. Дальше технологи описывают требования, проектировщики готовят проектное решение, программисты выполняют реализацию и исправляют ошибки, выявленные тестировщиками. Наконец новое приложение публикуется в GooglePlay, а спустя несколько месяцев оказывается, что оно не популярно среди пользователей. Выполненный анализ показывает, что в магазинах приложений есть десятки бесплатных аналогов, пользователи смартфонов отдают предпочтение им.
Это надо было выявить на этапе проектирования – и либо предусмотреть функциональность, существенно отличающую новое приложение от ранее созданных, либо отказаться от реализации.
– Помимо программистов, вы упомянули технологов, аналитиков, проектировщиков и еще кого-то, кто ставит задачи… в чем особенность работы этих специалистов?
– Я вспомнил одну шутку. Кандидату на должность в IT-компании предлагается закончить наполовину собранную игрушку-головоломку. Если собрал – становится программистом, если разломал – тестировщиком, если смог показать, что для решения недостаточно деталей – аналитик, если попросил инструкцию к головоломке – технолог. Ну, а если сказал, что наполовину решенная головоломка – неплохой результат, это будущий менеджер по продажам.
На мой взгляд, в этой шутке очень удачно описаны особенности основных специальностей. А должности специалистов, выполняющих схожие функции, могут различаться в разных командах или компаниях, в которых они работают.
Моя должность звучит как «Ведущий инженер-проектировщик внедрения».
– «Ведущий» – это тот, кто вводит в эксплуатацию?
– Не совсем. Специалисты одной профессии могут обладать разным опытом и квалификацией, соответственно способны выполнять разные задачи.
В нашей компании специалист может быть «обычным», «старшим», «ведущим» или «главным». Новички обычно трудятся на должности специалиста и всегда работают в паре со «старшим» коллегой. Ведущий специалист должен не только обладать компетенциями, но и делиться своими знаниями, например, в качестве консультанта на этапе проектирования или эксперта при решении нетиповых задач. «Главными» становятся лучшие из профессионалов, таких специалистов единицы, они привлекаются к решению самых сложных задач.
– Вы сказали, что новички всегда работают с кем-то старшим. Это особенность вашей компании или общепринятая практика?
– Помните, мы с вами говорили о командах? Специалистам, работающим над одной задачей, приходится взаимодействовать: разработчику может понадобиться помощь в воспроизведении ошибки, которую выявил тестировщик, а технологу при составлении тех. задания может понадобиться консультация программиста. Поэтому удобнее работать группой. Группа может формироваться на старте или переходить в неизменном составе из другого проекта. В каждой такой группе есть тим-лид (англ. Team Leader – руководитель команды, прим. автора), который выполняет роль, схожую с капитаном футбольной команды.
– Какие дисциплины могли бы помочь школьнику на пути к профессии разработчика программного обеспечения?
– Непростой вопрос. Какое-то время назад я бы сказал, что наиболее важными являются точные науки: математика, физика, информатика, а гуманитарные и общественные науки не так важны.
Сейчас же мне кажется, что будущий разработчик должен быть эрудитом. Выделять одни школьные предметы, пренебрегая другими, в корне неправильно. Безусловно, необходимо иметь навыки работы с компьютером и знать языки программирования, но подчас умение грамотно, свободно и четко излагать свои мысли важнее способности быстро написать код программы или предложить решение нетиповой задачи. В процессе работы может понадобиться изучение документации, составленной на иностранном языке, а общие интересы в области культуры или спорта могут стать хорошей основой для выстраивания взаимоотношений в команде.
То есть точный ответ я вам дать не могу. Помимо технического склада ума и базовых навыков разработчик должен быть всесторонне развит и быть открытым к получению новых знаний.
– Что делать, если связать свою будущую профессию с разработкой хочется, а знания в отдельных дисциплинах окажутся недостаточными?
– Здесь я бы выделил первую часть вашего вопроса – «хочется связать будущую профессию с разработкой». Это важно. Недостающие знания можно почерпнуть, перенимая опыт коллег, друзей или преподавателей, можно получить дополнительное образование или пройти обучающие курсы. Но вот если к разработке не лежит душа… При выборе профессии я бы не советовал останавливать выбор на специальности только потому, что она в данный момент популярна или ее выбрал кто-то из ваших друзей.
– Какой предмет в школе вам нравился больше всего?
– Пожалуй, физика.
– Вы любите читать?
– Да. Правда, времени на чтение книг в последнее время не так много, как хотелось бы. Выручают аудиокниги, чаще всего слушаю их по пути на работу.
– Ваша любимая книга?
– Их много. Выделить какую-то одну тяжело. В вашем возрасте это, наверное, были «Три мушкетера».
– Атос, Портос, Арамис или Д’Артаньян – кто ваш любимый герой?
– Сейчас – кардинал Ришелье.
– Почему именно он?
– Умный, сильный и дальновидный руководитель. Умеет видеть сильные стороны людей, расставлять приоритеты и признавать поражение.
Провел беседу Андрей Плужников,
а руководили работой над интервью
его педагоги Ануш Арзумян
и Татьяна Плужникова.