Курсове и академии за програмисти - митове и реалности

Радослав Георгиев

Публикувано на: 12 август 2024г.

С разрастването на IT индустрията в България, професията програмист се превърна в примамливо желание.

(Тук отварям първа скоба, нещо като мета-коментар към написаното - никога не съм харесвал думата “програмист”, защото тя не описва добре с какво се занимаваме. Софтуерен инженер е много по-точно описание на професията.)


Възможностите за добро заплащане, кариерно развитие и отдалечена работа са достатъчни да накарат редица хора да предприемат действия по смяна на своята професия.

“Ще изкарам една академия, ще ме вземат на работа, ще работя от вкъщи и ще ми плащат добре”.
Mакар и опростени, това са думи и мисли, често споменавани през последните години.

Реалността, обаче, се оказва малко по-различна.

С лекото отрезвяване (за да не използвам думата криза), което претърпя българската IT индустрия към края на 2023 и началото на 2024, нещата започнаха да изглеждат по малко по-различен начин.

Очакванията към младшите специалисти, резонно, станаха по-големи.

Да търсиш работа за повече от 6 месеца и да получаваш 0 отговора на своите кандидатури, се оказа много по-близо до реалността, от обещаното. Без изгледи това да се промени.

От началото на годината, от както HackBulgaria се завърна, проведохме множество разговори именно с такива хора.


Допълнително, в HackSoft, редовно отваряме позиции и интервюираме хора.

(Тук отварям скоба - в HackSoft, бидейки “people oriented”, се чуваме с много повече кандидати и се опитваме да дадем адекватна обратна връзка и насоки на тези, които знаем, че по-скоро нямат нужния опит и умения на този етап. И се оказва, че сме едни от малкото, които го правят.)

Стъпвайки върху преподавателския ми опит както в HackBulgaria, така и във ФМИ (Софийски Университет), споделям моята гледна точка, с която да постигна 2 цели:

  1. Да изравня очакванията към реалната ситуация на пазара.

  2. Да помогна на всеки, който в момента ходи по този път.

В тази статия ще се фокусирам върху софтуерното инженерство. За QA готвим допълнителни материали, тъй като там нюансите са по-различни.

Нека започнем с адресирането на трите големи слона в стаята 🐘

Слон 1 🐘 - Една академия не стига

Да изкараш една академия, само по себе си, не е достатъчно.

Пандемията накара и академиите да преминат към изцяло онлайн обучение, като тази тенденция се запазва и към момента, без изгледи за промяна.

Именно възможността за “онлайн изкарване на курс”, накара много хора да “помиришат” хубавия живот в IT индустрията и да се запишат, мислейки си, че това ще е достатъчно.

Не е.


Софтуерното инженерство е страхотна професия, която включва в себе си както занаятчийство, така и инженерство. Има изкуство. Има и наука.

И нека го кажем - не е лесно. Изисква се едновременно полагане на големи усилия и минаване на време.

По-известните академии са бизнеси, които целят масовост, за да бъдат рентабилни.

И именно комбинацията от онлайн курсове + обещание за по-добър живот в IT индустрията, докараха много хора при тях.

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

Академиите са нито толкова интензивни, колкото трябва, нито пък продължават толкова, колкото трябва.

Все пак тяхната дейност трябва да прави и бизнес смисъл.

Едногодишен курс с 50 човека вътре не прави бизнес смисъл. 6-месечен онлайн курс с 1500 човек вътре - прави.

Само по себе си, това не е критика към академиите. Те имат своята роля и могат да служат за основен стълб, с който да се изгради фундамент. За това, ще си говорим малко по-нататък в статията.

Тук адресирам заблудата, че ако изкараш една академия, нещо магически ще се промени. Няма.

Слон 2 🐘 - Извън София е по-трудно

Отново, пандемията създаде грешната представа, че отдалечената работа в българската IT индустрия е “новата реалност”, просто защото тогава нямаше друга алтернатива.

Истината е, че това не е така.

Да, нашата професия дава привилегията човек да може да работи отдалечено. Но тази привилегия идва една идея по-късно с кариерното развитие на човек. И не е налична във всяка една компания.

Първа работа в индустрията, отдалечено, е по-скоро мит.

Ако ще стажувате, или ще започвате работа като младши специалисти, почти сигурно е, че ще ви искат на място, в офис.

Което означава, че ако сте изкарали просто една академия, живеете например във Варна (нищо против града, използвам го като пример за нещо достатъчно далеч от София) и пускате CV-та за позиции, които са обявени за “hybrid”, но реално са с офис в София - няма да ви отговори никой.

Основната концентрация на българската IT индустрия е в София. След това следва Пловдив. И тук-таме има офиси на фирми и по другите населени места.

Най-голямата препоръка, която мога да дам тук е, да видите кои фирми имат офиси в града в който живеете и да се свържете с тях.


И ако няма такива - да намерите най-близкият до вас град, в който има. И отново да се свържете с хората там.

Другите варианти, за съжаление, са по-неприятни:

  1. Или трябва да сте много по-добри, за да имате възможност да си намерите начална отдалечена работа.

  2. Силно препоръчвам да изгледате Live Q&A-а с Мирослав Мирославов от OfficeRnD, в който си говорим именно за това.

  3. Или да се преместите в София.


Българската IT индустрия се разширява и със сигурност ще излезе извън пределите на София, но за това ще трябва време.


А до тогава, реалността е, че ако търсите първа работа и не се намирате в град с концентрация на фирми - играта става много по-трудна.

Слон 3 🐘 - Парите в началото няма да са това, което очаквате

“Аз имам един познат, дето стана IT, работи си от вкъщи и взима пет бона чисто” е мит.

Да, тази професия плаща добре. Но за да стигнете до това “добре”, ще трябва да работите и да полагате усилия с години наред.

Това, което казвам на много хора е, че трябва да са готови, стартовата им заплата в IT индустрията, да бъде по-малка от текущата заплата, която взимат.

Диапазонът на стартова заплата, чисто, е между 1000 и 2000 лв.
По-реалистично между 1000 лв. и 1500 лв. И по-рядко между 1500 лв. и 2000 лв.

С 6 месеца изпитателен срок и поне една година, преди изобщо да се говори за нещо друго.

Парите, които ще получавате, ще са пропорционални на стойността, която ще носите за компанията.

Ако намерите компания, където временно търсят “топло тяло на стол”, защото ще взема пари за него, пък резултатите нямат много значение - сигурно ще ви дадат повече пари. Но това ще приключи в момента, в който спрете да сте от полза.


Тук, реалността, сериозно се разминава с изградената митология. Имайте го предвид.

Основен стълб за изграждане на фундамент

Нека обърнем поглед към стъпките и препоръките, с които да нормализираме очакванията.

Важно човек да следва някаква структура в своя път към софтуерното инженерство.

Да има основен стълб, с който да изгради фундамент, над който да строи.

Обикновено, този основен стълб са или университетите, или академиите.

Най-добрата позиция, в която човек може да се намира, е следната:

  1. Скоро завършващ училище.

  2. С възможност да кандидатства за университет.


Тогава, моята препоръка винаги е:

  1. Или ФМИ (Софийски Университет)

  2. Или ТУ (София)

  3. Или НБУ (София)


Този “топ 3” списък е изцяло субективен, базиран на моят опит и преценка.


Ако човек влезе във ФМИ (било то Компютърни науки или Софтуерно инженерство), ще бъде в много по-добра позиция за старт на своята кариера след 2 години.

Разбира се, не всеки е на 18 години. Понякога, човек е на 35 и иска да си смени професията.

Тогава, изборът, малко или много, са академиите - те ще бъдат основният стълб, с който ще се гради фундамент.

Този фундамент ще бъде именно уменията за работа с компютър (смейте ми се, плюйте ме, но компютърната грамотност е на много ниско ниво) и уменията за програмиране (разбирайте - да въртиш цикли и да пишеш проверки, на Java / C# / Python / JavaScript / etc.).

И тук много хора бъркат уменията по програмиране с уменията по софтуерна разработка. Двете нямат общо, но пък за да започнете да се учите на софтуерна разработка, е добре да може да програмирате и да решавате задачи с код.

За това човек трябва да има основен стълб, с който да изгради базовият фундамент.

Само този фундамент не е достатъчен.

Без този фундамент - няма смисъл.

Веднъж имате ли го този фундамент, трябва да започнете да градите над него.


В две посоки - технологична и социална.

Градене над фундамента - технологична посока

Тук мога да го кажа изключително просто:

Независимо дали в момента карате активно академия, учите в университет или гледате клипчета в YouTube - трябва да пишете код всеки ден.

Като съм наясно, че използвам “всеки ден” за посока. Разбира се, че ще има дни, в които човек няма да има възможност, сила или желание. Но тези дни трябва да са по-скоро рядкост.

Софтуерното инженерство, като професия, иска обем.

Трябва да пишете код и трябва да създавате софтуер. Така се трупа опит. Така се научавате да виждате шаблони в нещата. Така се трупа и самочувствие.


(Тук отварям една важна скоба за самочувствието - не прекалявайте с него, защото от позитив, ще стане негатив.)

Няма никаква разлика с каквото и да е друго действие - било то спортно или професионално.

Трябва време и постоянство.

За това и разписахме нашата концепция за “3-те кофи” - за да помогнем именно с това - https://www.hackbulgaria.com/blog/three-buckets-what-projects-to-develop-to-gain-experience

Извън 3-те кофи, участия на състезания и хакатони са винаги полезни, особено в началото. Ако имате възможност - участвайте!

Всякакви допълнителни курсове, работилници, “upskill” програми са винаги добре дошли. Те помагат за трупането на обем и обикновено дават структура за следване.

Градене над фундамента - социална посока

Знаете ли какво би ви увеличило многократно шансовете за намиране на работа?

  1. Да са ви харесали някъде.

  2. Да ви препоръчат.


“Ей, сещаш ли се за Мария дето беше на хакатона от отбора дето взе 2ро място? Мисля, че ще пасне идеално за новата ни позиция.”


или


“Ей, познавам го Ванката, умно момче, пипа чевръсто, бута стабилно, препоръчвам го”.

Подобни изрази правят чудеса и отварят врати.


Смея да твърдя, че цялата българска IT индустрия, работи много сериозно с препоръки.

За да илюстрирам, ще ви разкажа как го правим в HackSoft. За входни стажантски позиции, стратегията ни е следната:

  1. Харесали ли сме някого? Пишем му.

  2. Ако горното не сработи, обявяваме вътрешно за възможността и чакаме за препоръки.

  3. Ако горното не сработи, разпространяваме сред по-широкият ни кръг / сред общността на Хак България (за това е хубаво да си в Discord)

  4. Ако горното не сработи - пускаме обява за работа.


Именно социалната посока е най-подценявана.


Ако не познавате никой от индустрията и никой от индустрията не ви познава - никой няма да ви хареса, камо ли препоръча.

Стратегията в стил “стоя си вкъщи и хвърлям CV-та” няма да даде добър резултат.

За това силно препоръчвам активна работа и в тази посока:

  1. Ако имате приятели работещи в IT индустрията - комуникирайте с тях по-често. Нека ви запознават и с други хора.

  2. Ходете по събития и си говорете както с представители на компаниите, така и с други колеги. Събития има много (даже твърде много).

  3. Ако се интересувате от Python и сте в София, винаги сте добре дошли на ежемесечните ни Python meetups - https://www.meetup.com/sofia-python-meetup-group/

  4. Присъединете се към някоя общност и комуникирайте активно.

  5. Винаги сте добре дошли в Discord-а на Хак България!

Оглеждайте се за добри кариеростартни възможности

Входът в IT индустрията обикновено се случва през едно от следните 3 неща:

  1. Изкарвате академия към дадена компания. Компаниите правят академии именно за това - за да отсеят кого да вземат и да си намалят риска с наемането на зелени и младши специалисти.

  2. Силно препоръчвам да изгледате това видео, където с Ален Паунов дискутираме именно академията на Сирма.

  3. Намирате си хубав стаж. Ако имате 0 дни работен опит като софтуерен инженер - вие сте стажанти. И е хубаво да изкарате стаж. Стандартно, стажовете са 6 месеца (за да съвпаднат с изпитателният срок). Но могат да продължат и повече - до 1 година. Важно е да се упомене, че в IT индустрията в България, стажовете са по-скоро платени.

  4. И разбира се, намирате си позиция за младши специалист. Тук, различните компании имат различни дефиниции за “младши специалист”. В HackSoft, за да бъде човек младши специалист, трябва да има поне 6 месеца работен стаж, като е най-добре това да е година.


Винаги може да кандидатствате и за по-общи обяви, но не очаквайте особен резултат.

И пак, сами по себе си, тези кариеростартни възможности няма да ви намерят работа.

Ако стратегията е “стоя си вкъщи и хвърлям CV-та”, няма да стане.


Работете по фундамента и надграждането на фундамента с двете споменати по-горе посоки.

А за списък от кариеростартни възможности, винаги може да погледнете именно в секция Кариеростарт на сайта на HackBulgaria - https://www.hackbulgaria.com/career-start

Отказ сега не означава отказ завинаги

Нещо, което смятах за нормално и добре познато, но след поредица от разговори се оказа, че не е така.


Ако кандидатствате за дадена позиция и се стигне до получаване на отказ, то този отказ не е “финален и завинаги”.

Това не означава, че никога повече няма да може да кандидатствате в тази компания. Това е просто един временен отказ.

Същото важи и с липсата на отговор. Това, че сте кандидатствали 3 пъти на дадено място и не са ви върнали никакъв отговор, не означава, че на 4тият път няма да получите такъв.

(Тук отварям скоба и искам да изразя личното си възмущение към екипите по подбор в тези компании. Отговори трябва да се връщат. Дори и да са - “абе за момента не ставаш за тази позиция”.)

За вас този отказ може и да е неприятен. За компанията - навярно вие сте били един от 50те кандидата, които са отсели в онзи момент.

Ако след време искате да кандидатствате пак - кандидатствайте.

Ако сте строили добре над фундамента в социална посока - нещата могат да имат и по-благоприятно развитие.

И като за финал - обобщение

Статията излезе по-дълга от това, което си представях, но от няколко месеца исках да я напиша. С надеждата да помогна на вас и да изравня очакванията.

Реалността е малко по-различна от това, което ви се продава.

Ако трябва да обобщя, то ще е по следният начин:

  1. Не е лесно.

  2. Иска време и постоянни усилия.

  3. Няма да получавате висока заплата в началото. Навярно ще бъде по-ниска от текущата ви.

  4. Пишете код всеки ден (освен в дните в които наистина не можете).

  5. И се социализирайте. Макар и привидно да изглежда, че работим с компютри - основната работа е именно с хора.


Често ме питат - “Радо, колко време ми трябва, за да имам добра основа и да си намеря работа по-лесно”.

Моят отговор е - поне 2 години.

Ако имате допълнителни въпроси или искате да дискутираме елементи на тази статия - заповядайте в Discord и ми пишете.