Портрет semi-junior developer-а 2026
Мене звуть Рома, Роман, Ромко, Ромашка або ж Роман Іванович, мені 20, хто їсть поки читає смачного, а я розпишу портрет semi-junior розробника (тобто себе).
Освіта копі пастера (Computer Science)
Минулого року закінчив Надвірнянський коледж НТУ на спеціальності по копі пасті (Computer Science), де за 4 роки мене (майже) навчили оформляти звіти по практичним роботам. І за словами колег по нещастю, що університет, на які були перспективи, не відрізнятиметься майже нічим від коледжу по якості освіти, було прийнято рішення туди не поступати, а дошліфовувати те що знав.
За перші 2 курси я непогано приборкав основи програмування, влітку з 2го на 3ій курс вивчив ООП по купленій мною книзі (яку я проходив через прокрастинацію аж 3 роки) по python 3.0 від дядьки Олексія Васильєва з Київського національного університету імені Тараса Шевченка (дай боже йому здоров’ячка).
Пізніше я виїхав в британію де пішов працювати на full-time роботі пакувальном, пізніше підвищився до оператора пакувальної машини, паралельно з роботою навчався і в коледжі і в дома програмуванню, і англійську підтягував з А1 рівня (зараз B1-B2), і в зал бігав по 3 раза на тиждень.
Між першим і другим семестром третього курсу я почав по відосикам на youtube вивчати Django, майже закінчивши курс на youtube. Моєю помилкою було те, що я вирішив при початку другого семестру закінчити всі практичні, що і вдавалось, але пізніше почалась курсова/практика і часу взагалі не було. Так python і поховався. Півтора місяця літа була прокрастинація у розвитку, або ж більш молодіжною термінологією — вигорання, в цей період взагалі не було бажання щось вивчати.
Все що я вивчав була англійська, з початком 4 курсу в коледжі почалось вивчання нових мов, там я вивчив Java паралельно і її фреймворк JavaFX, на якому за наказом викладача були створені шашки. На аудієнції я показав робочу гру з ось таким UI (source: github.com/...Xrn/Checkers_college_game, на превеликий жаль, в коледжі не вивчали що таке github тому readme порожній):

Пізніше на другому семестрі четвертого курсу були приборкані bootstrap/tailwind/jquery/laravel, на які я витратив солідну одиницю часу, і по яких я писав курсову на тему по продажі нерухомості в івано-франківську, чуть чуть UI:

Пізніше того ж семестру був навайбкоджений дипломний проєкт на Flutter mobile/web + firebase за допомогою chatgpt за місяць. Не через те що халявити хотів, а через брак часу, пишучи на flutter з чатом я паралельно і вивчав його, після диплому був період 1 місяця «вигорання», а після я продовжив поглиблюватись у flutter.
Flutter/Networking/Перша комерційка?
Закінчивши коледж з’явився час. Пройшовши через hive / drift / sharedprefs / flutter_secure_storage / riverpod / firebase / dio роботу з pokemon / binance api-шками як і rest, так і websockets, знайшов на DOU свій перший 3 місячний інтершип по flutter.
З грудня 2025 до лютого 2026, де писав у команді під менторством hmi-ку для вирощування рослин на feature-first layout clean architecture, пізніше купив ESP32 board, вивчив C на CS50 2026 від гарварду, і напилив BLE проєкт на flutter + C++. Пізніше потрапив на другий інтершип, під час якого познайомився з Cubit/Bloc + freezed, писав гру для e-commerce продукту.
Досі пишу ту гру, тільки по новому, станом на сьогодні затвердили щомісячну виплату у 2 000 грн в тій канторці (якраз НБУ новий номінал презентувала, хаха), у грі поки зробив чуть анімацій, чуть UI, чуть логіки, чуть оптимізації, сказали, шо за місяць роботи мало, тому 2 000 тримай і радій, я так і зробив, шо в ІТ зп 2 000, шо на заводі 2 000, дожились хаха (тіки в ІТ в гривнях, а на заводі в фунтах).
Грішки першої комерційки
Проєкт у тій канторці так собі, firebase rules не описані ні в store, ні в storage, хоча апка в проді, я їх попередив що апка живе до першого реверс ентузіаста. Вони сильно занепокоїлись і нічого не стали робити, + є багато бомб уповільненої дії. До прикладу перша: при кожному запуску апки користувач витягує всі стікери з firebase які там є, тому при 6 активних користувачах у них по
Про це я сеньорам-помідорам не казав, так як вони не дуже копітливо чухали голову відносно store/storage rules. З оптимізацією трабл ще, що стікери можуть мати будь-який формат і розмір у БД. Ні функцій, ні тригерів що б це кудись чи якось конвертували не було, це і не моя зона відповідальності. Моя — це написання гри, вся гра у мене кешується, і робить 1 запит у фаєрбейз при другому і подальшому заходженні, а саме перевіряє колекцію з документом що містить рівень БД, якщо рівень локальної закешованої БД і віддаленої розбігаються, тоді дані перекешовуються, а якщо рівні БД одинакові, тоді використовуються закешовані дані і нічого не перекешовується.
Що ? де ? як ? коли ? по майбутньому
Від середини весни до сьогодення я перепробував ще й hooks + riverpod_generator, fpdart, talker та rive, основну частину гри планую дописати до кінця літа, а там і паузу взяти у цій канторці, для самонавчання і своїх пет проєктів.
Хочу потрогати serverpod/supabase/rive і ще щось, набити руку на цьому всьому і пізніше claude пустити жити в терміналі, поки агентів не чіпав, чисто
Якщо є якісь питання/пропозиції не соромтесь запитувати, цікаво почути що крутиться у інших людей в голові.
Немає коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів