Сьогодні ми розповімо про портфоліо. Наскільки воно необхідне для програміста і як його правильно скласти, що потрібно, щоб підтвердити свою кваліфікацію, та на які деталі слід звернути особливу увагу, створюючи власну презентацію — про це та інше читайте у нашому матеріалі.
У міру того, як фахівець накопичує знання та вміння, у його багажі збирається дедалі більше прикладів власних робіт.
Художник пише красиві картини, фотограф робить вдалі знімки, кухар готує вишукані страви тощо. Усі ці твори показують наявність у людини заявлених навичок.
Саме тому найкращі приклади збирають в окремий віртуальний портфель, який називається портфоліо.
До речі, слово «портфоліо» походить від італійського portafoglio, яке саме так і перекладається — гаманець, портфель. Посилання на портфоліо прикріплюють до резюме як доказ заявлених спеціалістом навичок.
По-перше, воно необхідне будь-якому айтівцію, який хоче отримати довгоочікуваний офер. По-друге, воно знадобиться роботодавцю, який побачить на прикладі ваших робіт, що ви вмієте, і який у вас є багаж знань.
Дизайнери, розробники мобільних і десктопних додатків, веб-програмісти, а також фахівці практично всіх IT-напрямків потребують свого портфоліо.
Багато хто плутає портфоліо та резюме, вживаючи ці слова як синоніми. Насправді це різні речі.
Резюме містить перелік умінь та описує скіли потенційного співробітника, розповідає про його особисті якості, наприклад, здатність працювати в команді або бути креативним. Також воно зобов’язане включати біографію кандидата, короткі відомості про попередні місця роботи і обов’язки, які покладалися на цю людину.
Портфоліо — це необов’язковий, але дуже важливий додаток до того, що написано в резюме. Воно підтверджує заявлені навички та знімає всі питання щодо кваліфікації спеціаліста.
Для художників, фотографів чи дизайнерів портфоліо може бути оформлене як онлайн-галерея робіт або взагалі викладене для доступу до мережі окремим PDF-файлом.
У випадку з розробниками ПЗ справа складніша. Будь-яка якісна програма розробляється не один тиждень, тому портфоліо, особливо у тих, хто тільки нещодавно почав вивчати програмування, може бути досить скромним.
Як його зібрати? При влаштуванні на роботу програмістів (як досвідчених, так і початківців) існує практика демонстрації своїх pet-проєктів.
Pet-проєкт — це завдання, яким програміст займався деякий час просто тому, що йому це було цікаво (звідси і кумедне слово pet — домашній улюбленець).
Pet-проєкти необов’язково мають бути великими. Це може бути, наприклад, написане для геймерської клавіатури альтернативне програмне забезпечення, або який-небудь чат зі штучним інтелектом, зручний інструмент для автоматизації рутинних процесів тощо.
У процесі роботи над власним pet-проєктом майбутній програміст набирає досвід. Він з нуля починає розумітися на тому, як працює та чи інша бібліотека чи фреймворк, вчиться «обкатувати» сире рішення, шукати в ньому недоліки та баги.
Крім того, йому доводиться звертатися за порадами до колег на форумах та у технічних спільнотах. Тому він змушений навчатися грамотно та лаконічно формулювати суть проблеми. Наявність в портфоліо pet-проєктів завжди каже про те, що людина налаштована на роботу і готова вирішувати питання, які виникають по ходу.
Часто буває, що людина працює над проєктом, але потім не може його нікому показати і не має права розповідати про технічні подробиці. На жаль, від таких проєктів у портфоліо краще відмовитись. Або під час їх згадуваннія намагатися «знеособити», розповідаючи лише поверхово і перераховуючи в описі роботи інструменти/технології, з якими працювали саме ви, розробляючи свою частину коду.
Можна спробувати отримати офіційний дозвіл на розголошення якоїсь інформації, яка не нашкодить власнику прав на цей продукт, але пам’ятайте — шансів у вас не багато. Одним словом, потрібно бути дуже обережним з проєктами, закритими NDA.
В крайньому випадку можна просто перерахувати назви таких проєктів, і якщо вони відомі, одне ім’я може надати вам вагу як фахівцю. Це краще, ніж нічого про них не сказати.
Але що робити, якщо креативність — це не зовсім про вас? Якщо з ідеями pet-проєктів справи погані, можна вчинити інакше. У кожному IT-напрямку є набір стандартних завдань, які можна використовувати для прокачування своїх скілів.
Їх без особливих зусиль можна знайти в інтернеті, якщо трохи погуглити.
Ось, наприклад, список проєктів для фахівця, який позиціонує себе на позицію програміста Python:
Аналогічні списки проєктів можна знайти і для інших мов програмування.
Якщо ви працювали на фрілансі, то, напевно, знайомі з сервісами, які спрощують публікацію вашого резюме та портфоліо.
Але для веб-розробника цілком очікувана наявність власного сайту-візитки, де будуть представлені якісь конкретні приклади залучення ваших скілів:
Ще варіант відповіді на запитання «де знайти ідею» — займайтеся проєктами з відкритим кодом та додавайте їх до своєї колекції робіт. Наприклад, вирішуйте технічне завдання з чужих репозиторіїв на GitHub. Можете, навіть, використовувати утиліту для вибору випадкового issue на потрібній мові.
Інший спосіб вигадати собі завдання — скористатися генератором челенджів. Як варіант — Sharpen або Briefz. Просто замініть design на develop та спробуйте створювати те, що там пропонується.
Непоганий спосіб прокачати свої навички та виконати тестові завдання — сервіс Codewars. Він підтримує 55+ мов програмування та допоможе закріпити різні навички кодингу.
Добре, якщо ваше портфоліо не буде нудним. Вау-ефект ще ніхто не скасовував, і якщо в колекції виконаних вами робіт, скажімо, буде не просто п’ять корпоративних лендингів, а п’ять яскравих сайтів з унікальною динамічною версткою та анімацією — це буде те, що треба.
Основні вимоги до розробника залежать від напрямку, у якому він працює.
Існує ряд правил, єдиних для всіх програмістів, на яких би мовах вони не писали свій код. Переглядаючи ваші роботи, роботодавець може оцінити якість коду, а також те, наскільки ви дотримуєтеся загальних правил оформлення, наприклад, стилів відступів, які роблять код легкочитаним. Методи, класи мають бути задокументовані.
Не перевантажуйте свій сайт-візитку текстом. Розбийте розділи сайту на власні веб-компоненти чи окремі HTML-сторінки.
Впорядковуйте свій код, щоб спостерігалася ієрархія з певними головними областями. Використовуйте section
, nav
, header
, aside
, body
тощо. Слідкуйте, щоб позиціонування елементів через CSS відповідало сучасним специфікаціям.
Якщо ви ідентифікуєте себе як веб-розробник, за можливості зменшіть використання в коді div
та span
.
При описі своїх робіт добре було б між іншим згадати деякі алгоритми, які використовувалися для їх реалізації. На це з великою вірогідністю клюне роботодавець і задасть вам кілька питань, до яких ви вже будете готові.
Наприклад, ви можете сказати, що використовували у своїй програмі алгоритм швидкого сортування. У цьому випадку є великий шанс, що вас запитають, які ще існують алгоритми сортування. Ви їх легко перерахуєте: сортування бульбашкою, сортування Шелла, сортування перемішуванням і т.д.
Ну, і звичайно, потрібно запам’ятати їхні переваги та недоліки.
Опис проєктів у портфоліо читатиме роботодавець, тому розповідати про технічні моменти потрібно дуже докладно, але без фанатизму. Подбайте про те, щоб в описі було достатньо багато скріншотів. Для їх оформлення можна вдатися до послуг дизайнера або взяти готові професійно зроблені шаблони.
Якщо ви програміст, то вся чи більша частина вашої роботи так чи інакше зав’язана на GitHub (або будь-якій іншій системі контролю версій).
Тому наявність посилань на репозіторії GitHub є обов’язковою. Але тут є нюанс. Ваше портфоліо може бути набагато ширшим, тому складаючи своє резюме, слід брати роботи під ті вимоги, які вказані у вакансії.
Скажімо, якщо потрібна робота з базами даних, варто показати приклад, де реалізована якась фішка з БД.
Приділіть увагу своєму розділу на GitHub, перевірте профіль та взагалі оформіть його акуратно та педантично.
Дайте нормальну та зрозумілу назву для репозиторію, зробіть опис. Файлова ієрархія у вас не повинна бути заплутаною.
Обов’язково мають бути:
Заповнити репозиторій не важко — це можуть бути:
У показнику вашої активності встановіть дозвіл для відображення коммітів з приватних репозиторіїв. Комміти, ясна річ, мають бути визначені — в описі слід вказувати не просто bug fixed, а який саме знайдено баг, що саме було виправлено.
Постійне використання систем контролю версій дозволить продемонструвати активність у профілі та буде гарним сигналом для роботодавця чи рекрутера.
Додайте readme, посилання на демо, ліцензію, опис установки, відео, картинки тощо. Використовуйте теги, які дозволять рекрутеру знайти ваш репозиторій-портфоліо. Код-стайл має бути скрізь однаковим.
Не варто робити портфоліо надто довгим і включати до нього все підряд. Відбирайте для нього лише найсильніші роботи — різноманітні, яскраві та креативні. При цьому слід пам’ятати, що лише один проєкт, навіть дуже хороший, навряд чи можна вважати достатнім для портфоліо.
Не варто включати в портфоліо незавершені проєкти, навіть якщо вони дуже цікаві. Сирий продукт лише зіпсує загальне враження.
Проєкти портфоліо потрібно час від часу переглядати та оновлювати, видаляючи старі та неактуальні. Інакше вийде, що ви посилаєтеся у своєму портфоліо на якесь вирішене завдання, де використовували інструмент, який сьогодні вже втратив свою актуальність і не використовується. Роботодавець може подумати, що ви його використовували через недостатню кваліфікацію.
Звертайте увагу на стиль коду. Якщо ви запозичуєте якийсь фрагмент, зводьте його до загального оформлення. В іншому випадку для досвідченого програміста, який оцінюватиме вашу роботу, це буде сильно кидатися в очі.
Будьте уважні при складанні опису своїх pet-проєктів. Роботодавець може дивитися не тільки на суть проєкту, але також може приділити увагу таким «дрібницям» як організація його підтримки, використання git-flow, написання документації.
Перечитуйте тексти з будь-якими описами, які стосуються вашого портфоліо. Наявність друкарських помилок може свідчити про те, що ви недостатньо уважні до своєї роботи.
Ну, і ясна річ, не варто привласнювати собі чужі проєкти — це дуже швидко з’ясовується і забере не тільки ваш час, а й час роботодавця.
Якщо вам потрібно створити портфоліо, ви можете скористатися конструктором сайтів, що спростить завдання оформлення ваших робіт.
Крім того, обрану платформу можна оптимізувати під певні технології. Так, наприклад, генератор сайтів Gatsby, орієнтований для React.
VuePress використовує Vue.js. Перевага цих сервісів у тому, що ви швидко отримуєте стабільний статичний сайт з адаптивністю для перегляду на мобільних пристроях і оптимізацією «з коробки».
Платформ для сайту-портфоліо існує безліч.
Найпростіший варіант — Google Sites. Він безкоштовний, має набір шаблонів і дуже простий у використанні. Єдиний мінус — аскетична адреса такої візитки.
Іноді для створення проєкту власних сил може бути недостатньо. У цьому випадку можна піти на кооперацію з кимось і зробити проєкт разом.
Наприклад, домовитися з веб-дизайнером-початківцем, який зробить цікаву верстку, а ви зі свого боку, наприклад, реалізуєте на Python- або Java-логіку веб-додатків.
Такий «бартер» у більшості випадків закінчується успішно, адже в проєкті зацікавлені обидва розробники. Знайти собі однодумця можна, наприклад, тут — на Simbi.
Сподіваємося, що після прочитання цієї статті шанси знайти хорошу роботу у вас помітно зростуть. Найголовніше — не відкладайте створення портфоліо на потім і почніть робити хоча б невеликі кроки у бік своєї мети.
Резиденти Дія.City сплатили до бюджету понад 8 млрд грн податків в І кварталі 2025 року.…
У Китаї закликають офісних працівників не працювати надто багато — держава сподівається, що вільний час…
Експерти звертають увагу на тривожну тенденцію: люди все частіше використовують ChatGPT, щоб визначити місцезнаходження, зображене…
Компанія JetBrains випустила нову версію мультимовного середовища розробки IntelliJ IDEA 2025.1. Оновлена IDE отримала численні…
Платформа обміну миттєвими повідомленнями Discord впроваджує функцію перевірки віку за допомогою сканування обличчя. Зараз вона…
Wikipedia намагається захистити себе від тисяч різноманітних ботів-скрейперів, які сканують дані цієї платформи для навчання…