Una din cele mai mari confuzii făcute de oamenii care aspiră la o carieră în dezvoltare software e aceea între termenii folosiți în industrie pentru a reprezenta poziția de programator.

Și pe bună dreptate, pentru că nu numai companiile au amestecat denumirile acestui rol, dar și nomenclatorul de coduri COR (Clasificarea Ocupațiilor din România) definește mai multe funcții care, în sine, se suprapun.

Inginerie vs. matematică-informatică

Oferta de programe de studiu a universităților s-a diversificat destul de tare în ultimii ani în încercarea de a capitaliza cererea mare de programatori de pe piața românească, astfel că mai toate universitățile au ajuns să aibă în programa lor un soi de program de studiu ce are legătură, mai mul sau mai puțin, cu informatica.

Totuși există 2 mari categorii de specializări:

  1. Inginerie
  2. Matematică-informatică (și altele adiacente, am ales matematică-informatică pentru că e una din cele mai cunoscute)

Mindset-ul cu care sunt abordate aceste 2 categorii de programe de studiu e unul destul de diferit, dar nu numai asta e singura diferență.

Facultățile de inginerie din cadrul universităților tehnice, cum ar fi Automatică și Calculatoare, o specializare care se regăsește cam în toate universitățile tehnice mari din România: Universitatea Politehnica din București, Universitatea Tehnică din Cluj-Napoca, sau Universitatea Tehnică “Gheorghe Asachi” din Iași oferă programe de studiu de 4 ani, spre deosebire de cele non-tehnice, ale căror programe sunt de 3 ani.

Toate facultățile de inginerie din România au programe de studiu de 4 ani, iar titlul scris pe diplomă este “Inginer”, spre deosebire de altele unde titlul este “Licențiat în X”.

Studiile în cadrul unei universități tehnice, cum ar fi una din cele enumerate mai sus, sunt abordate dintr-o latură mai inginerească, ceea ce înseamnă că vei trece prin materii ceva mai strâns legate de fizică și aplicarea practică a matematicii, mai degrabă decât teoretică.

Clasificarea ocupațiilor în România

Fiecare contract de muncă are la bază o ocupație care e definită în codul COR al ocupațiilor din România.

Grupa în care se regăsesc cele mai multe ocupații folosite pentru posturile de programatori este 2512 - Software Developers, dar sunt și alte grupe în care se găsesc ocupații similare, cum spuneam mai devreme, multe din ele se supraun pentru că nu au o delimitare clară, cel puțin din punctul meu de vedere.

În grupa 2512 se regăsesc următoarele ocupații:

  • 251201 - Analist
  • 251202 - Programator
  • 251203 - Inginer de sistem în informatică
  • 251204 - Programator de sistem informatic
  • 251205 - Inginer de sistem software
  • 251206 - Manager proiect informatic
  • 251207 - Inginer de dezvoltare a produselor software
  • 251208 - Inginer în realizarea, întreținerea și dezvoltarea aplicațiilor web
  • 251209 - Inginer în domeniul tehnologiilor cloud
  • 251210 - Dezvoltator în domeniul tehnologiei blockchain
  • 251211 - Dezvoltator interfața cu utilizatorul
  • 251212 - Inginer de date complexe (big data)

Lista de mai sus (și nu e singura) cred că e și motivul pentru care cei mai mulți oameni fac confuzii când vine vorba de funcția pe care o vor ocupa în cadrul unei companii.

Funcția e complet diferită și nu are treabă cu postul, care trebuie să fie corespondentul unei ocupații din COR. Funcția e cea pe care o vezi în titlurile anunțurilor de angajare și care e definită intern în funcție de cultura fiecărei organizații în parte.

Uite câteva exemple de funcții:

  • Software Engineer
  • Software Developer
  • Software Development Engineer
  • Programmer
  • QA Analyst
  • QA Engineer
  • QA Automation Engineer
  • Business Analyst

Toate funcțiile de mai sus vor fi de obicei însoțite de nivelul de senioritate (Junior, Middle, Senior etc.).

Programator vs. inginer software vs. dezvoltator software

Programator (Programmer), inginer software (Software Engineer) și dezvoltator software (Software Developer) cred că sunt de departe cele mai folosite denumiri pentru acest gen de funcție.

Spuneam anterior că mulți oameni fac confuzii în cazul ăsta, în momentul în care încearcă să facă legătura dintre studiile superioare și un job din piața muncii, din câteva motive:

  1. Sunt confundate postul cu funcția, fiind și foarte multe posturi ale căror definiții par că se suprapun.
  2. Companiile fac referire la același tip de poziție prin terminologii diferite, în funcție de contextul și cultura companiei.

Acum, poate o să te surprindă ce o să-ți spun (sau nu), dar cu diploma de licență de la oricare din facultățile/universitățile enumerate anterior poți lucra pe toate aceste funcții (și posturi).

Chiar dacă funcția pe care vrei să o ocupi este una de inginer software, o poți face chiar și cu o diplomă de licență de matematică-informatică sau dacă funcția e de programator sau dezvoltator software, de asemenea o poți ocupa cu diplomă de inginer.

Nu are importanță ce anume ai absolvit, în piața muncii vei concura cu toată lumea care a absolvit orice fel de facultate cu o specializare cât de cât tangențială cu informatica sau IT-ul.

Și când spun asta, mă refer strict la mediul privat. Când vorbim de funcții în sectorul public (de stat), cu siguranță se aplică alte criterii și reguli.

Dacă vrei aici o părere sinceră, dar și subiectivă, adevărata industrie IT, cel puțin în România, se află în mediul privat. Și cred că asta se vede și destul de clar în toate tentativele de digitalizare ale instituțiilor statului, sau chiar și în site-urile de prezentare ale acestora. Sunt extrem de în urmă când vine vorba de tehnologii și infrastructuri folosite, cu mici excepții, desigur.

Studii superioare în IT

Un alt subiect despre care primesc întrebări foarte des, e acela al necesității studiilor superioare în IT.

Realitatea este că nu ai nevoie de niciun fel de studii superioare pentru a lucra în IT. Dar desigur, aici există anumite nuanțe.

În primul rând, dacă nu ai nici experiență și nici o facultate de specialitate absolvită, care crezi că vor fi șansele să fii băgat în seamă de angajatori? Probabil extrem de mici. Mai ales în perioada asta în care chiar și cei care au studii superioare de specialitate dar nu au experiență își găsesc greu de lucru.

Deși sunt oameni fără studii superioare care lucrează în IT, numărul lor e destul de mic comparativ cu numărul total de oameni care activează în industrie. De exemplu, în peste 8 ani de când lucrez în IT, nu am cunoscut pe nimeni care să nu aibă studii superioare.

După cum vezi, toată discuția asta am purtat-o folosind termenul de “studii superioare”, nu de studii în domeniu.

Studiile superioare sunt în primul rând necesare pentru deducerea de impozit, cât o să mai existe, cel puțin. E un criteriu absolut necesar pentru a fi scutit de impozitul datorat statului pentru veniturile ce depășesc 10000 de lei (brut). Ăsta e și motivul pentru care se specifică în aproape toate anunțurile de angajare că e necesară o diplomă de studii superioare.

Deși cei mai mulți cer diplomă de specialitate, dar în realitate au nevoie doar de o diplomă de studii superioare, de orice specializare.

Este foarte posibil ca dacă nu ai absolvit studii superioare, postul menționat în contractul de muncă să fie unul de “Programator ajutor”, dar asta nu va afecta în niciun fel funcția pe care o vei avea (Inginer software, dezvoltator software etc.)

Cursuri IT acreditate

Nu e pentru prima dată când zic asta, dar o s-o repet cât de des pot, pentru că știu că reprezintă un criteriu important pentru cei care vor să facă o tranziție spre IT.

Cei mai mulți oameni caută un formator care să le ofere la finalul câtorva luni de curs, o diplomă “acreditată” de Ministerul Învățământului (cred). Și revin la ce spuneam anterior legat de mediul public versus privat, poate în instituțiile publice acest lucru contează, ca diploma pe care o tu o deții să fie de la un emitent “autorizat”, să spunem, dar în mediul privat acest lucru e complet irelevant.

Niciun curs de specialitate, fie el cu prezență fizică, la clasă, sau online, nu poate suplini lipsa unei diplome de la o formă de învățământ superior, deci nu poate fi luată în considerare pentru deducerea de impozit.

Niciun angajator din mediul privat nu va fi influențat de “acreditarea” pe care o deține diploma ta de absolvire, deci sfatul meu e să nu mai pui în niciun fel accent pe asta, ci mai degrabă pe curicula și conținutul cursului respectiv. În fond, interesul tău e să pleci de acolo cu niște informații care să fie relevante pentru ce se caută pe piață și să poți în final să te angajezi în domeniu. Crede-mă, acreditarea diplomei nu va trece interviurile tehnice pentru tine. Singurul lucru care contează sunt abilitățile și cunoștințele tehnice.

Dacă ești interesat să înveți programare de la zero, de la cineva care practică asta de ani buni și care a făcut o tranziție din spre alt domeniu, spre IT, prin propriile forțe, află că am construit C# Masterclass exact pentru tine. Un curs în care nimeni nu pune presiune pe tine, nu simți că rămâi în urmă, ai parte de ghidaj pas cu pas, bonusuri extra care să te ajute în parcursul tău, suport direct din partea mea și acces pe viață la toate viitoarele actualizări.

Concluzie

Ca o încheiere, uite câteva idei de bază pe care le-am acoperit în acest articol:

  • Nu există diferențe de parcurs profesional în funcție de forma de învățământ superior absolvită. Depinde doar de tine pe ce cale vrei să mergi, toată lumea având la început aceleași șanse.
  • Nu există diferențe de funcție/rol în funcție de forma de învățământ superior absolvită.
  • Nu ai neapărat nevoie de studii superioare pentru a lucra în IT, ci doar pentru a obține deducerea de impozit.
  • “Acreditarea” cursurilor de formare este destul de irelevantă.

Cam atât pentru azi, sper că am adus un pic de lumină în discuția asta, pe data viitoare.