Я работаю в качестве единственного веб-разработчика в компании разработчиков программного обеспечения. Компания, в которой я работаю, в последнее время претерпела множество структурных и управленческих изменений, и мы постепенно превращаемся из очень малого бизнеса в состав крупной публичной корпорации. С этим изменением последовало повторение наших контрактов, а также некоторые предлагаемые должностные инструкции. Описание моей работы очень показательно, насколько я один здесь как единственный веб-разработчик. Это показало полное недопонимание того, что я делаю и как я это делаю. Там не было никаких упоминаний о HTML, CSS, JavaScript или каких-либо веб-технологий.
Затем я посмотрел на название должности, и все стало ясно. Заголовок гласил: «Разработчик программного обеспечения / Веб-разработчик». Веб-разработчик Slash: веб-часть — это всего лишь запоздалая мысль. Мой работодатель все еще думает, что я выполняю ту же работу, что и разработчик программного обеспечения, но с некоторыми загадочными черными веб-материалами, которые время от времени добавляются. Это типично, и совсем не то, что меня беспокоит или огорчает — ваши работодатели не знают всего, что вы знаете о своей должности, и не должны этого знать. Вот почему они наняли тебя, в конце концов!
Быть единственным человеком, сосредоточенным на сети в компании, не является чем-то необычным, но это существование редко обсуждается. Чтобы помочь изменить это, я собираюсь немного поговорить о моей текущей роли и постараюсь дать несколько советов, где я могу, для других веб-разработчиков на аналогичной должности.
Своя роль
Быть единственным веб-разработчиком — непростая задача, это правда, но это также отличный шанс заявить о себе в компании. Как единственный веб-разработчик, особенно если вы первый веб-разработчик, у вас есть довольно завидная возможность спланировать весь стек — от технологии, до конфигурации среды тестирования, до документации. Обратная сторона: вы несете единоличную ответственность за эти решения и любые негативные последствия.
Имейте этот факт. Знайте, что вы несете ответственность за что-либо «сеть» и будьте готовы объяснить, когда что-то пойдет не так, возможно, в большей степени, чем обычно. Обычно вы будете объяснять себя тому, кто мало что знает о веб-разработке. Не выдумывайте оправданий, и ваш работодатель будет уважать вас за то, что вы уверены в себе и честны, чтобы признать свои ошибки.
Вы должны постоять за себя. Если вы думаете, что есть лучший способ сделать что-то, или если вы считаете, что временные рамки неразумны, так и скажите. Вы единственный, кто умеет делать такие звонки, но ваши менеджеры будут более чем рады сделать их для вас, если вы не сделаете свой голос услышанным. Это может быть стрессом, когда вам нужно исправить старшего сотрудника, но помните, что они хотят того же, что и вы: успешный проект.
Взамен всего этого стресса и ответственности, когда работа сделана, и все идет гладко, вы будете парнем, который сделал все это, и ваш управленческий персонал будет знать это и (надеюсь!) Признает это.
Документ, документ, документ
Это важно независимо от вашей роли или места работы, но, как единственного веб-разработчика, это гораздо более важно: это важно. Если вы единственный веб-разработчик, может быть трудно быть дисциплинированным. У вас будет много работы, и очень заманчиво думать, что вы единственный, кто будет ее читать, так какой смысл, верно? Но надлежащим образом документирование вашей работы служит многим целям; информирование других людей о том, что вы сделали, является лишь одним из них.
Соответствующая документация позволяет вашим работодателям понять, что вы делаете. Помните тот проект, в котором ваш менеджер ехал на вас, потому что они не могли понять, как долго это длилось? Представьте себе, если бы у вас была временная шкала проекта и список задач, вы могли бы показать им, что они точно описывают то, что было связано с тем «небольшим изменением», которое они запрашивали.
Он также обеспечивает базовую линию для оценки сроков будущей работы. Вы можете оглянуться назад на свою документацию и увидеть, что разработка конкретной функции в прошлом занимала определенное количество часов, поэтому вы можете ожидать, что она займет аналогичное количество времени — возможно, немного меньше — если вам придется делать это снова. Помните, как единственный веб-разработчик, вы также отвечаете за управление проектами. Возможно, вам придется доложить руководству, но они не будут обладать знаниями, необходимыми для планирования проектов на той же глубине.
Изучите полный стек
Здесь нет оправданий — это то, что должно быть сделано. Неважно, какой у вас предыдущий опыт, насколько вы любите или ненавидите задействованные технологии, вы должны хорошо знать весь стек и знать каждый его слой. Не пытайтесь учиться по ходу дела, опережайте игру и начните тратить свое личное время на изучение того, на чем вы не уверены.
Когда я начинал свою роль, у меня не было знаний о разработке на C #, IIS или .NET, и мой единственный предыдущий опыт работы с бэкэндом был в PHP под Apache. Вы можете поспорить, что в эти первые несколько месяцев я бы пошел домой и потратил некоторое время на чтение C # и IIS. Меня отправили на курс ASP.NET MVC, и я получил доступ к библиотеке онлайн-курсов, чтобы помочь мне освоить новую технологию и работать с ней. Не бойтесь спрашивать у своего работодателя то же самое: любой хороший работодатель должен с радостью оплачивать обучение, которое требуется его персоналу.
Принять возможность
Это настолько критически важно, что невозможно переоценить: вы должны понять и принять уникальную карьерную возможность, которую вам дали как единоличный веб-разработчик с полным стеком. Просто выполняя свою обычную ежедневную работу, вы постоянно узнаете что-то обо всем, что есть в сети.
Всего через год вам будет совершенно комфортно говорить о том или ином слое веб-сайта и о каждом конкретном этапе производства — вы все это пройдете. Вы настраиваете себя на то, чтобы в конечном итоге быть в состоянии специализироваться в любой области веб-разработки, которую вы предпочитаете, независимо от того, предпочитаете ли вы бэкенд или внешнюю работу, управление проектами или разработку на переднем крае.
Используйте возможность учиться и становитесь чертовски хорошими в том, что вы делаете. Примите вызовы и наслаждайтесь полученным образованием.
Не оставайся здесь навсегда
Это отрезвляющий момент, но я думаю, что он важен: будучи единственным разработчиком с полным стеком, вы в конечном итоге сделаете вас мастером на все руки и мастером ни на что. Если вы когда-нибудь захотите стать экспертом в определенной области, это не ваша работа. Это нормально. Прекрасно смотреть на роль как шаг на пути к своей идеальной позиции. Очень немногие люди счастливы делать все, большинство из нас ценят четкие должностные инструкции и четко определенные роли.
Несмотря на то, что эта роль предлагает много возможностей для обучения, вы также должны помнить, что это не идеальное место для вечной жизни. Это стресс, вы обнаружите, что много работаете в нерабочее время, и даже когда у вас нет времени, ваш ум все равно будет работать.
Может быть, ваш работодатель расширяет веб-команду, и вы можете начать специализацию в той же компании, или, возможно, вам придется сделать трудный выбор, чтобы уйти и специализироваться в другом месте, но мой совет здесь состоит в том, чтобы никогда не прекращать движение вперед. Приятно так много учиться и так сильно доверять своим решениям, связанным с технологиями и средами, но эти преимущества в значительной степени компенсируются интенсивным давлением и нагрузкой, которую на вас возложит такая ответственная роль.
Куда отсюда?
Я надеюсь, что я не нарисовал мрачную картину здесь. Как и у любой работы, есть хорошие детали и, скажем, «сложные», детали. Я люблю свою работу и люблю компанию, в которой я работаю. Все мои коллеги — удивительно талантливые люди, и мне повезло, что я знаю их и работаю вместе с ними. Но есть стрессы и тревоги, которые являются уникальными для такого рода позиций, и если вы справитесь с этим и получите удовольствие от роли, несмотря на это, то я говорю, продолжайте делать то, что вы делаете.
В любом случае, вас могут заинтересовать советы многих других людей, которые прошли ваш путь до вас. Форумы SitePoint или Workplace Stack Exchange — отличные ресурсы, если у вас есть актуальный вопрос. Или вы можете чирикать мне за ручку в моей биографии. Я всегда рад услышать от других веб-разработчиков, и ваши вопросы, истории, советы приветствуются.