От джуна до сеньора: Как стать востребованным разработчиком

Владимир Швец
100
10
(3 голоса)
3 0

Аннотация: Быть разработчиком – трудно, а делать первые шаги – еще труднее. Вам предстоит постоянно практиковаться, осваивать большие объемы сложной информации, вы обязательно столкнетесь с неожиданными вызовами, которые могут легко отпугнуть даже самого заинтересованного и мотивированного специалиста.

Книга добавлена:
14-02-2023, 13:02
0
831
63
От джуна до сеньора: Как стать востребованным разработчиком
Содержание

Читать книгу "От джуна до сеньора: Как стать востребованным разработчиком"



Новый проект

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

Прежде всего – без паники. То, что необходимо сделать, вы делали уже много раз. Вы будете писать код (ура!). Просто не вкладывайте в эти страшные слова («новый проект») больше смысла, чем они содержат. Относитесь к новому проекту как к новому коду – ответственно, вдумчиво, но без страха.

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

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

Вы сможете работать так же, как и раньше. Сам факт, что вам поручили создание нового проекта, говорит о том, что ваша работа была профессиональной, качественной и эффективной. Вам доверяют, но доверяют не чему-то неожиданному, а тому, чем вы занимаетесь уже продолжительное время. Вы на правильном пути, просто делайте то, что и делали всегда.

Не позволяйте себя торопить. Специфика коммерческой разработки очевидна – продукт нужен «вчера», однако не разрешайте манипулировать собой и не поступайтесь качеством работы. Ваша задача как профессионала – написать качественный продукт, не стоит пытаться играть по чужим правилам и срезать углы. Хороший продукт проработает много лет, слабый будет закрыт – вот так все просто.

О требованиях к продукту: собирайте их, группируйте, работайте с экспертами в предметной области проекта, изучайте ее самостоятельно. Вы должны быть максимально ознакомлены со спецификой той области, для которой пишете продукт. Составляйте списки вопросов, терроризируйте заказчиков или менеджеров – их должно тошнить от вашей въедливости. Люди не всегда хорошо структурируют свои знания: забывают о важном, придают вес незначительному и т. д. Ваша задача на первом этапе – выделить главные и проблемные направления будущего продукта, область его применения и основные функции.

Не пугайтесь, когда вы будете сталкиваться с требованиями, конфликтующими между собой или не поддающимися описанию кодом. Вы в любом случае столкнулись бы с ними, но позже, когда время для анализа было бы уже упущено. Сбор требований должен формировать для вас картину будущего продукта, указывать на его сильные и слабые стороны, потенциальные проблемы и конкурентные преимущества. Будьте заранее готовы к тому, что, когда работа над проектом будет уже в самом разгаре, часть требований окажется неактуальной. Это распространенный сценарий, он не должен деморализовать вас. Любой продукт – живой, он будет развиваться и видоизменяться. Ваша задача – определить его возможности и рамки, в которых он будет существовать.

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

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

Ограничьте время анализа по конкретным вопросам, иначе вы рискуете столкнуться с аналитическим шоком и неспособностью принять решение. Если чувствуете, что анализ какого-либо вопроса занимает больше времени, чем должен, перейдите к следующему пункту. Если все равно сомневаетесь при каждом принятии решения, постарайтесь понять, говорит ли это ваша тревожность или есть объективные сомнения в правильности выбора. Тревожность необходимо просто принять: вы были бы отвратительным специалистом, если бы не чувствовали ответственности за свои действия. Объективные же сомнения можно отбросить, досконально проанализировав вопрос и выбрав максимально приемлемый вариант. Возможно, он не будет идеальным, но выбор уже сделан и вы больше не рефлексируете над ним.

Определите сроки работы с заказчиками или менеджерами, разбив весь объем на этапы (milestones), однако всегда помните о коварности установления строгих дат. Это крайне важно для новых проектов, где требования будут постоянно меняться и усложняться. Не пытайтесь никого впечатлить скоростью, на кону ваше время и хорошее самочувствие. Выделяйте для анализа и работы столько времени, сколько вам требуется. Я не привожу здесь подробного описания методологий разработки и способов планирования работы над проектом (их слишком много, а ваше время для меня ценно). Универсальный совет: уважайте свое время и не позволяйте дедлайнам сказываться на качестве работы.

Если вы чувствуете, что начали прокрастинировать, это абсолютно нормально и ожидаемо. Совет здесь будет только один: начинайте работать. Через силу, через усталость и нежелание, но начинайте работать по чуть-чуть, выполняя какие-то легкие, но необходимые задачи для нового проекта. Это может быть подготовка инфраструктуры приложения, организация загрузчиков или билд-системы. Черт, да вы можете потратить время на проработку формата вывода в лог, главное – начать делать хоть что-то, и вы обязательно втянетесь в работу в процессе.

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

Тезисы

■ Не паникуйте, получайте удовольствие от процесса.

■ Досконально изучите предметную область.

■ Узнайте максимум об аналогах и конкурентах.

■ Не позволяйте эйфории от выбора технологий затмить требования проекта.

■ Не позволяйте себе впадать в аналитический шок.

■ Устанавливайте свои сроки и учитывайте приоритеты.

Задание

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

История из жизни

«Экзамен для меня всегда праздник, профессор». И это действительно так. Новый проект для меня всегда праздник. Мне немного страшно, но ощущение предвкушения, чувство нового начала куда сильнее. Я знаю, что первое время будет очень сложно. Время принятия самых важных решений, время формирования архитектуры, которая должна пройти проверку годами. Для меня начать новый проект – это все равно что, как в детстве, стоять перед нераспакованным новогодним подарком, испытывая огромную радость и предвкушая что-то очень интересное…


Скачать книгу "От джуна до сеньора: Как стать востребованным разработчиком" - Владимир Швец бесплатно


100
10
Оцени книгу:
3 0
Комментарии
Минимальная длина комментария - 7 знаков.
Книжка.орг » Корпоративная культура » От джуна до сеньора: Как стать востребованным разработчиком
Внимание