TechNews.bg
актуалноновинисофтуер

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

Бързите курсове не всякога успяват да създадат ценните умения, от които се нуждаят учащите
(снимка: CC0 Public Domain)

Мнозина от младите хора искат да бъдат програмисти. Привлечени от перспективата за големи заплати, изобилна работа, богат избор от щедри работодатели и шанса да работят за някои от най-успешните фирми в света, все повече хора търсят нови възможности в непрекъснато развиващата се област на разработването на софтуер. Но бързите курсове по програмиране могат да разочароват нахъсаните ентусиасти.

Нарастващата популярност на писането на код – особено след пандемията – доведе до бум в броя на школите за писане на софтуер. Много от тези училища провеждат интензивни курсове за период от по няколко месеца. Учащите излизат с известни знания по програмиране и с очакването, че взимайки си сертификата в края на курса, за тях ще се избиват десетки софтуерни фирми, зажаднели за млади таланти. Понякога действително става така. Но нерядко ситуацията е друга.

Бързите курсове не всякога успяват да създадат у учащите ценните умения, от които се нуждаят, за да успеят. Като лидер на фирма за разработка на софтуер по поръчка и професор, преподаващ софтуерно инженерство, Макс де Лавен, основател и технически директор на Builvable, познава уменията и опита, който търси при завършилите. Казва, че начинаещите разработчици на софтуер не винаги биват обучавани на уменията, които работодателите ценят и ще очакват.

И това, уви, важи не само за бързите курсове по програмиране, но и за университетите и програмите за квалификация и преквалификация. В резултат, казва Лавен, разработчиците биват подведени – и в крайна сметка разочаровани – от институциите, които твърдят, че ги „позиционират за успех”.

„Да си разработчик на софтуер е страхотна работа – за мнозина е късмет да могат да направят успешна кариера от любовта си към писането на код – но не става въпрос само за изучаване на даден език за кодиране, за да започнат да валят пари”, казва Лавен пред TechRepublic. „Да станеш разработчик на софтуер е по-трудно, отколкото може да си помисли обикновеният човек – и е скъпо”.

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

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

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

В крайна сметка научаването на писането на код е само върхът на айсберга. Разликата между писането на код и разработването на софтуер може донякъде да се оприличи на разликата между това да имаш речник с думи и да можеш да съчиниш текст със съответната граматика и култура зад езика. „Това, че можете да косите морава, не означава, че можете да управлявате фирма за озеленяване”, казва Лавен. „Само около 40% от разработката на софтуер е писане на код”.

Курсовете по софтуерно инженерство трябва да обучават студентите цялостно, за да бъдат добри софтуерни професионалисти – а не само добри писачи на код. Езиците за програмиране се научават, но по-важно е да се научат „навиците” за писане на код, защото „хората могат да развият лоши навици, а лошите навици са много трудни за премахване”, казва експертът.

Наред с това обаче има цяла кошница с други знания, които разработчикът на софтуер трябва да има. Практическият опит винаги е ценен. Курсовете и университетските програми трябва да насърчават практическата работа и да дадат на учащите „работни знания” за различните компоненти от цикъла на създаването на софтуер.

Важно е да има умения за боравене с API. Всеки софтуерен инженер днес ще се срещне с нуждата от работа с API. Софтуеристите трябва да знаят да „говорят” езика на API, да познават различните технологии тук.

Всяко приложение, което се разработва в днешно време, по един или друг начин отива в облака. Това значи, че на софтуеристите са нужни задълбочени знания за облачните технологии. Те трябва да разбират от платформите, които съществуват, и от техните особености. Това е важно за доброто позициониране на пазара на работна сила. „Когато човек дойде при работодателя и каже: „Работил съм с Amazon Web Services или Google Cloud Platform или Azure”, работодателят веднага се заинтересува от този човек”, споделя Лавен.

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

още от категорията

Илон Мъск с ново обещание: „супер забавни, революционни видеоигри”

TechNews.bg

Samsung инвестира 350 милиона долара в аудио елита

TechNews.bg

Стартира пилотна европейска линия за фотоволтаични покривни керемиди

TechNews.bg

Wiser Technology с два нови проекта по Европейския фонд за отбрана

TechNews.bg

Тестват ново поколение въздушни технологии за гасене на пожари

TechNews.bg

Задават се възрастови ограничения за сваляне на приложения

TechNews.bg

6 коментара

аз 25/05/2021 at 22:36

до .. Не си измисляй. В дипломите на информатиците пише ли “квалификация инженер”? Май не, а? Много се дразня, когато някой се представя за инженер без да има инженерна диплома.

Отговор
.. 25/05/2021 at 12:49

До аз:

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

Информатиката е доста широкообхватно понятие. При всички случаи покрива чисто инженерни дисциплини като разработката на софтуер.

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

В този смисъл разработката на софтуер е инженерна дисциплина, част от Информатиката.

Може да погледнеш и Information Engineering – дисциплина, която се занимава с генерирането, разпространението, анализа и употребата на информация, данни и знания в системите.

Отговор
VL 25/05/2021 at 09:47

Писането на код е най-несъществената част. Основното е да знаеш как да подходиш към всеки отделен проблем, това е най-важното умение в програмирането. След това е търсене и намиране на необходимата информация за решение на проблема. И всичко това трябва да става в оптимален срок. Да можеш да комуникираш с колеги така че да те разбират е друго важно умение.
Писането на код е най-незначителното умение – но предимно на това наблягат в тези академии.

Отговор
аз 25/05/2021 at 08:38

Информатиката не е инженерна дисциплина.

Отговор
.. 24/05/2021 at 16:37

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

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

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

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

Отговор
Анонимен 24/05/2021 at 11:18

Всичко е if-then-else.

Отговор

Коментари