Artur Ter-Stepanyan de la CodeRiders împărtășește perspective convingătoare despre proiectele sale de externalizare a software-ului

Publicat: 2023-02-06

Dezvoltatorii de software și inginerii urăsc să vorbească; cei mai mulți dintre noi am auzit măcar o dată această frază. Dar dacă este adevărat sau nu, avem nevoie de opinii direct de la profesioniști. Nimeni nu poate împărtăși informații mai aprofundate asupra procesului de dezvoltare software decât dezvoltatorii și inginerii înșiși.

CodeRiders își continuă seria de interviuri cu cei mai importanți dezvoltatori și ingineri de software. Anterior, am împărtășit călătoriile angajaților noștri în IT, împreună cu abilitățile lor tehnice și soft ca ingineri software profesioniști la distanță.

De data aceasta, continuăm cu dezvoltatorul nostru de software full-stack, Artur Ter-Stepanyan, care își împărtășește părerea despre managementul externalizării software, echipele Scrum și proiectele sale preferate.

Despre Artur Ter-Stepanyan

Artur este un dezvoltator de software senior la compania de dezvoltare software CodeRiders. Este unul dintre cei mai buni absolvenți ai CodeRiders, care a format echipa de bază în 2016.

Dacă urmărești CodeRiders de ceva vreme, poate știi deja că CodeRiders a intrat în industria IT internațională ca școală locală de dezvoltare de software în 2013. În doar un an, școala a oferit peste 800 de absolvenți, dintre care 17 au format CodeRiders. firmă de outsourcing de software în 2014.

Artur a contribuit mult la recunoașterea internațională a CodeRiders ca una dintre cele mai bune companii de outsourcing de software de pe piață. El a lucrat cu colegii săi la unele dintre cele mai dificile și complexe proiecte de externalizare a software-ului. Artur este unul dintre dezvoltatorii noștri de software harnici, care a câștigat recenzii pozitive ale clienților pentru compania noastră. De asemenea, a fost activ în reprezentarea companiei noastre în cadrul diferitelor evenimente – cel mai recent a fost Târgul Internațional Hannover Messe 2022 din Hanovra, Germania.

Să începem de la început!

Buna Artur. Vă mulțumim pentru timpul acordat pentru a vorbi cu noi. Să începem cu câteva informații de fundal despre tine și călătoria ta pentru a deveni un dezvoltator de software de succes. Cum ai ajuns la CodeRiders?

Buna ziua. Multumesc pentru oferta. Cred că mulți dezvoltatori de software armeni ar avea legătură cu povestea mea. Lucrez deja în industria IT de 7 ani, dar să devin dezvoltator de software nu a fost visul meu din copilărie și nici dezvoltarea de software nu era specializarea mea la universitate. Ca tânăr adult obișnuit, am fost interesat de multe profesii aleatorii, inclusiv medicină și asistență medicală. Am vrut să aleg o profesie care să mă intereseze cu adevărat. La sfârșitul zilei, acesta este ceea ce îți vei petrece cel mai mult timp. Totuși, nu am uitat nici de salariul mediu pentru anumite profesii și mediile lor.

În momentul în care căutam o astfel de oportunitate de carieră perfectă, fratele meu lucra la CodeRiders ca director al departamentului de dezvoltare a afacerii. Fondatorul companiei și CTO este prietenul din copilărie al fratelui meu. Așadar, compania a fost deja încântătoare pentru mine. Mi-a sugerat să mă înscriu la cursurile lor PHP, Laravel și JavaScript pentru a vedea dacă programarea m-ar interesa. La mijlocul anilor 2000, industria tehnologică era deja înfloritoare în Armenia. Marea majoritate a absolvenților promițători au ales profesii precum dezvoltatori de software, ingineri, arhitecți, testeri (specialiști QA), PM și marketeri digitale, iar industria IT era foarte puternică și plină de un milion de oportunități. Armenia era pe cale să devină următorul hub tehnologic al lumii.

Așa că am decis să-l încerc și, după cum puteți vedea, a fost o alegere excelentă. M-am trezit în dezvoltarea de software, iar echipa a fost o potrivire perfectă pentru mine. După ce am terminat cu succes școala de dezvoltare software, am fost angajat ca dezvoltator de software back-end în 2016. CodeRiders este primul și singurul meu spațiu de lucru. Am creat o atmosferă în care expresia „Sunt doar un angajat” nu este potrivită. Tuturor ne pasă sincer de bunăstarea și reputația companiei și este uimitor cât de departe am ajuns de la a fi doar un mic startup la un furnizor de software recunoscut la nivel internațional. Știu că găsirea unui loc de muncă ideal din prima încercare se întâmplă rar, așa că apreciez foarte mult. Cred că succesul meu personal, precum și succesul companiei, este strâns legat de viziunea și dedicarea noastră. Suntem ca o mare familie care s-a adunat pentru o misiune clară de a ajuta oamenii să lucreze mai productiv și să se distreze.

Ai menționat că echipa este ca o familie pentru tine. Nu creează acest fapt un mediu „liber” pentru muncă și disciplină?

Mulți cred că a fi prieten cu colegii tăi sau a avea legături strânse la locul de muncă dăunează afacerii/productivității muncii. Nu voi contesta asta pentru că cazurile diferă. Cu toate acestea, la CodeRiders, acesta este mai degrabă un stimul suplimentar pentru a funcționa mai bine. Cu CodeRiders, sunt eu însumi. Nu sunt sub nicio constrângere și nici nu simt nevoia să mă arăt. Ca rezultat, mă concentrez doar pe munca mea și fac ceea ce fac cel mai bine: codificare și dezvoltare de software. Rezultatele bune și feedback-ul pozitiv al clienților dovedesc eficiența muncii mele.

Vă rugăm să descrieți ziua dvs. obișnuită de lucru la CodeRiders.

Începem cu o ceașcă de cafea, desigur. Dacă este luni, toți membrii echipei, inclusiv departamentul de dezvoltare a afacerii, se adună pentru o întâlnire de dimineață. Împărtășim ceea ce facem și ne asigurăm că toată lumea este pe drumul cel bun. Apoi toată lumea începe să lucreze.

Cu toții lucrăm în câteva camere mari și confortabile. Nu avem camere separate, ceea ce este grozav în opinia mea, pentru că lucrul împreună eliberează cumva stresul. De exemplu, în timpul unei zile grele, unul dintre membrii echipei noastre poate să facă o glumă, iar toată lumea râde și continuă să lucreze.

Avem și săli separate pentru discuții sau apeluri video. Deci, dacă avem nevoie de spațiu privat și de liniște, ne putem muta în acele camere. Pentru noi, dezvoltatorii, acest lucru se întâmplă de obicei dimineața și seara când avem apeluri cu un client și cu echipa de dezvoltare software la distanță. De asemenea, putem avea mai multe pauze de cafea când putem vorbi doar despre diferite subiecte, să ne relaxăm și să ne împrospăm mințile. CodeRiders oferă un model de lucru hibrid, ceea ce înseamnă că angajații sunt liberi să aleagă între lucrul de la distanță sau la birou. Prefer munca în casă pentru că îmi place să fiu în preajma colegilor mei (fratele meu și prietenii apropiați), ceea ce mă ajută să funcționez și mai productiv.

Veți discuta mai detaliat despre proiectul dvs. actual?

În prezent lucrez pe o platformă de management sportiv all-in-one. Obiectivul său principal este de a eficientiza organizarea cluburilor sportive. Este una dintre cele mai importante platforme de management sportiv de pe piața internațională. Automatizăm managementul oricărui club sportiv. Oricine poate participa și încuraja clubul local din oriunde în lume. Produsul este ca și cum ai avea o întreagă echipă administrativă în buzunar. Acesta ajută utilizatorul să își gestioneze cu ușurință clubul oriunde și oricând pe toate dispozitivele sale. Lucrez cu ingineri și dezvoltatori software de la distanță de pe aproape fiecare continent. Avem mai mulți manageri de proiect care lucrează îndeaproape cu toți membrii echipei de tehnologie și cu clientul.

Ce îți place cel mai mult la actualul tău proiect de dezvoltare software?

Pe lângă faptul că proiectul este mare și nu te plictisește niciodată, mă bucur de procesul și metodologia noastră de lucru. Folosim metodologia de dezvoltare software Scrum, care este perfectă pentru un proiect atât de complex. Scrum este cel mai popular cadru Agile și, desigur, urmează cele 5 principii ale Agile: angajament, concentrare, respect, deschidere și curaj. În general, modelele de dezvoltare software iterativă sunt foarte flexibile și „prietenoase cu schimbarea”. Nu trebuie să rămâneți cu planul. Cu Scrum, poți în continuare să reușești în dezvoltarea și implementarea software-ului chiar dacă nu ai în minte versiunea finală a produsului. Între timp, spre deosebire de modelele de software cu preț fix, metodologiile iterative de externalizare a software-ului asigură clientul să plătească doar pentru munca angajată.

Descrieți ziua dvs. de lucru tipică în cadrul acestui proiect. Ce înseamnă să fii un dezvoltator full-stack care lucrează cu o echipă internațională?

Echipa noastră este formată din manageri de proiect, dezvoltatori de software back-end și front-end, ingineri și testeri. Managerii de proiect despart munca în sprinturi și cooperăm strâns pentru a finaliza și testa fiecare sprint după ce mergem mai departe. Deci, procesul de dezvoltare software și cronologia arată astfel:

  1. Începem cu planificarea sprintului. Fiecare sprint începe după cum urmează: dezvoltatorii de software, inginerii și proprietarii de produse discută ce elemente de backlog de produse (PBI) ar trebui incluse în sprint. Proprietarul produsului este responsabil pentru prioritizarea PBI-urilor pentru un anumit ecran. Cu toate acestea, suntem, de asemenea, încurajați să ne împărtășim opiniile, gândurile și preocupările cu privire la decizie, ceea ce este grozav. În cele din urmă, cădem de acord asupra unui obiectiv realist de sprint și a stocului de restanțe.
  2. Scrum zilnic include întâlniri zilnice, care sunt apeluri de 15 până la 30 de minute atunci când ne înregistrăm, împărtășim progresul nostru și ne revizuim activitățile din ziua respectivă.
  3. Continuăm cu recenzii de sprint: la sfârșitul fiecărui sprint avem o întâlnire online cu echipa de management și ne arătăm munca finală. Echipa de management parcurge caracteristicile de lucru care au fost implementate în timpul sprintului și oferă feedback. Feedback-ul este încorporat în backlog-ul de produse, ajutându-ne să stabilim priorități mai bune în timpul sprinturilor viitoare.
  4. Pasul final este retrospectiva sprintului. Acesta este momentul în care echipa Scrum analizează lucrurile pe care ar trebui să le îmbunătățim și oferă metode de îmbunătățire pentru viitor. Colaborăm și ne planificăm următorul pas în consecință.

Oricât de mult vă place metodologia Scrum, există dezavantaje în proiectul dvs. pe care ați dori să le remediați?

Sincer să fiu, uneori simt că pierdem timpul. Îmi place să vorbesc și să mă asigur că toți membrii echipei sunt pe aceeași cale. Aceasta, desigur, este cheia succesului. Cu toate acestea, uneori, unele apeluri sau conversații nu sunt necesare și este posibil să petrecem mai mult timp discutând o problemă decât lucrând efectiv la un proiect.

Cum e să lucrezi cu străinii? Există diferențe culturale?

Desigur, experiența este foarte diferită și este firească. Trăim în medii diferite și avem obiceiuri, mentalități și mentalități diferite. Uneori nu înțelegem glumele celuilalt. Cu toate acestea, acest lucru nu este mare lucru și nu dăunează procesului nostru de lucru. Într-adevăr, aceasta este o chestiune de timp. Cu cât lucrăm mai mult împreună, cu atât ne înțelegem mai bine cultura locală a celuilalt. Oricum, cu toate aceste diferențe, încă îmi place să lucrez cu profesioniști din alte țări. Acest lucru face munca și mai interesantă.

Cât de important este un bun management de proiect pentru un dezvoltator de software?

Managementul proiectelor este critic. Un proiect este probabil să eșueze în 90% din timp dacă nu există o comunicare transparentă între client și membrii echipei. O înțelegere solidă a responsabilităților este o necesitate pentru succesul unui proiect.

Am lucrat la proiecte care au avut și nu au avut manageri de proiect. În primul caz, am comunicat ușor și ușor cu colegii mei ingineri și dezvoltatori software. Echipa de tehnologie a avut uneori dificultăți în a comunica cu membrii echipei non-tehnice, dar era o chestiune de timp. Acest lucru depinde și de experiența unui dezvoltator de software de lucru cu persoane netehnice. Dacă dezvoltatorul de software este priceput să lucreze cu membri ai personalului non-tehnic și înțelege logica acestora, comunicarea este simplă și necesită mai puțin timp. În caz contrar, ar putea dura un minut, dar din nou vor reveni pe drumul cel bun. Proiectele mici și simple nu au nevoie nici măcar de manageri de proiect. Cu toate acestea, nu voi subestima rolul managerilor de proiect în proiectele mici. Desigur, ei gestionează cooperarea în moduri mai profesioniste și mai benefice.

Ce limbi sau stive de tehnologie ați dori să învățați în viitor?

Momentan explorez Unity. Este un motor de joc multiplatform. Este foarte popular și probabil că știți deja despre el. Unity acceptă o varietate de platforme mobile, console, desktop și realitate virtuală. Este folosit mai ales pentru dezvoltarea jocurilor iOS și Android și este popular în special pentru dezvoltarea jocurilor independente (jocuri video independente).

Unul dintre avantajele principale ale publicării independente este că este disponibilă unui număr mare de persoane. De exemplu, dezvoltatorii și inginerii de software individuali sau echipele mici de dezvoltare de software își pot crea jocurile fără sprijin tehnic și financiar din partea editorilor de jocuri mari. Mă joc cu motorul Unity pentru a crea jocuri 3D și 2D, simulări interactive și alte lucruri interesante.

CodeRiders este primul și singurul tău spațiu de lucru. Acest lucru nu se întâmplă des. De ce este asta?

Nu am un spațiu de lucru anterior pe care să îl compar cu CodeRiders și nu m-am gândit niciodată să-l părăsesc. Acest lucru înseamnă deja că este un spațiu de lucru unic. Am asistat la creșterea acestei companii de la un mic startup la un furnizor de software consacrat, recunoscut la nivel internațional. Am încredere și apreciez colegii mei pentru că suntem responsabili pentru reputația înaltă a companiei. Cred în compania de dezvoltare software a CodeRiders și în viziunea acesteia. Am, de asemenea, un membru al familiei și cei mai mulți dintre prietenii mei apropiați printre personal, așa că cred că acești trei fac un rezumat solid al acestei întrebări.

Să încheiem acest interviu cu câteva informații despre Artur ca individ. Hobby-urile și interesele tale?

Ei bine, îmi place sportul, în special fotbalul/fotbalul. De asemenea, îmi place să joc jocuri video.

Îți mulțumim, Artur, că ți-ai făcut timp să vorbești cu noi. Cred că ați împărtășit o mulțime de informații utile cu publicul nostru.

Dacă aveți nevoie de dezvoltatori software și ingineri talentați precum Artur, nu ezitați să ne trimiteți un mesaj rapid aici. De asemenea, suntem deschiși la discuții libere. Lăsați-ne mesajul dvs. și unul dintre membrii echipei noastre de dezvoltare a afacerii vă va răspunde într-o zi lucrătoare.