4. Първо - проучи какво точно правят програмистите и за какво им се плаща през 2020. Преди време ми попадна една интересна книжка - Software Development form A to Z. Сега, не казвам, че трябва да си я купиш, но можеш да си я "намериш", в PDF вариант. Книгата не е учебник и не е за да научиш някаква технология, но на много достъпен език е обяснено, какво точно се прави в съвременните компании, какво правят основно програмистите и има доста примери.
Ще стигнеш до извода, че общо взето, 90% от работните места се въртят уеб технологии, мобилни апликации, сървъри и услугите, които биват предлагани чрез тях, като в последните години се наблюдава и остър недостиг на Data Science специалисти, но за това после.
Ето няколко сайта, които горещо препоръчвам, да бъдат следени.
dev.com
medium.com (този може да ти иска регистрация и прочие, но просто си трий биксвитките, ако не желаеш, да се регнеш и да даваш по 5 долара на месец)
hackernews (под домейна news.ycombinator.com)
Добре е, да следиш тези сайтове, зщаото . хората често пишат за нви и стари технологии, но също така за опита си в компании, т.е, кариерно развитие и прочие.
Ако имаш любима технология, можеш да потърсиш някой "подкаст". Има стотици за почти всичко.
Няма да ти изреждам езици, защото можеш да потърсиш в интернет кои са най-популярните. На твое място, бих гледал какво се търси в обявите за работа.
Но ето топ нещата, с които Е МНОГО вероятно, да си намериш работа.
JavaScript, или по-скоро популярните frontend библиотеки като React, Vue и Angular. Също така, NodeJS (ще отнеме известно време, да обясня, затва най-елемнтарното в момента - JavaScript на сървър) с ExpressJS е все по-популярна опция. Ако се насочиш към frontend- a, JS е задължително умение. Броят от библиотеки за NodeJS, които се добавят всекидневно за какво ли не, просто е ... невероятен. Също така е невероятен и броя на библиотеки, които просто биват изоставяни, променяние през 3 месеца и рочие, така че не е "просот избери това". По-популярност, в мометна се мери само с Python, но в чужбина България често е 2-3 години назад.
Java и Spring-boot. - Огромната част от сръвърите вървят с Java. Сега, ако слушаш някой заклет JS фен, Java е едва ли не нещо то дълбините на Ада, но истината е, че си е доста добър програмен език и не виждам, да спре да е търсен скоро. Също така има огромен набор от библиотеки и фреймъркове, които са доказани и работят добре.
C# и .Net - Същата работа, като Java, а и е подържан и разработван от MicroSoft, така че няма да избяга. А София просто е мястото, където винаги има работа за C#! Аз лично не съм се занимавал с него, освен един-два пъти, когато си писха някакви бозави игрици на Unity, но го намирам за хубав език.
Python - Ок, Python е по-стар от всички езици, нo някак си успя, да стане най-свежи в полседните 2-3 години. Основно, защото е много лесен за писане, мнго харесван, има множество библиотеки, просот е и основния език за т.нар. Data Science. Сега, моят съвет е, да не скачаш още там, защото просто ще ти отнеме прекалено много време.
По-добре се насочи към Django или Flask (ако има работа за тях в района ти), а ако желаеш, псотепенно започни да учил за AI/ML, DataScience и всичко произтичащо от тях.
Други:
Разработка на мобилни проложения. Това го слагам в графа "frontend", защото реално погледнато, 90% от апликациите, които се правят, са просто уебсайта на компанията, направен на апликация, с малки изключения. препоръчвам го, като странично занимание, докато придобиеш рпедстава, за какво иде реч.
Тук общо взето имаме 3 основни направления:
- Android приложения с Java/Kotlin (Kotlin e нов език, с малко по-приятен синтакс от този на Java, който подържа всички стари Java библиотеки. Засега се ползва основно в разработката на Android приложения)
- iOS приложения със Swift (не чак толова нов език, но много приятен за работа. За съжалние, ще ти трябва Mac OS, да върви на . Apple-ски компютър. Може се пробваш с виртуална машина, ама ... много е куцо.
- Позлване на други библиотеки - Ок, тука с много и всякакви. Има го Ionic, който позволява, да караш уебсайтове, като апликации, има ReactNative, FLutter, VueNative - не отивай още там.
Ruby - Ruby и Ruby on Rails, както вика един познат, е много итнересен и приятен за писане език, но за съжаление, някак си не успява да се задържи на топа. Хубавото му е, че все още е търсен, макар да не е много популярен, дори и в България, което означава, че с по-малко усилие, можеш да взимаш по-добра заплата.
PHP - Доста по-популярен от Ruby, но за съжаление, по-слабо платен. Не бих го препоръчал, само поради тази причина.
Ако избереш фронтенда, ще ти е по-лесно, поне според мен, а и не е, като да има намалено търсене в момента. Препоръчвам React или Vue, като за начало. Разбира се, малко CSS не е излишен, a ще ти трябва и HTMl (ако не го знаеш ... какво чакаш - w3school.com!).
Ако избереш бекенда - супер, но ще вероятността, да трябва да научиш и някаква система от база данни е много голяма
Ок - съветът ми е, да провериш в youtube за всеки един от тези езици и феймъркове и да видиш, какво ти харесва. Не се впускай да учиш нещо, без да си наясно какво точно е и какво можеш да правиш с него после (освен ако нямаш сложни лични проекти, това означава какво и къде ще работиш). "Свири си часовника" с местните обяви и избери нещо, което да научиш. Ако нямаш идея, откъде да започнеш, прежали 23-4 лева и си купи най-попилярния курс в Udemy (потърси в нета за купони с намаления - курсовете ти ги покзва по 100-200-1000 долара, но в 80% от времето са "намалени" на по 10-20 доларта - и да, ако не знаеш откъде да я подхавнеш заслужават си) на темата. Търси наскоро обновени курсове, с висок рейтинг и поне поне няколко хиляди ревюта. Повечето курсове са поне 15-20 часа, като доста са по-дълги. Това не означава, че ако материта ти е непозната, ще ги "опткаш" за 3-4 дена. Аз лично съм гледал курсове, който за 40 часа, покриха повече материал, упражнения и ми дадоха повече знания, от семестръ и половина в университета. Но докато курът беше 40 часа, до имах поне още 3 пъти по-толкова учене, грешки, проверка на знания и прочие. А по-ксъно го минах още един път. Ако ти се стурват бавни, мини ги на 1.25 или дори 1.5 скорост (има таква опция в плеъра). И ти го казвам, защото мисля, че там ще научиш най-много, особено, като сметнем че си 4-ти курс в ТУ и учиш програмиране. Ако иначе знаеше, какво да правиш, нямаше да я има тази тема.
А за самата работа - това, че си 4ти курс, поне показва някаква отдаденост и възможност, да следваш дадена програма.
А сега - основният ти проблем - нямаш лични проекти!
Работи над нещо! Каквото и да е! Колкото и тъпо и елементарно да е!
Накакъв console калкулатур с java, каквото и да е! Започни от някъде. Научи малко Git като хората (задължително умение) и си качвай и най-смешните проекти.
Ако се насочиш към React, Vue или Angular, съветвам те, да си направиш няколко тъпи апа, които всички правят. Нещо като "дказателство, че умееш". Ап, дето ти показва времето, според градовете, ап за водене на бележки, някакъв примитивен магазин на 2-3 страници и подобни. Има хиляди примерни такива проекти, така че не е трудно, ако си запозната, да си направиш сосбтвени. Основно се гледа, да ти е организиран кода, да покажеш, чче можеш да боравиш с различни типовече данни, да комуникираш със сървъри, с отделните компоненит в кода ти, че следваш добра конвенция с имента, може и малко тестове.
Същото важи и за бекенда - вземи някой готов фронт енд и напиши простичък бакенд за него.
За интервютата - най-лесно е, да се пуснеш на мнгоо интервюта, да те поразмятат и да придбиеш идея, за какво иде реч. Повярвай ми, няма "лек" срещу стреса по интервюта, освен ходиш на много такива. Хем ще си по-спокойно, хем ще си наясно с това, което питат. Това, което търсиш ти е стаж! Много вероятно е, да имаш период от поне 3 месеца, в който нямата да ти плащат. Има и периоди от по 6 месеца, но тук говорим за примерно 15-20 часа на седмица, докато ходиш и на училище, а в работата си имаш някой ментор. Ако изискват от теб професионални квалификации, 40 часа на месец, работа отвкъщи и не плащат, то злоупотребяват! Може, ако си много добра, да започнеш и на платен стаж, но там е повече и до късмет, дали има такава работа в момента.
Също така - Алгоритми! Cracking the Coding Interview, си остава най-добрата книга в тая насока, когато стане въпрос за кандидатстване.
За града - Ако в Пловдив ти е по-удбно, баща ти е съгласен да те издържа и няма да имаш главоболия, то ти препоръчвам, да отидеш там. Ще ти е по-лесно, като търсиш работа, можеш да изкараш и неплатен стаж (много по-лесно, да си намериш неплатен, отколкото платен, поне в моя опит), а си е друго, да си спокойна, да си караш стажа 3-6 месеца, без да се притесняваш, дали ще имаш къде да спиш след 2 седмици и дали човек може да оцелее само на нудълси и картофи за 3-6 месеца (пак, от личен опит). След това, всичко, ще ти е много по-лесно. Това, че си студнет е голям бонус, при търсенето на работа. Оценките почти никой не гледа (а ако гледа, по-скоро не бих започна работа при него), а и след година-две стаж, дипломата ти е последното нещо, което се гледа, когато си търсиш нова работа. Много рядко е решаващ фактор. А иначе, в София се плаща повече и има повече работа, но ако лично аз бих си спестил целия зор. Единственият проблем е, че няма да направиш много контакти, работещи в София, а това е важно, но не толкова важо, колкото да имаш опит и умения.
Това е. Не е много, но се надявам, да те насоча в правилната посока. Препоръчвам ти, да се хванеш с някой по-напреднал в гурпата си, или дори извън нея и да правите проекти заедно. Ако няма такъв, то намери други заинтересувани. Все се намират хора. Просто трбява, да излезеш от черупката си!
|