На мой взгляд, застой — худшее, что может случиться с айтишником. Но для себя я, кажется, нашел некие условия, не определяющие четкое направление, но описывающие окружающую атмосферу, способствующую моему профессиональному росту. В поисках подходящего мне варианта я сменил не одного работодателя. Даже в армии по контракту успел послужить.
Исходя из полученного опыта, я сформулировал пять принципов, которые вы найдете под катом. Возможно, вам они тоже подойдут?
— Скажите, пожалуйста, куда мне отсюда идти?
— А куда ты хочешь попасть? — ответил Кот.
— Мне все равно, — сказала Алиса.
— Тогда все равно, куда и идти, — заметил Кот.
— Только бы попасть куда-нибудь, — пояснила Алиса.
— Куда-нибудь ты обязательно попадешь, — сказал Кот. — Нужно только достаточно долго идти.
(С) Льюис Кэрролл, Алиса в стране чудес
Вместо предисловия отмечу, что о развитии говорить нет смысла, если нет каких-то осознанных целей на будущее. Это необязательно должен быть четкий план на 3—5 лет с указанием должностей и зарплат, как любят спрашивать на собеседованиях. Но необходимо понимать, чего ты на самом деле хочешь, и делая следующий шаг, представлять, как он соотносится с глобальной целью.
К примеру, я считаю, что нужно охватить максимальное число различных технологических направлений, чтобы обеспечить себе рост. При этом надо не просто прочитать пару книг, а вникать глубоко, на реальных бизнес-задачах. В дальнейшем потребуется какое-то развитие в административном плане. Мне кажется, оно не обойдет ни одного сложившегося специалиста, поэтому я уже сейчас выполняю некоторые функции лида. И все эти разнородные задачи вполне укладываются в мое представление о будущем.
Принцип 1. Личное развитие специалиста стремится за уровнем зрелости компании.
Совершеннее процессы — быстрее рост. С другой стороны, чем больше опыта и знаний, тем сложнее ужиться в организации, где процессы не выстроены вовсе.
Начал работать я еще в студенчестве. Прочитав книгу Романа Савина «Тестирование Дот Ком, или Пособие по жестокому обращению с багами в интернет-стартапах», пошел тестировать, не особо представляя себе процесс разработки. Это был первый опыт на реальном проекте. Но, как я понял впоследствии, сложно там было не только из-за отсутствия багажа знаний, но и из-за банального организационного «болота». В той компании даже тестовой документации не было — всем было пофигу на происходящее.
Впоследствии, подыскивая новое место, я выбирал компании с налаженными процессами. Это мотивирует, заставляет «прокачиваться» в нужную сторону.
Правда, процессы процессам рознь. Примерно в середине трудового пути меня укусила какая-то муха и я, уже имея приличный опыт автоматизации тестирования, решил бросить все и пошел по контракту в ряды наших доблестных вооруженных сил. В армии с вымуштрованными «процессами» я так и не ужился — выдержал всего два года. Если бы оттуда можно было уволиться в соответствии с ТК РФ, отработав две недели, я бы так и сделал в первый же месяц. Несмотря на вполне успешную «карьеру» (меня хотели видеть во всех штабах), я понимал, что мне это не подходит.
После армии мне пришлось идти с самого начала — устраиваться в организацию с простыми процессами, чтобы подтянуть знания, а потом уже искать кого-то с более совершенными.
Конечно же, важны не только процессы, но и коллектив. Практически везде можно чему-то научиться, но хорошо, когда есть за кем тянуться в команде, когда есть помощь со стороны более опытных коллег в решении новых технических проблем.
Принцип 2. Можно и нужно осваивать смежные области знаний. Это позволяет подняться на иной уровень абстракции, заново осознать уже известное, открыть для себя новые сферы интересов.
В студенческие времена я начинал с ручного тестирования. Попав уже на вторую работу, с более совершенным подходом к тестированию, много узнал о тест-дизайне, о том, как построены веб-приложения (на тот момент все мои проекты были в вебе). Там мы писали интернет-магазин для печатной фабрики в Кентукки — наш софт валидировал клиентские заказы перед отправкой на фабрику. «Приработавшись» на этом, я понял, что у меня есть силы осваивать автоматизацию. Впоследствии даже магистерский диплом написал на тему «Автоматизация тестирования веб-проекта на C# с использованием selenium webdriver». То была одна из первых работ, связанных именно с тестированием, поэтому защита прошла на ура.
Освоив автоматизацию, я вместе с несколькими коллегами оказался в отделе QA Automation. И по забавному стечению обстоятельств остался там один — как-то выкарабкиваться и тащить на себе всю автоматизацию тестирования в одиночку.
Честно скажу, знаний тогда было не так много. Я даже толком не знал про CI/CD, хотя среди задач висела настройка Travis. Обо всем этом приходилось читать, спрашивать или искать ответы на форумах. Но это было очередным расширением кругозора, и мне это нравилось. В итоге у меня все же получилось завести Travis CI.
Речь тут, кстати, необязательно о технологиях. Сейчас я, к примеру, взял некоторые административные функции, чтобы опробовать себя на этом поприще (своего рода «приложение к должности» — лид по тестированию внутри компании, т.е. между всеми проектами). Я и раньше думал двигаться в «административную» сторону — планировал уйти в лиды, а впоследствии, возможно, заняться своим продуктом. Но потом я вспомнил, что такое автоматизация и насколько это интересно (как я уже говорил, после армии на это ушло определенное время), так что административный путь на данный момент перестал так привлекать. Тем не менее, почему бы не попробовать, если есть такая возможность? Так что теперь я отслеживаю работу на всех проектах работодателя, курирую развитие отдела тестирования, даю оценки для новых проектов.
Все это расширяет кругозор, дает новые возможности развития.
Принцип 3. В профессиональном развитии технологии и инструменты играют важную роль. Но ликвидность специалиста на рынке труда в целом для меня важнее.
После армии я оказался в компании, которая использует, скажем так, нетрадиционный подход к автоматизации тестирования. Ранее я привык к использованию неких популярных фреймворков и тулов, которые применяются почти в каждой компании. Но мой новый работодатель использовал инструмент, написанный собственноручно разработчиками этой компании. И эта очень специфичная автоматизация сводилась к тому, что мы просто описывали тест-кейсы в таблицах.
После армии это было неплохо — появилась возможность постепенно войти в курс дела. Но останься я в этих условиях лет на пять, я отлично прокачался бы в составлении табличек, но вряд ли все еще был бы ликвидным специалистом на рынке труда. Меня это не устраивало, несмотря на деньги, путевки и прочие бонусы. Я чувствовал, что спустя какое-то время останусь «пустышкой» и, развиваясь в предложенном направлении, буду интересен только этой компании.
Хотелось больше погрузиться в бизнес-логику, тем более что она у всех проектов разная. И я пошел в направлении более традиционного подхода. Меняя работодателя, я смотрел, с чем именно работает компания, на каких проектах, какими направлениями интересуется. И в итоге ушел в организацию, задачи которой прокачивают меня как более гибкого и более востребованного в отрасли специалиста по автоматизации тестирования (это было видно хотя бы по требованиям в открытых вакансиях). Я мог быть уверен в том, что в дальнейшем смогу найти работу по тому же профилю.
Первое время на новом месте я занимался автоматизацией тестирования backend, в частности REST API. С тестированием REST API я сталкивался не впервые, но ранее делал это вручную, и опыта именно автоматизации не было даже в рамках своих домашних проектов. Это стало для меня очередным испытанием — приходилось вливаться в новую задачу, осваивать новый специфичный для меня инструмент (Robot Framework — тесты в нем запускаются несколько не так, как на привычном для меня Cucumber). На этом проекте приходилось очень плотно работать с базой, поэтому я попутно подтянул SQL.
Примерно за год я распробовал автоматизацию тестирования API и решил немного поменять направление. Сейчас я работаю на автоматизации тестирования мобильных приложений. Получаю на входе тест-кейсы от manual-тестеров и автоматизирую их в нашей инфраструктуре. Поддерживаю работоспособность существующих тестов и настраиваю continuous integration.
Отдельное направление моей работы — UI-тестирование. Здесь постоянно что-то меняется, вылезает множество зависимостей от других компонент, и основная задача — сделать тесты стабильными, в том числе через мокирование внешних систем. Все это интересно и востребовано.
Принцип 4. Развитие под крылом работодателя должно иметь определенную степень свободы.
У меня довольно многогранный опыт, который позволил на своей шкуре подтвердить прописную истину ИТ: если ты не развиваешься, стоишь на месте в знаниях, считай, что ты уже отстал.
Острее всего я это почувствовал, как раз вернувшись из армии. Два года серьезно ударили по моим знаниям. Такое ощущение, что моя ценность как специалиста потихоньку уплывала с каждым: «Здравия желаю!». Очень многое пришлось вспоминать, а еще больше наверстывать. За время моего отсутствия появилось много новых направлений, в частности начала развиваться мобильная автоматизация тестирования, которая вообще мимо меня прошла.
Понимая это, я искал возможности догнать этот «уходящий поезд» отрасли. Проще наверстывать на реальных проектах. Правда, первая работа после армии как раз не позволяла этого сделать. А вот текущий работодатель дал зеленый свет экспериментам. К примеру, в сферу моей компетенции входит изучение и интеграция новых интересных тулов, которые помогают сделать автоматизацию тестирования по моему направлению более гибкой и прозрачной. Конечно, на все нужна санкция руководства, но у меня есть определенная свобода в выборе направления.
Выше речь о свободе в узком смысле. Но для меня оказалась важна свобода в более широком понимании — возможность переключения между технологическими стеками.
Рабочий застой бывает у всех. Ты понимаешь, что проект при всей его первоначальной привлекательности начинает приедаться, — «наедаешься» инструментами и технологиями, многие моменты становятся понятны и неинтересны. Да и в целом задача уже не несет в себе той сложности, не приходится напрягать мозги. Наверное, это уже звоночек, намекающий, что пора что-то менять.
И хорошо, если работодатель гибко реагирует на это. На моей текущей работе руководитель регулярно созванивается с нами, узнает, нравится ли нам проект, получаем ли мы от работы удовольствие. И когда я в какой-то момент почувствовал, что устал от задачи, как я упоминал выше, мне предложили другую — как раз с иным стеком технологий. Так я попал в автоматизацию мобильного тестирования, на старте даже не зная, как запустить тест. Для меня это была целая история, настоящее испытание. Решение таких задач мне приносит огромное удовольствие. От ощущения застоя не осталось и следа.
И я понял, что одним из аспектов самореализации внутри компании для меня является наличие нескольких живых проектов, а также возможности перехода между ними (ну, конечно, не каждую неделю, а хотя бы раз в год).
Принцип 5. Формат работы играет меньшую роль в самореализации, чем я думал ранее. Удаленная работа и развитие не противоречат друг другу.
Часто можно услышать мнение, что какая-то самореализация доступна лишь в офисе. По разным причинам. И я был отчасти с этим согласен, поскольку считаю себя социально зависимым человеком, мне нравится общаться с живыми людьми. Поэтому когда мне предложили уйти на удаленку, я сначала опасался, что застряну в одиночестве. Но на тот момент у меня уже был позитивный опыт удаленной подработки, и я решил попробовать.
На данный момент я уже полтора года работаю удаленно. И честно говоря, не вижу большой разницы. В крупных компаниях тоже довольно часто твоя команда находится в другом городе или стране. И механика та же самая: созвоны по Skype, переписка в Slack. В плане работы и моих стремлений в сфере профессионального роста ничего не изменилось.
Единственное — для меня, даже в большей степени, чем для офисных работников, ощутима опасность профессионального выгорания. Удаленный формат — гибкий с точки зрения времени и места работы. И это одновременно как плюс, так и минус. Поначалу мне было сложно разделить дом и работу: ты вроде дома, рабочий день закончился; казалось бы: «Руслан, иди отдохни!». Но нет. Меня тянуло доделать задачу. До перехода на удаленку я слышал о подобном, но не мог поверить, что ты настолько втягиваешься в работу. Лишь столкнувшись с этой проблемой на своей шкуре, понял, что надо искать некую виртуальную грань, которую нельзя переступать. Иначе ты просто начинаешь сгорать на работе. Тебе уже не надо никакого развития. Но это не вопрос формата, а лишь аспект самодисциплины. Я с ним разобрался довольно быстро.
Перечисленные принципы не отвечают на вопрос «что мне изучить теперь?» или «куда пойти работать дальше?». Но для меня как специалиста они определяют некие параметры личного комфорта, отражая ту идею, что сама постановка вопроса «что мне выучить, чтобы было развитие» — неверна. Гораздо корректнее думать о том, какие надо в целом создать (или найти) условия для поддержки реализации своих целей и потенциала.
Автор статьи: Руслан Абдулин
P.S. Мы публикуем наши статьи на нескольких площадках Рунета. Подписывайтесь на наши страницы в VK, FB или Telegram-канал, чтобы узнавать обо всех наших публикациях и других новостях компании Maxilect.
Комментарии (16)
TheKnight
31.07.2018 13:31После армии я оказался в компании, которая использует, скажем так, нетрадиционный подход к автоматизации тестирования. Ранее я привык к использованию неких популярных фреймворков и тулов, которые применяются почти в каждой компании. Но мой новый работодатель использовал инструмент, написанный собственноручно разработчиками этой компании. И эта очень специфичная автоматизация сводилась к тому, что мы просто описывали тест-кейсы в таблицах.
Кажется я знаю эту компанию. Дай угадаю — самый большой офис в Костроме?
redskif
31.07.2018 14:17А будет подробная/обзорная статья от Руслана на тему «Robot Framework, автоматизация тестирования API»?
Maxilect_pr Автор
31.07.2018 15:16Подумаем над этим…
igor_suhorukov
31.07.2018 21:47А почему бы не создать аккаунт реальному автору статьи?
Maxilect_pr Автор
31.07.2018 23:47-2У нас предусмотрен человек, который вычитывает и публикует статьи, чтобы не отвлекать команду от основной работы. Реализовать его работу через выделенный аккаунт проще.
Sinatr
31.07.2018 18:04-1… изученного вдоль и поперек кода… застой — худшее, что может случиться с айтишником
Вы о программистах или о сисадминах (код = скрипт?)? Я вот задумался, а программист — это айтишник? Я так понимаю, что айтишник — это просто сотрудник отдела информационных технологий (сисадмины). Я, как программист, сижу в отделе разработки. Тоесть я разработчик. Айтишник ли я?VolCh
31.07.2018 21:14Айтишник в широком смысле слова — человек, работающий в IT-сфере. Отделы и всё такое — ситуационно. Может быть отдел разработки в департаменте ИТ, а может быть группа ИТ-поддержки в отделе разработки.
Exponent
01.08.2018 09:53Самое трудное в работе из дома это научить домашних не мешать в любой момент. Например жена может прибежать со словами «нет помидоров», т.к. для нее это реальная проблема. Или сосед вспомнит что ему нужна лестница. Я себе отдельное помещение оборудовал, отдельно от дома чтоб спокойно работать.
BullDER
01.08.2018 11:28Хотелось бы передать привет от коллеги из интернет-магазина для печатной фабрики в Кентукки. Рад что у тебя все по плану
argonavtt
Какие то достаточно очевидные истинны. От себя добавлю, что развитие это не всегда место твоей работы, и не стоит бежать искать новую компанию только лишь потому, что ты 1-2 месяца просидел за решением банальных задач. Такое присутствует в каждой фирме и ничего с этим не поделать.
cooltonbek
Наверное, иногда отсутствие новостей — хорошая новость.