Как стать успешным разработчиком-фрилансером

Перевод статьи Джеспера Рейха «As freelance developer coding is maximum 50% of the job».

Как стать успешным фрилансером

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

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

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

Как оценивают работу фрилансера

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

Если вы разработчик-фрилансер, люди оценивают не только ваши навыки разработчика. Они оценивают то, как вы решаете проблемы, и то, создаете ли вы что-то полезное для клиентов.

Есть старая поговорка о фрилансерах/консультантах. Суть ее в том, что вы будете считаться хорошим работником и с вами продолжат сотрудничество, если вы удовлетворяете хотя бы двум из трех требований:

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

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

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

Решение проблем и создание вещей, ценных для клиента

Фрилансер это решатель проблем

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

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

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

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

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

Важность коммуникативных навыков

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

Будьте очень предупредительны относительно проблем, которые могут задержать ваше (или чье-то еще) продвижение вперед. Если замечаете потенциальные проблемы, встающие перед вами или перед другими людьми, сообщайте об этом. Старайтесь никого не обвинять и действовать таким образом, чтобы решить проблему и создать нечто ценное для клиента.

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

Предлагайте советы на основе собственного опыта и при этом не высказывайте осуждения

Вы часть команды

Будьте готовы высказать свое мнение по любой теме, от плана разработки до процедур релиза.

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

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

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

Опыт придет

Опытный разработчик имеет больше шансов как фрилансер

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

Не то чтобы это было абсолютно необходимо. Вы можете найти заказы и без этого. Но я думаю, что опыт работы в 3-5 лет действительно увеличит ваши шансы, поскольку вы будете производить впечатление большей надежности. Ведь большинство компаний, как я уже говорил, от фрилансеров ожидают большего, чем от штатных сотрудников. Поэтому они скорее наймут кого-нибудь с опытом работы (и опытом решения разнообразных проблем), чем кого-то совсем «зеленого».

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

Если вы решаете проблемы, которые не под силу никому другому, вы можете вести себя как полный придурок и, несмотря на отсутствие навыков коммуникации, все равно получите заказы в астрономических количествах. Однако, если появится кто-то другой, кто хотя бы на 80% так же хорош, как и вы, но имеет лучшие навыки коммуникации, то я уверен, что в 9 случаях из 10 заказ уплывет к нему.

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


[customscript]techrocks_custom_after_post_html[/customscript]
[customscript]techrocks_custom_script[/customscript]

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Прокрутить вверх