Se mai manaca o paine daca stii c++?

Buna ziua!
Sunt student in anul 2 si ador limbajul de programare c++ incat vreau sa imi fac o cariera in domeniu cu acest limbaj.
Problema e ca daca arunci un ochi pe piata munci o sa fii bombardat cu java , c# si web dev si prea putin c++.
Imi e teama ca, ca si tanar care intra pe piata sa nu mor de foame chiar daca eu stiu sa fac chestii in c++.
Dumneavoastra ce parere aveti?

Da man, se mai mananca. Si inca paine buna.
Bitdefender, Thales, Porsche Engeneering - astea toate cauta pe c++. Plus in strainatate

Este un limbaj mai dificil decat restul, cel putin in opinia mea.
Da-i bataie cu el, dar nu le neglija nici pe celelalte.

Can I challenge this approach a bit?

Yes of course, go for it

Cand esti pregatit pt un internship, da-mi un mesaj.

1 Like

Also, this makes us feel old. Stop it.

1 Like

Pe piata din Romania mai greu; proiectele pe embeeded sunt majoritatea in corporatii, dominate de politica si grile de salarizare pe care le depasesti greu.
Daca vrei cash flow si avansare rapida (sa ai unde sa schimbi posturile) mergi pe ce ai mentionat ca e predominant; plus sanse mai mari sa prinzi remote pe valuta mai usor.

In occident sunt mai multe companii pe embedded si lucrurile stau altfel, dar trebuie sa mergi in UE; nu in RO.

In plus, complexitatea e mai mare pe C++ iar sadisfactia mai slaba.

Insa, conceptele din C++ te ajuta si in celelalte limbaje, nu e timpul pierdut daca inveti C++ acum, mai tarziu schimbi doar sintaxa; important e sa stii un limbaj bine, celelalte se invata prin comparatie mai usor.

Cine ti-a spus ca C++ se foloseste doar pe ‘embedded’?

Salut,

Exista destule posturi de C++ si in Romania si pe peste tot. Nu numai in embedded, dar si in domeniul medical si finante, jocuri, samd.

Acum, fiind un limbaj destul de popular pe la noi prin licee/universitati pentru pozitiile entry level e ceva competitie si este normal sa fie asa. Pentru pozitiile mai de seniori se cauta ca painea calda programatorii pentru ele. Ce trebuie sa reiasa de aici este ca nu multi rezista pe C++ foarte multi ani datorita motivului de mai jos.

Fiind un limbaj foarte matur deobicei si proiectele sunt la fel. Codebase-uri mari si vechi cu toolinguri greoaie pe langa ele, dar care rezolva probleme mari si interesante. Sa ai rabdare e cheie aici, deoarece nu e necomun sa auzi de proiecte cu module care compileaza in ore timp in care tu stai si te uiti pe pereti daca nu ai alt task.

In principiu, gasesti cu siguranta dar trebuie sa studiezi putin in plus fata de ce probabil faci la facultate (macar sa studiezi putin C++21) si sa te echipezi cu putina rabdare.

2 Likes

In produsul propriu am integrat cel putin 3 solutii externe Android ce implementeaza pe undeva litera C.

2 Likes

Focusul pe C++ e foarte narrow. Știu că pare un limbaj mare, și chiar are cotloane (search trigraphs, you can never unseen), dar e un mic colț din tot ce înseamnă a fi un software engineer.

In special pe C++ doar sa ști limbajul nu prea te ajuta. Trebuie sa înțelegi și domeniul - embedded, desktop, databases, systems, gamedev, etc. E mult mai multă complexitate acolo decât în limbaj.

Încearcă să absorbi maximul din facultate. De la limbaje, la algoritmi, matematică cat poți, etc.

Limbajele sunt unelte, dar important e sa rezolvam probleme. Daca 2 linii de bash său un Google form rezolva, baga asta

7 Likes

Se cauta de zor C++ atat in Bucuresti cat mai ales in Europa si State, pe un spectru foarte larg de proiecte si domenii: medical, finance, IoT, embedded, gaming, aerospace, maritime, transportation, blockchain, networking, security, plus o droaie de alte zone “meta”, in sensul de software scris in C++ pentru infrastructura de runtime pentru alte tehnologii – aici intra baze de date, caching, compilatoare, runtime-uri si interpretoare, OS internals, virtualizare, containerizare, orchestration, etc.

Ca sa raspund si on-point totusi:

  • sunt la fel de multe proiecte de C++ precum de back-end-uri web scrise in Java/C#/Nodejs? nu, sub nicio forma; la front-end nici nu are rost sa punem intrebarea – nu exista nici macar comparatie
  • se mai mananca paine programand in C++? oho, si inca ce paine, de-aia cu seminte
  • e curba de intrare la fel? nu prea; e un limbaj greoi si complex; in plus, development-ul in acest limbaj vine la pachet cu o intelegere ampla a unui stack mult mai lung de lucruri ce tin mai putin de C++ si mai mult de… multe lucruri (enumerand pe scurt – systems, memory, security, performance, OS…)
  • “se” merita? ca totul in viata… depinde; e complicat de dat un raspuns obiectiv

In alta ordine de idei, daca ai experienta college-level in C++ si esti interesat de un internship, hit me up privately.

Daca nu ai si doresti sa investesti cat mai putin timp si sa tratezi programarea cat mai mult ca pe un job si cat mai putin ca pe un hobby, focuseaza-te pe front-end sau web full-stack unde vei ajunge la un venit decent dupa 1-2 ani de experienta.

Hope this helps :slight_smile:

2 Likes

Singura problema e ca asta nu e ‘on point’, nu asa a pus intrebarea. Asta e in stilul om de paie, la fel de bine poate fi reformulata treaba:

E adevarat ca se mai practica scrierea in python etc pe domeniul asta, dar doar daca majoritatea calculelor sunt facute intr-o biblioteca implementata in C++, C… sau fortran… sau daca e ceva ultra-usor dpdv al necesitatii puterii de calcul.

Mi-am permis sa postulez ca OP nu adora C++ fiindca ii permite sa faca simulari si computare stiintifica, altfel probabil intrebarea lui ar fi fost mai ‘on point’ – si astfel comparatia mea cu proiectele de web dominante in piata.

Dar da, de acord, atat research level cat si aplicatii ceva mai practice in zona de data si ML pot avea nevoie de oameni de C++.

Cum spuneam, se cauta de zor C++, important e sa stii multe alte lucruri pe langa C++ si sa fii pasionat; altfel e mult mai usor si pentru tine (OP) si pentru noi (cei care scriem C++) daca te orientezi spre o alta arie (web, mobile) – nu ca acolo n-ar fi lucruri complexe, ci ca stafeta de intrare e mai joasa si poti programa o cariera intreaga fara sa dai cu nasul de complexitati, ceea ce in partea cealalta nu e imposibil ci (mult) mai putin probabil.

Treaba e un pic mai complicata, OP a spus ca e student, ceea ce implica o oarecare incercare de specializare.
De asemenea, presupunerea ca joburile pe ‘proiecte de web’ ar fi cele mai numeroase nu are chiar asa de mare relevanta fara a tine cont si de alti factori din context, cum ar fi faptul ca programatori ‘de web’ se gasesc mult mai usor decat programatori pe computer vision, de exemplu.

Daca vrei programatori pe computer vision in php sau javascript, o sa fie si mai greu :stuck_out_tongue:

De asemenea treaba asta cu ‘backend & frontend’ are o asa de mare acoperire (fiind destul de vaga) incat poti sa zici ca ei eu lucrez ‘pe web’ (apropo, in C++) desi partea ce tine strict de web e o bucata mica (la fel de bine e ‘IoT’, ‘data analytics’, ‘database programming’ etc, chestiile astea nu sunt mutual exclusive cand e vorba de un proiect).

Ca o observatie, perl nu e prea cautat, nu? Ei bine, datorita ofertei mici (mult mai multi programatori ‘de web’ cu javascript si php, nu?), se intampla ca programatorii in perl sunt destul de bine platiti si raportat la cati sunt, destul de cautati.

Pana la urma focalizarea asta pe limbaj din anul 2 nu cred ca e ok, e doar un instrument/o unealta.
Nici macar un chirurg nu se apuca sa taie un copac cu bisturiul, foloseste o drujba sau macar un topor, ceva :slight_smile:

Sunt convins ca poti intoarce problema pe toate partile astfel incat sa gasesti hibe in argumentarea initiala daca asta cauti.

Plus/minus diferente de nuante, de context, cum vrei sa le numesti, realitatea este ca piata e dominata de proiecte clasice de web: ori ca au un front-end chior de HTML4 cu CSS2 si JS '95 si un back-end de PHP4 cu mysql_open, ori ca au React cu Next.js si SASS si un backend cu 3 microservicii care trag si imping intr-un stream de Kafka desi toata aplicatia nu-i decat un CRUD banal, asta e realitatea – un procent covarsitor din rolurile de dezvoltare pe piata romaneasca este pe astfel de proiecte. Se pot complica si proiectele astea? Bineinteles. E nevoie de arhitecti cu 20 de ani de XP pentru unele dintre ele? Bineinteles. Se pot castiga $$$$ mult mai multi decat orice computer vision? Absolut. But that’s not the point.

In timpul facultatii nu te poti specializa in toate. Desi limbajul nu-i decat o unelta, intr-adevar, la momentul acela conteaza destul de mult cum te intelegi cu limbajul preferat, fiindca iti va impacta si directia specializarii.

Aste’ fiind zise, cred ca OP are destul input incat sa traga singurel concluzia daca vrea sa contribuie la Linux Kernel, sa mute date dintr-un protobuf intr-altul pe la Google, sa design-uiasca vreun MapReduce sau doar sa persiste entitati cu EF Core sau Hibernate. In toate se pot face bani si toate pot fi complexe. Dar unele tind sa devina complexe mult mai repede decat altele, see discussion pt asta :))

Bafta!

2 Likes

Imi povestea cineva de la Google ca esti angajat ca backend dev cu limbajul stiut de tine, dar cand ajungi la lucruri mai complexe tot in C++ ajungi sa programezi.

2 Likes