Ответы пользователя по тегу Удаленная работа
  • Какие они, ваши наблюдения и опыт о количестве интересных проектов во фрилансе/удаленной работе?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    На мой взгляд (не претендую на истину в конечной инстанции, разумеется) опытный разработчик как раз характеризуется умением извлекать опыт и профессиональный интерес из любых проектов. Даже когда приходится работать над очередным "скучным" проектом, всегда есть поле для повышения квалификации. Иными словами, учитесь видеть в рутине изюм :) Опять же - только выполнив десятка два "типовых" проектов, понимаешь что в них "типового" и как может быть сделано иначе. Это и есть опыт.

    Относительно востребованных технологий в веб разработке, сейчас лидирует JavaScript (во всем многообразии фреймворков и библиотек). Очень советую добавить эти "патроны" в свой "патронташ" навыков. В плане PHP - более или менее серьезные проекты требуют, помимо умения работать с распространенными CMS и фреймворками, также достаточно глубокого понимания архитекутры этих самых CMS/фреймворков, умения органично расширять их, ну и работать с самим языком в разных парадигмах (ООП в частности). Иными словами хорошо, когда перед выполнением проекта у вас есть более одного варианта как можно решить задачу и вы имеете возможность осознанно выбрать лучший в данном конкретном случае вариант. Иными словами, профессионализм - это когда вы знаете, что не существует "единственно верного подхода" для решения всех задач. То есть для каждой задачи есть более и менее "правильные" способы решения, и вы можете объяснить другому - почему каждый их них подходит / не подходит.

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

    Фриланс. Конечно же помимо профиссиональных навыков непосредственно, в этом деле важно развить и другие вспомогательные но не второстепенные навыки. Среди них я бы отметил следующие:

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

    2. Умение формально, вежливо и эффективно общаться с клиентом и прочими не техническими участниками проекта (заинтересованными лицами). Тут важно иметь навык рабочей переписки, умение корректно излагать мысли и главное - решать рабочие проблемы (а они есть всегда) в рабочем порядке, не создавая мысленно "плохих" и "хороших" участников процесса. Работа - не дружба, здесь нет места для сильных эмоций. Самое главное тут - решение проблем и поддержание работы в позитивном и конструктивном ключе.

    3. Коммуникация. Еще раз - важно уметь нрамотно и понятно излагать свои мысли по существу. Как на родном языке, так и на английском (обычно). Тут важно все - от грамматики, до умения вести переписку. Очень плохой эффект имеет письмо от "профессионала", который пишет с ошибками или забрасывает длинными письмами с неопределнным потоком мыслей и темой вроде "по нашей беседе". Ну и иностранный язык - это обязательно. Можно, конечно, всю жизнь работать с соотечественниками, но это, как правило, будет работа в аутсорсинговых компаниях. Отечественный рынок фриланса - выполнение обычно не слишком замысловатой работы при достаточно скромных бюжетах. Западные компании начали "информатизироваться" давно и даже непрофильные компании часто имеют достаточно серьезную IT инфраструктуру.

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

    Надеюсь, мои соображения будут полезны. Нюансов много, но основные, думаю, мне удалось упомянуть.
    Ответ написан
    Комментировать
  • Как контролировать работу удаленного программиста?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    Все задачи должны быть записаны (вы можете использовать как любой таск трекер вроде JIRA, так и просто Excel файл в Dropbox, например, главное - обоим иметь доступ к списку задач). По каждой должно быть описание, что именно требуется сделать в рамках задачи. Просите разработчика оценить по времени первоочередные задачи из общего списка (также - если задачи зависимы дург от друга - расставить их в порядке выполнения) и на основе этой оценки наберите задач на неделю работы. По каждой таким образом будет заранее известна временная оценка. Она может поменяться в ходе работы, конечно, но этому изменению всегда будет понятная причина. Вы можете после оценки на неделю пробежаться вместе по списку задач и проговорить какждую (убедиться, что разработчику все ясно, сделать необходимые пояснения и тп). Это позволит сделать первичную оценку более надежной.

    Попросите разработчика каждый день писать вам отчет в виде:
    1) какие задачи были сделаны
    2) какие задачи планируется делать дальше
    3) какие есть проблемы, вопросы, сложности по текущей работе

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

    Поддерживаю мнение о том, что задачи должны быть не слишком большие - меньше чем 8 часов (рабочий день), а лучше не более 4 часов. Большие задачи надо постараться поделить на части.

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

    Ну и если у вас возникают вопросы (например, почему скорость снижается) - всегда ведь можно просто спросить у разработчика - почему так получается? Есть ли какие-то проблемы с работой? Что может помочь вернуть скорость на прежние показатели?

    Телепатия, к сожалению, пока только фантастика, и мысли читать никто не умеет. Поэтому единственный способ что-то выяснить - это общаться.
    Ответ написан
    Комментировать
  • Как найти удаленную постоянную работу программистом(Европа, Америка)?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    Мы в компании Toptal всегда заинтересованы в опытных программистах с уверенным знанием английского языка. Имеются проекты под самые различные технологии. Если интересно, почитайте требования и приходите. Здесь описана наша процедура отбора кандидатов

    Подробнее об удаленной работе в Toptal для программистов в блоге Payoneer.
    Ответ написан
    3 комментария