"O prima intrebare e daca sa caut firme care sunt listate la bursa sau nu, si ce parere ai de impactul pe care il au shareholderii" - Nu cred ca e o anumita regula. As putea zice doar ca de preferat sa nu fie o firma/startup la "inceput de drum". E posibil ca aici sa fie focusul pe dezvoltare, vanzari si mai stiu eu ce. Ulterior, pe masura ce creste, creste si interesul pentru securitate.
"Cat de mult conteaza felul in care e structurata firma" - Cred ca nu e important, ci mai degraba e important ce fel de oameni sunt acolo. Daca sunt oameni in regula, care nu sunt aroganti si nesimtiti cred ca totul o sa mearga bine.
"Cum sunt procesate ideile noi de catre management" - Cred ca in general e recomandat ca oricine din firma sa vina cu idei noi, sugestii si solutii la problemele existente. Daca o persoana nu aduce astfel de idei, va fi considerata un "muncitor" simplu si va avea sanse mai mice de avansare. Eu consider ca orice angajat care vrea sa "creasca", trebuie sa arate ca poate si sa se implice.
"Cam cat de mare este bariera de cunostinte intre ingineri si management" - Depinde foarte mult de la caz la caz. De fapt intrebarile pe care le pui aici sunt foarte bune, dar nu au un raspuns concret. Eu unde lucrez acum am manageri cu cunostiinte tehnice foarte bune si nivelul tehnic ajunge pana sus de tot. De fapt, in cazul meu, chiar si CEO-ul a fost om foarte tehnic in trecut.
"Cum se masoara performanta cuiva? Si daca atunci cand se masoara, se bazeaza pe factori care nu erau sub controlul total al testerului" - In general, la firmele la care am lucrat, exista mereu un program de "performance management". De obicei, la inceputul unui an se discuta si se stabilesc niste lucruri cu fiecare persoana in parte, cu ce anume vrea sa realizeze. Iar la finalul anului se discuta in functie de cum au evoluat lucrurile. Nu a fost niciodata cazul sa conteze cate vulnerabilitati si ce severitate am raportat.
"Cum se procedeaza daca un angajat nu are o performanta buna in cazul in care au fost niste obiective nerealiste" - Unele obiective pot fi nerealiste de la inceput, altele pot deveni imposibil de realizat pe parcurs. Nu e nimeni nebun sa nu inteleaga acest lucru, deci nu o sa fie astfel de probleme. Legat de anii intr-o echipa ar putea fi o lunga discutie. Sunt persoane care prefera sa faca schimbari, de obicei pentru un salariu mai mare. Dar sunt si persoane care prefera stabilitatea si confortul unei singure firme. Eu vad ca ideal un astfel de mix, cu ambele categirii de persoane.
"Cum se prioritizeaza taskurile? Si daca sunt unele care nu ajung sa fie facute?" - In mediul AppSec, prin task, cred ca te referi la un pentest/code review/architecture review sau astfel de lucruri. Daca e intr-un mediu intern, intr-un fel, clientii (cum e in consultanta) sunt de fapt echipele de development. Cumva echipa AppSec, intern, lucreaza pentru ei. Cum? Depinde de la caz la caz si in functie de necesitati si timp disponibil. Pe scurt, echipa de AppSec trebuie sa faca cat de mult poate ca produsele dezvoltate sa fie cat mai sigure.
"Ce separa team leader-ul de ceilalti? Cata experienta si in ce l-a ajutat sa fie ales ca team lead" - Nu te ajuta cu nimic sa fii team lead sau manager de multe ori. Ca salariu, nu cred ca e o mare diferenta, poate sa nu fie deloc. Dar in plus sunt niste responsabilitati. De obicei, team lead e o persoana cu mai multa experienta, fie in domeniu, fie in compania respectiva. Pentru o echipa interna de AppSec e foarte important ca persoana sa fie cineva din companie deoarece sunt necesare multe discutii interne, cu tot felul de departamente, iar cineva de mai mult timp in firma poate avea avantaje in astfel de discutii cunoscand oamenii din firma.
"Daca echipa ar primi mai multe resurse, ar avea o performanta mai buna" - Da, clar, ar putea face mai multe lucruri. Ar fi un mic pas mai dificil la inceput, pentru onboardingul noului/noilor colegi, dar beneficiul pe termen lung a foarte mare, mai ales daca echipa colaboreaza bine.
"Ce iti impacteaza performanta?" - Depinde ce intelegi prin performanta, daca e vorba de cate vulnerabilitati ai gasit si cat de bine ai testat un proiect, cam orice in plus ti-o afecteaza. Mai exact daca ai 4 ore de meetinguri intr-o zi, vei putea testa doar 4 ore si nu mai ai aceleasi rezultate. Daca tii interviuri, de asemenea, necesita timp. Si orice altceva. DAR, oamenii cu care se discuta performanta inteleg aceste lucruri si stiu ca nu le faci de placere. Stiu ca sunt necesare. Si ajuta foarte mult pe alte zone, nu neaparat direct tehnice. Pana la urma scopul tau ca angajat AppSec e ca produsele sa fie mai sigure, iar prin discutii legate de security in meeting-uri sau angajari bune, ajuti cu siguranta la acest 'produs final'.
"Daca sunt lucruri care ar putea imbunatati workflow-ul, de ce nu sunt implementate deja" - Oh, automatizarile sunt extrem de utile, dar cineva trebuie sa le faca. Mi-ar placea sa am automatizare lucruri dar... nu imi place sa fac astfel de lucruri si oricum nu am timp de asa ceva. Si din pacate e foarte greu de gasit pe cineva care sa faca astfel de lucruri. Daca exista posibilitatea e ideal, trebuie doar asigurat faptul ca munca implicata pentru automatizare nu e mai mare decat munca necesara pentru a face manual acele lucruri. Mai general, ca beneficiul sa fie mai mare decat efortul necesar implementarii.
Am incercat sa raspund cu cateva idei, dar intrebarile sunt destul de generale si pot sa difere extrem de mult de la caz la caz. Orice ar fi, comunicarea e cheia. Pentru cei la inceput de drum poate fi diicil, exista persoan tehnice foarte bune dar care se plafoneaza din aceasta cauza. Daca isi iau inima in dinti si VORBESC despre ce le place si ce nu, vin cu idei, discuta atat cu managerul cat si cu celelalte echipe, lucrurile pot merge foarte bine. Nu va fie teama sa comunicati (bine, nici sa exagerati sau sa o dati in aroganta). Incercati sa intelegeti celelalte persoane/echipe cu care discutati. E important.