«Твої навички нікому не потрібні, якщо не можеш їх продати». Розробник - про особливості роботи на фрилансі
Сергій Дименко — PHP і Python-розробник, який вже чотири роки працює суто на фрилансі. Каже, що сьогодні йому достатньо працювати 20 робочих годин на тиждень, щоб коштів вистачало на життя й подорожі.
Про те, чому змінив стабільну офісну роботу на фриланс, про труднощі у цій сфері й те, чи планує влаштовуватися в компанію, Сергій розповів в інтерв’ю DOU.
В Данії працював у Королівській бібліотеці
Про роботу в офісі
До 2014 року я часто змінював стек технологій, щоразу починав з нуля. Працював ще в FoxPro 2 (DOS-версія) на початку нульових. Програмувати веб, йдеться про PHP 3/4, Flash, за часів dial-up модему й оптимізувати кожен байт було нецікаво, але за 10 років я повернувся у веб. У мене є диплом бухгалтера, тож писав софт для бухгалтерів і менеджерів. Мов було багато, але зараз жодна не використовується: Delphi, C++Builder, 1С. Перепробував «креативні» професії (реклама, PR, неурядові організації), однак розчарувався. Там люди не розвиваються. Тому повернувся в IT. Після революції був у штаті компанії DA-14, звідки звільнився влітку
На останній роботі відпустка була десять днів на рік. Мені, м’яко кажучи, було замало цього часу. Завжди стояв вибір між відпочинком взимку (сноуборд) і влітку (музичні фестивалі й море). Жодна оптимізація не давала шансів на повноцінний відпочинок, а працювати віддалено не дозволяли.
Тож 25 липня 2016 року стало для мене новим святом — днем, коли я став фрилансером. З того часу став рідко заходити на LinkedIn. Мабуть, HR’и ображаються, що я їм відповідаю: «Дякую, у мене все й так добре» через пів року після запрошення (сміється).
У програмуванні я вже понад 10 років. Сьогодні мій стек — це PHP/Python.
Про перших клієнтів і нюанси роботи на фрилансі
На старті шукав рекомендації серед друзів, колишніх замовників, партнерів. Хтось комусь мене порекомендував, і я отримав перші замовлення.
Тепер проєкти знаходжу або через Upwork, або рекомендації. Намагаюся вести хоча б один постійний проєкт, навіть за невеликий рейт, аби були гарантії, що на хліб, сіль і дах над головою грошей вистачить. Щоб було й на масло, шукаю короткі підробітки — за них більше платять. Але проєкт менше ніж на 200 годин не розглядаю. Інколи беруся за цікаві завдання, наприклад у Machine Learning, але ставлю невелику ціну, бо досвіду недостатньо — така робота суто для душі. Це один з великих плюсів фрилансу: робити не ті проєкти, які скаже компанія, а ті, які хочеться.
Найбільше та найбанальніше відкриття — твої навички нікому не потрібні, якщо ти їх не можеш продати. Фриланс — це повноцінний бізнес, але дуже маленький, де ти сам маєш виконувати всі функції. Понад 50% часу займає менеджмент. А ще ж є тестування і DevOps. Виходить, на розробку залишається 30% часу.
Тому завжди кажу: якщо не любите менеджмент, тестування та адміністрування, не варто переходити у фриланс. Аутсорсингові компанії привчили замовників, що вони оплачують час розробника й отримують безкоштовно час PM’а, адміна й тестувальника.
Якщо вам бракує досвіду, щоби із загальних фраз клієнта написати й затвердити кошторис, узгодити стек технологій, то фриланс теж не для вас. Я бачив багато гарних розробників, які брали проєкти на кілька тижнів, починали імплементацію, а потім, наприклад, розуміли, що неправильно трактували слова замовника. У результаті двотижневий проєкт ставав тримісячним, а людина замість оплачених 10 днів працювала 60. Клієнт у процесі завжди хоче щось змінити або поліпшити. Якщо не проговорити всі нюанси до початку робіт, не узгодити кожен пункт, то замовник трактуватиме це на свою користь і 100% щось змінить у ТЗ. Зазвичай це результат поганого менеджменту з боку фрилансера.
Наведу гіпертрофований приклад того, що буде, якщо людині бракує досвіду. На фрилансі вона продає свій час втричі дорожче за зарплату, але:
- 100 годин йде на роботу сейлза.
- 170 — на менеджмент. Те, що робить професійний PM за тиждень, людина без досвіду зробить за місяць, адже потрібно пройти шлях від побажань замовника до затверджених тікетів і спринтів.
- 170 годин займе розробка (за яку фрилансеру й заплатили).
- 170 годин піде на DevOps, тестування, виправлення багів і фінальні зауваження.
У підсумку розробник продав свій час втричі дорожче, але загалом витратив на проєкт понад три місяці. Виходить, реальний дохід буде меншим за заробітну плату в офісі.
Ці цифри, звісно, умовні. В когось є навички, але прокрастинація бере своє, дехто багато годин налаштовується на спілкування із замовником чи має вивчити, що таке Amazon Web Services. Гарний менеджер зможе продати час на написання кошторису, тестування та інше. Але для цього потрібен досвід, якого середньостатистичному розробнику бракує.
На старті не вистачає і навичок, щоб переводити замовника з категорії тимчасового в категорію постійного. Адже зазвичай клієнт приходить із забаганками, а ти маєш зробити продукт, що подобатиметься йому та ЦА. Якщо є менеджерський досвід, клієнту можна продати реалізацію проєкту, яку б він точно не сформулював чи навіть не уявляв у мріях, адже нерідко його бачення помилкове. І якщо фрилансер просто виконує побажання, то проєкт точно не злетить, стартап закриється, а клієнт наступні роки відкладатиме гроші на нову спробу. І є сумніви, що знову звернеться до вас.
Робота в грецькому кафе, 2018 рік
Про формування ціни на послуги
Проєкт може бути нескінченним. Тому оплату я беру або погодинну, або за спринт. Рейт залежить від того, чи клієнт оплачує весь час. Наприклад, якщо не хоче платити за тестування та багфіксинг, тоді я закладаю ціну на 20% вищу, бо час на виправлення помилок все одно буде витрачено.
Спринт узгоджується, до прикладу, в Jira. У кожного тікета є кошторис. Зазвичай я беру гроші за менеджмент. Це означає, що шлях від нотування та аналізу вимог до узгодження кошторису має оплачувати замовник. Але знаю багато фрилансерів і компаній, які це роблять безкоштовно.
Ціну на послуги почав підвищувати з часом. Зрозумів, що знання дають можливість реалізувати новий функціонал швидше. Те, що на старті зайняло б вісім годин, тепер займає дві. Але, звісно, я не кажу замовнику, що можу працювати швидше в чотири рази, й тому він має платити в чотири рази більше. Треба шукати баланс.
Питання рейту завжди нагадує мені історію про талановиту дівчинку, яка працювала поряд зі мною у коворкінгу. Вона знала все про все, будь-які новини фрилансу, і я дивувався, звідки в неї час, щоб це читати. Потім з’ясував, що дівчина працювала за $50 на годину й могла знайти клієнтів на
Щомісяця я рахую реальний рейт: дохід ділю на час, який витратив на роботу чи пов’язану з нею діяльність, включно з навчанням, пошуком клієнтів, витратами на транспорт, обід тощо. Реальний рейт можна підвищити тайм-менеджментом в рази.
Фриланс дає змогу отримувати стабільний дохід. Але найбільша проблема — це часткова зайнятість. Наприклад, на проєкті роботи на 20 годин на тиждень. Знайти стабільний part-time важко, якщо братися додатково за full-time, виходить 60 робочих годин на тиждень. Забагато. В такі періоди я зазвичай отримую нові скіли. Щоб вистачало на життя, мені достатньо працювати 20 годин на тиждень, але на пенсію та деякі мандрівки грошей може не стати. Рік за роком я працюю все менше, якщо рахувати в годинах, але заробляю плюс-мінус ту саму суму, яка покриває всі мої потреби.
Про баланс між життям і роботою
Я працюю щодня мінімум дві години, щоб тримати себе в тонусі. З роками зрозумів: легше працювати п’ять годин сім днів на тиждень, ніж три дні по дванадцять годин або в інших пропорціях. Як на мене, ефективність роботи, коли ти працюєш понад шість годин на день, суттєво знижується. Тому намагаюся цього уникати. Востаннє перепрацьовував в березні цього року, коли біг гірський ультрамарафон увесь вікенд. Вирішив зробити собі фору, щоб не думати про роботу щонайменше пів тижня.
Пам’ятаю, у перший рік фрилансу виробив звичку: у час, коли не відпочиваю на 110%, працюю або навчаюся. Довелося багато чого оптимізувати. На старті фрилансерського життя працював у поїздах, аеропортах, автобусах і ресторанах, поки чекав на замовлення. Тобто весь час, який через певні обставини не міг приділити собі, займався справами, щоб вивільнити години на повноцінний відпочинок. Якщо не міг відпочити, то змушував себе. Наприклад, ходив у кіно щодня в обід, щоб розділити робочий день на дві частини, їздив на всі великі концерти або купував авіаквиток будь-куди, де ще не бував. Поділ часу на «відривайся або працюй» мав згубні довготермінові наслідки, але сильно змінив моє життя. Колись для того, щоб заробити більше, я «оптимізовував» друзів, прогулянки, світанки. Тобто банально відмовлявся від них. Через це утворилася певна порожнеча. Тепер від цього концепту трохи відійшов.
Наразі, якщо відчуваю емоційне вигорання, намагаюся щось змінити у житті. Опановую новий скіл або шукаю нове захоплення. Стараюся ставити цілі на місяць вперед і більше, які змушують рухатися далі. Також аналізую дані трекера, який вимірює час, змінюю баланс: інколи треба більше відпочити, а інколи — попрацювати. Якщо нічого не допомагає, вирушаю у мандри.
У
Про професійний розвиток і керування часом
Від здатності правильно розпоряджатися часом залежить дуже багато. Коли для «підтримки штанів» достатньо працювати
Розвиток — найбільша проблема фрилансерів, бо з часом вони або деградують, або знання стають непотрібними на ринку. Адже є спокуса робити тільки те, що добре виходить, заробляти більше, а решту часу витрачати на себе. В такому разі за кілька років фрилансер не знайде собі місця на ринку.
Щоб уникнути сумних наслідків, у період часткової зайнятості колекціоную сертифікати. Зазвичай це щось з Artificial Intelligence, Machine Learning, Data Science, розробки під mobile.
Якщо у вас є досвід менеджера, можна наполягти на використанні нового фреймворку або бібліотеки, щоб вивчити щось нове коштом клієнта. Звісно, для цього треба бути експертом, аби не підписатися на те, що не здатен довести до кінця.
На офісній роботі ти змушений розвиватися — часто завдяки досвіду колег. Коли працюєш на себе, треба змушувати себе вивчати щось нове. За це не платять, але кожного кварталу я виділяю певну кількість годин на розвиток.
Щоб не загубитися в часі, використовую кілька програм для планування. Для розуміння, що й коли маю зробити, є Google-календар. Ще є Scrum-дошка зі стікерів на стіні, там тікети з усіх сфер життя: дозвілля, спорт, робота.
Крім того, встановив тайм-трекер — записую все, що займає понад 15 хвилин. Це допомагає зрозуміти, який баланс між проєктами, навчанням, розвагами, особистим життям тощо був за останній період, і чи не час щось змінити.
Більшість проєктів у мене на Jira та Bitbucket. Обидва — Atlassian, які гарно інтегруються. Хоча клієнти бувають різні.
Робота з Ice Bar у Копенгагені
Про вдалі та провальні проєкти
Я завжди намагаюся підписувати договір про співпрацю. Хоча досвід показує, що такі документи здебільшого убезпечують замовника, а не виконавця. Зазвичай майже будь-які проблеми можна розв’язати, якщо з обох боків сидять гарні менеджери, але таке буває рідко. Як правило, розробник — поганий PM, а замовник не експерт у темі, іноді просто фантазер. Є тисячі замовників, які мріють створити новий Facebook за $1000, і є тисячі фрилансерів, які беруться за реалізацію соціальної мережі у WordPress. Ці люди справді існують, їх багато, і вони знаходять одне одного. І завжди одна зі сторін буде незадоволена.
Про мої проєкти багато розповідати не дозволяє договір про NDA. У загальних рисах скажу, що працював над
Бували й невдалі приклади у практиці. Інколи рейт непрогнозовано падав. Наприклад, з’являлася фронтенд-розробка, яку я не тільки не люблю, але й неефективно витрачаю на неї час. Або вимоги до документації були надзвичайно високі, а доплачувати клієнт не хотів. Чи обчислення на моєму стейджингу стали занадто дорогими, бо клієнт хотів працювати на реальних, а не тестових даних. Траплялося, що клієнт прагнув комунікувати по дві години щодня. Є багато таких прикладів, і коли реальний рейт падає, я намагаюся закінчити співпрацю, бо змінити підписані умови зазвичай неможливо.
Як бути з негативними ситуаціями, однозначно сказати не можу. Єдиного рецепта немає. Кожен проєкт індивідуальний, варто зрозуміти, чому замовник це робить і що з цим робити мені. Рекомендую витрачати більше часу та активно комунікувати з клієнтом до підписання контракту, щоб оцінити його адекватність і власні можливості. З останнім у фрилансерів нерідко бувають проблеми, адже вони обіцяють неможливе, коли відчувають великий куш. Треба бути чесними та не вірити в казки й дива. Завжди варто розуміти: що більший рейт, то вищі очікування замовника, і не тільки від коду, а й загалом від роботи над проєктом, а вам може забракнути досвіду в багатьох сферах.
Про (не)бажання повернутися в офіс
З фрилансом у мене дві проблеми:
- Недостатньо грошей відкладаю на пенсію, бо багато мандрую світом.
- Хочу перейти в AI (ML), але це зазвичай R&D-проєкти, де фрилансерам не місце. Їх «зі скрипом» продають великі компанії, а окремому невідомому part-time девелоперу точно не довірять.
Це підштовхує до думок про постійну роботу в офісі. Але все йде по замкненому колу:
Пункт № 1. Восени замислююся, що час шукати роботу. Розумію, що скоро зима, а я звик до гірськолижного сезону протягом
Пункт № 2. У березні повертаюся з гір і розумію, що треба полетіти на серфінг, бо змерз за ці холодні місяці. Планую подорож, купую квитки місяці на два, бо вони дорогі й брати на менше просто не вигідно.
Пункт № 3. Вертаюся в травні. Знову згадую про роботу. Але тут підвертається якийсь марафон у Греції чи трейл в Альпах. А потім починаються фестивалі, куди приїжджають улюблені гурти.
Пункт № 4. Про роботу я згадую у жовтні, а далі... далі вертаюся до пункту № 1.
Колись у мене був план вийти на пенсію у 50 років, інвестувати кошти в щось, аби вже не працювати. Я провалив цей план з кількох причин: складна ситуація у країні, багато коштів віддавав на армію, крім того, я з Харкова, де інвестувати в нерухомість страшно, бо «рускій мір» може прийти будь-якої миті й усі інвестиції обнуляться. Тому багато мандрую світом замість того, щоб заощаджувати.
Звісно, влаштуватися на галеру і 15 років стояти за конвеєром було б фінансово вигідніше. Можливо, я б уже забезпечив собі пенсію. Але думка, що я марную життя на діяльність, яка не подобається, для мене нестерпна. І жодні «плюшки» не можуть цього змінити.
Після Майдану взагалі з’явилося відчуття, що маю жити за двох: за себе й хлопця, який стояв поряд і був убитий. Смерть дуже змінює світосприйняття, і марнувати час ти вже просто не можеш.
Селфі з Грузії, 2018 рік
Три поради тим, хто хоче перейти на фриланс
- Багато друзів на початку кар’єри бралися за відверто невигідні проєкти, щоб здобути репутацію. Перші кроки у кожного різні, треба аналізувати й працювати над прогалинами в знаннях. Я не рекомендую переходити на фриланс недосвідченим фахівцям, бо розробники з Індії затиснуть демпінгом. Спочатку треба стати експертом у сфері, в якій працюєш, щоб не боротися за шматок хліба з тими, хто ладен працювати за долар на годину. А такі є, і їх багато!
- Раджу спробувати себе на фрилансі, поки працюєте в офісі. Так побачите, в чому бракує досвіду і зможете його набратися у колег офлайн. Це набагато ефективніше, ніж засвоювати інформацію онлайн.
- Розвивайтеся в напрямі, який дає більше драйву і де менша конкуренція на ринку. Знання алгоритмів, машинного навчання та статистики дають суттєву перевагу на ринку фрилансу, бо з математикою у 90 % шукачів величезні проблеми.