Software engineer? mai exact?

Ce inseamna mai exact software engineer?Programator specializat doar in software si baze de date?Sau este ceva mai extins? gen game developement

Cred ca sa mai discutat asta pe forum de cateva ori nu am gasit exact discutia pe care o cautam dar am gasit ceva relevant pentru ce ar trebui sa stie un software engineer.

Desi acum cu provideri de cloud Azure, AWS cred ca sa mai simplificat problema.

Edit:
Cred ca asta cautam:

Desi discutia poate fi una lunga si complexa, din punctul meu de vedere o definitie simpla si buna o da Wikipedia

A software engineer is a person who applies the principles of software engineering to the design, development, maintenance, testing, and evaluation of computer software.

Software engineering is the application of engineering to the development of software in a systematic method.

Pe forum au mai fost cateva discutii around, vezi si aceste comentarii:

5 Likes

Cred că termenul de “software engineer” e cel mai bun pentru a descrie persoana care lucrează la realizarea de software că si profesie. Și cel pentru care noi, cei din industrie ar trebui sa milităm. Programator suna cam aiurea IMO și oarecum ca un put down.

OTOH, software-ul poate fi creat și într-un alt mod : de către oameni de știință, de către practicanți ai unei alte profesii (gen data scientist , system administrator, biolog, avocat etc), de către studenți sau amatori. Dar dacă ai nevoie de o bază de date, sau un software la care o să se lucreze și în zece ani, inginerul softener e omul tău.

4 Likes

Am avut o materie in facultate se numea inginerie software, ti se dadea sa proiectezi si sa implementezi un soft, dar profa punea accent pe proiectare mai mult, trebuia sa prezinti diagrama de clase, de secventa, diagrama use cases, etc si trebuia sa explici, eventual era bine sa folosesti si design patterns(sabloane de proiectare).

Am cautat ceva materiale pe internet, cursuri de la diverse facultati, poate nu sunt cele mai relevante materiale.

O prezentare a domeniului ingineriei software:
http://staff.cs.upt.ro/~dan/curs/fis/Cap1_InginerieSoftware.pdf

Un exemplu de programa la un astfel de curs:
http://inf.ucv.ro/~mirel/courses/I647/index.html

UML (Unified Modelling Language) este un limbaj vizual de modelare folosit in proiectare software.

1 Like

Termenul “software engineer” trebuie inteles in contextul in care este folosit, contextul fiind mai important decat termenul in sine. Cand e vorba de anunturile de angajare, “software engineer” inseamna ceea ce scrie in job description.

In unele tari, Canada daca nu gresesc, sunt restrictii in a te numi engineer daca nu ai absolvit politehnica. Motiv pentru care nu te poti mandri cu un titlu ca Zend Certified Engineer. Pe de alta parte, nea Gicu dintr-o localitate obscura din Romania, cu 4 clase, dar priceput in a repara Dacii si tractoare, poate fi cunoscut in comunitate ca ingineru’.

3 Likes

Este acelasi lucru si aici.

1 Like

In US, e si mai rau. Nu ajunge sa scrie pe diploma ta ‘engineer’, trebuie sa ai si ceva permis sau asa ceva. Un inginer a fost amendat pentru ca a pretins ca e inginer, a urmat un proces. Pana la urma, s-a constatat ca avea dreptul: https://reason.com/blog/2019/01/02/judge-confirms-that-oregon-engineer-has

O carte free destul de interesanta:

Professional Software Development

In mare parte cartea prezinta toate etapele din Software Development Life Cycle: