Удалённая разработка программного обеспечения – это работа для тех программистов, кто ценит своё время и свободу больше офисной жизни, но при этом не боится ответственности.
Ценить своё время, это значит не тратить ежедневно по 2 часа в пробках по дороге на работу/с работы, которая часто бывает сопряжена со стрессом и отрицательными эмоциями.
Под понятием свобода следует понимать свободу от географической привязки к компании и свободный график работы. Это самое серьёзное преимущество. Территориально Вы сможете жить в любой точке планеты, где есть хороший Интернет и хороший климат. Это может быть, например, побережье океана, где-нибудь в тропической (субтропической) зоне с мягким климатом, где Вы сможете начинать свой день не с метро или с автомобильных пробок, а с пробежки по пляжу. Только одного этого, достаточно, чтобы Ваша жизнь стала качественнее и длиннее, лет на 10.
Не бояться ответственности, это значит быть готовым самостоятельно принимать правильные решения по текущим вопросам, не пытаясь перевалить всю ответственность обратно на Вашего менеджера или на Ваших коллег.
Удалённая разработка программного обеспечения – это работа не для тех программистов, кто привязан к офисной жизни, к иллюзии уверенности в завтрашнем дне, бесплатному кофе и обедам, пятничным корпоративам, поддержанию социальных иерархий, бесплатной медицинской страховке, бонусам, премиям и прочим нехитрым средствам мотивации, которые используются в большинстве компаний.
В случае же работы удалённо по контракту, и юридически, и фактически Вы являетесь ТАКОЙ ЖЕ КОМПАНИЕЙ, как и компания, которой Вы предоставляете свои сервисы. С данной точки зрения компанию можно рассматривать как компонент в объектном программировании – есть потребляемые сервисы и предоставляемые сервисы. Мы потребляем Ваши сервисы, выступая в роли Вашего клиента, и предоставляем наши сервисы нашим клиентам. Наши клиенты работают с нами до тех пор, пока их устраивает соотношение цена/качество. Мы работаем с Вами по тому же принципу: если Ваши сервисы нас устраивают – отлично, работаем дальше, плодотворно и взаимовыгодно. Если не устраивают, то не работаем.
В случае работы в офисе в течение какого-то времени (иногда бесконечно) можно эмулировать бурную деятельность, так чтобы начальник был Вами доволен. Например, можно разложить на столе кучу проектной документации, сделать вид, что Вы очень заняты решением какой-то важной и сложной задачи. Можно приставать с разными вопросами к начальнику и коллегам, чтобы было видно, что Вы не бездельничаете. Можно заняться критикой чужого программного кода. Можно придумать еще много "полезных" занятий. В Интернете можно найти массу рецептов по поводу того, как создавать видимость работы.
В случае работы в качестве удалённого подрядчика, от Вас требуется только результат. Сколько бы Вы не промучились над решением поставленной задачи, если она не решена, решена не до конца, решена некачественно, неправильно или не так, как того требовалось, все Ваши усилия окажутся бесполезными с точки зрения заказчика.
Поэтому работа в качестве удалённого контактора подходит далеко не каждому программисту. Не из-за того, что какие-то программисты плохие, а какие-то хорошие. Просто у разных людей разные приоритеты, разные ценности, разное мировоззрение и разное ожидание того, как должен быть устроен мир.
Будьте готовы к тому, что в нашей компании 10% времени тратится на написание программного кода, и 90% времени тратится на его доводку до качественного состояния. Если подсистема скомпилировалась без ошибок, и выполнила то, что от неё требуется – это далеко не тот критерий, по которому можно считать, что эта работа сделана и браться можно за следующую. Скорее всего, то, что Вы создали – это прототип, показывающий принципиальную возможность работоспособности будущей подсистемы, которым кроме Вас больше ни кто не сможет воспользоваться. Впереди еще неоднократное переписывание, многочисленные рефакторинги, тестирование, документирование, проверка работоспособность на разных операционных системах и их конфигурациях, коррекция кода на основе обратной связи от пользователей, снова рефакторинги, снова тестирование и так, до тех пор, пока не получится качественного продукта.
Получается, что 10% времени тратится на творчество и 90% времени на "скучную" борьбу за качество. Поэтому, как это ни парадоксально звучит, мы не ищем чрезмерно творческих людей или гениев. Мы ищем тех, у кого имеются психологические качества, позволяющие идти до победного конца и получать результат: реально работающий и качественный программный код, удобный при использовании и понятный для чтения. Таких людей мы ценим и уважаем. Такие люди, как правило, составляют костяк команды разработчиков.
Существует мнение, что менеджер не должен вмешиваться в работу программиста, что подсистема – это некий черный ящик, магия, в которой должен разбираться только его создатель. Может быть, где-то такой подход и работает, но наш опыт показывает, что когда из такого черного ящика начинают сыпаться эксепшины, а его создателя уже и след простыл, приходится принимать решение, что проще – разбираться во внутренностях реализации или все заново переписать. И это уже после того, как Вы оплатили всю работу. Поэтому, мы постоянно вмешиваемся в процесс разработки и контролируем качество внутреннего кода реализации подсистем. Не потому что мы такие противные, а потому, что рынок нас вынуждает это делать, если этого не делать, то о качественном и продаваемом продукте не может быть и речи. С другой стороны, архитектура программного обеспечения проектируется таким образом, чтобы размеры подсистем не превышали заданного порога сложности, таким образом, чтобы подсистему можно было бы полностью переписать с нуля, и при этом не слишком сильно выбиться из графика проекта.
Теперь, что касается формальных моментов. Поскольку Softinco, LLC – это американская компания, мы не можем Вас "взять на работу" в традиционном совковом понимании этого термина. Но мы можем заключить с Вами контракт на предоставление консалтинговых услуг, по которому Вы будете выступать в качестве независимого консультанта (подрядчика). Формально нас интересует только стоимость услуг их качество и данные Вашего банковского счета для перевода денег. Налоги на Украине – это уже Ваша забота. Самый стандартный способ – это оформиться частным предпринимателем на едином налоге. В этом случае налог будет минимальным.
Если Вы еще не уверены, подходит ли Вам работа в качестве независимого подрядчика, Вам может в этом помочь следующая таблица:
| Мне подходит дистанционная работа | Мне лучше работать в офисе |
|---|---|
| Я ценю своё личное время и не хочу тратить 2 часа в день на поездки с дома в офис и с офиса домой. | Я предпочитаю работать в офисе, так как люблю вживую общаться с коллегами. Часто в офисе я себя чувствую лучше, чем дома. |
| Я предпочитаю быть независимым подрядчиком (independent contractor), который предоставляет услуги другой компании в соответствии с контрактом о предоставлении консалтинговых услуг. От компании требуется только достойная оплата моих услуг. Я сам позабочусь о своём отпуске, пенсии, медицинской страховке и т.п. | Я предпочитаю быть работником, работающим на работодателя в соответствии с КЗОТ. Мне нужна официальная работа, с записью в трудовой книжке, с оплачиваемым отпуском, с пенсией и т.п. |
| Я готов конкурировать с другими подрядчиками за проекты, так как с одной стороны я понимаю рыночные законы, с другой стороны я уверен в своём профессионализме и конкурентоспособности. | Я не готов конкурировать с другими подрядчиками, так как не уверен в своих силах. У меня не получается одновременно делать работу и быстро и качественно. |
| Я понимаю и ценю свободу, которую мне предоставляет удалённая работа. Для меня весьма важно отсутствие территориальной привязки. Меня очень радует возможность, например, устроить своё рабочее место, в каком-нибудь райском уголке земного шара, в субтропической зоне на берегу моря, на островах и т.п. и за счет этого прожить лет на 10 больше. | Я не вижу особых преимуществ уделенной работы. Моё место проживание находится рядом с офисом. Территориальная привязка меня не беспокоит. Меня устраивает экологическая и климатическая ситуация в моём месте проживания. |
| Я способен к самодисциплине и самоорганизации. Я не нуждаюсь во внимании начальства и предпочитаю работать самостоятельно. | Я не могу работать самостоятельно. Я нуждаюсь во внешних дисциплинирующих факторах, таких как расписание работы, контроль начальника. |
| Я имею тихое рабочее место с хорошим Интернетом, где меня абсолютно никто не беспокоит, где я могу на долгие часы сконцентрироваться над решением поставленной задачи. | Я не могу себе обеспечить нормальное рабочее место. Я предпочитаю работать в офисе, так как там уже имеется готовая инфраструктура и создана хорошая рабочая атмосфера. |
| Я достаточно квалифицированный для того, чтобы делать мою работу самостоятельно. Я задаю минимум вопросов менеджеру так как полностью владею ситуацией и лучше его знаю, как всё нужно сделать, чтобы достичь приличного качества работы за разумное время. | Я недостаточно квалифицированный, чтобы что-то делать самостоятельно. Предпочитаю обращаться за помощью к более опытным коллегам. Я задаю много вопросов менеджеру, чтобы тот видел, что я работаю над проектом. |
| Я считаю, что я должен учиться (совершенствоваться) только сам, и никто за меня это не сможет сделать. В мире есть достаточное количество хороших книг, изучая которые можно достичь любого уровня квалификации. Я считаю, что в современном мире Интернета и лёгкого доступа к информации, если человек не имеет должного уровня образования (квалификации), то винить в этом он должен только себя. | Я считаю, что чему-то научиться можно только в учебных заведениях или в офисе, вживую общаясь с коллегами. Я считаю, что компания должна заботиться о моём образовании, посылать меня на курсы повышения квалификации, и т.п. Я считаю, что в плохом уровне образования в основном виноваты внешние факторы, такие как вовремя не встретил нужных людей, нет денег на обучение и т.п. |
| Я всегда делаю задачу лучше, чем от меня ожидают. Моя работа очень редко содержит дефекты. Качество моей работы крайне редко нуждается в проверке со стороны руководства. | Я всегда делаю задачу хуже, чем это от меня ожидают. Я считаю более разумным сделать работу посредственно, а затем исправлять дефекты, на которые мне укажут. Моя работа всегда нуждается в проверке со стороны руководства или специалистов по качеству. |