Ești pasionat de open source și îți dorești să devii un dezvoltator în acest domeniu? Atunci ai ajuns exact unde trebuie.
Termenul „open source” se referă la software-ul cu cod sursă deschis, accesibil publicului. Însă, acest concept implică mult mai multe aspecte.
În acest articol, vom explora toate aceste aspecte și vom oferi o direcție clară pentru cei care aspiră să devină dezvoltatori open source.
Să începem!
Ce definește un dezvoltator open source?
Un dezvoltator open source este o persoană care contribuie la proiecte software distribuite sub licențe open source. Așadar, prin definiție, dacă oferi contribuții la astfel de proiecte, ești un dezvoltator open source.
Însă, rolul unui dezvoltator open source depășește simpla contribuție de cod.
Un dezvoltator open source este specializat în ecosistemul open source. El înțelege pe deplin cum funcționează, cum să contribuie eficient, diferitele tipuri de licențe și cum să colaboreze cu alți programatori pentru a crea cele mai bune soluții software. Această expertiză face ca dezvoltatorii open source să fie foarte căutați pe piață.
Piața open source este foarte dinamică și cere expertiză în următoarele tehnologii:
- Tehnologii cloud/container
- Securitate cibernetică
- DevOps
- Tehnologii web
- Blockchain
- Tehnologii de stocare
- Inteligență artificială/Învățare automată
- Edge Computing
Acum, vom analiza în detaliu responsabilitățile unui dezvoltator open source.
Care sunt obligațiile unui dezvoltator open source?
Sarcinile unui dezvoltator open source variază în funcție de experiența, nivelul de implicare și abilitățile sale. În general, responsabilitățile includ adăugarea de cod nou și remedierea erorilor. De asemenea, dezvoltatorii open source trebuie să gestioneze aspectele comunitare ale proiectelor.
Cei cu abilități avansate de codare și dezvoltare vor avea oportunitatea de a contribui la codul de bază al proiectului. Acesta poate include adăugarea de funcționalități noi sau optimizarea codului pentru performanțe îmbunătățite.
O altă sarcină importantă este urmărirea și rezolvarea problemelor și erorilor. Deoarece proiectele open source acceptă contribuții de la oricine, ele tind să devină mari. Pentru a gestiona eficient erorile, solicitările de funcționalități și rapoartele de probleme, managerii de proiect implementează sisteme de urmărire adecvate.
Participarea la revizuirea codului este esențială pentru a menține consistența și calitatea bazei de cod.
În funcție de rolul specific, s-ar putea să fii nevoit să te ocupi de:
- Testare și asigurarea calității
- Colectarea cerințelor
- Implicarea comunității
- Compatibilitate cu versiunile anterioare
- Gestionarea lansărilor
- Asigurarea securității proiectului
- Crearea documentației interne și publice
- Traducerea
În continuare, vom explora oportunitățile de carieră în domeniul open source.
De ce să alegi o carieră în open source?
Carierele în open source sunt din ce în ce mai căutate, pe măsură ce tot mai multe companii își deschid codul sursă. De fapt, majoritatea tehnologiilor actuale sunt open source. Cu cât mai mulți oameni examinează codul, cu atât acesta devine mai bun.
Adoptarea open source ajută companiile să reducă costurile, să diminueze riscurile și să îmbunătățească calitatea generală a proiectelor.
Pentru un dezvoltator open source, acest lucru înseamnă mai multe șanse de angajare. Conform unui raport din 2022, managerii caută în mod activ candidați cu experiență în open source.
Raportul 2022 privind locurile de muncă cu sursă deschisă a arătat că 86% dintre manageri caută angajați cu experiență în open source, iar 46% sunt interesați să crească numărul angajărilor în acest domeniu.
Sursa: training.linuxfoundation.org
Studiul a relevat, de asemenea, că 93% dintre manageri au dificultăți în a găsi candidații potriviți pentru echipele lor. Majoritatea candidaților nu dețin experiența necesară în open source.
Raportul evidențiază și abilitățile pe care managerii le caută la potențialii angajați:
- Abilitatea de a proiecta soluții
- Cunoștințe practice despre utilizarea GitHub
- Experiență în gestionarea și contribuția la proiecte open source
- Cunoașterea noilor instrumente
Pentru un candidat, o carieră în open source vine cu multe beneficii, printre care:
- Lucrul cu tehnologii și infrastructuri de ultimă generație
- Colaborarea cu specialiști din întreaga lume
- Oportunități excelente de dezvoltare profesională
- Posibilitatea de a lucra la proiecte care îi pasionează (open source)
Cum să devii un dezvoltator open source?
Pentru a deveni un dezvoltator open source competent, trebuie să începi cu pași mici. Cel mai bun mod de a învăța este să înțelegi cum funcționează open source și cum să contribui.
#1. Înțelegerea componentelor unui proiect Open Source
Primul pas în călătoria ta ca dezvoltator open source este să înțelegi cum funcționează un astfel de proiect. Este esențial să știi că un proiect open source este dezvoltat de oameni reali care lucrează pentru a rezolva probleme reale. Aici găsești mentori, contribuitori, comunitatea și utilizatorii/clienții.
Alte componente importante includ:
- Codul sursă și depozitul de documentație
- Ghidul de contribuție
- Licențele de proiect care specifică termenii de distribuție
- Cultura proiectului
- Ghidul codului de conduită
- Distribuția
Fiecare dintre aceste elemente este crucială pentru succesul unui proiect open source. La baza tuturor se află un sistem de control al versiunilor (VCS) precum Git.
#2. Începe cu pași mici
După cum sugerează și Radek Pazdera, cel mai bine este să începi cu proiecte mici. Acest lucru te va ajuta să nu fii copleșit de dimensiunea unei baze de cod extinse. Dacă încerci să înțelegi totul deodată, vei fi rapid copleșit. Începând cu proiecte mici, te vei putea concentra pe aspectele care îți plac și vei rămâne motivat pe parcurs.
#3. Învață elementele de bază ale contribuției open source
Cel mai bun mod de a deveni un dezvoltator open source este să înveți elementele fundamentale. Codul trebuie modificat, inspectat sau îmbunătățit pe parcursul ciclului său de viață.
Ecosistemul open source este vast. Majoritatea proiectelor sunt sponsorizate de consorții sau furnizori de software. Companiile apelează la software open source chiar și atunci când dezvoltă software proprietar.
Dacă ești nou în acest domeniu, începe prin a căuta pe GitHub proiecte care te interesează. Explorează fișierele de contribuție și README pentru a înțelege proiectul. Documentația proiectului este, de asemenea, o resursă valoroasă, oferind detalii și tutoriale.
După ce te simți confortabil, creează-ți un mediu de dezvoltare și începe să contribui.
#4. Menține linia de comunicare deschisă
Este important să investești timp și în comunitatea proiectului la care contribui. Alătură-te canalului IRC și listei de discuții pentru a fi la curent cu activitatea comunității. Aceste canale ajută și începătorii să facă primii pași, oferindu-le suport și ghidare.
Poți contacta direct dezvoltatorii și mentorii proiectului prin e-mail, pentru a primi ajutor. Cei care lucrează la proiecte open source sunt, în general, foarte deschiși să ofere sprijin. Cu toate acestea, încearcă să nu-i deranjezi cu întrebări foarte simple; folosește forumurile sau listele de discuții pentru acestea.
Pe măsură ce începi să contribui, vei fi observat. Așa începi să-ți crești șansele de a fi angajat.
#5. Obținerea unui loc de muncă în open source
Există două căi principale pentru a obține un job în open source: calea tradițională și calea prin contribuții directe.
Să începem cu metoda tradițională.
Aici, cauți anunțuri de locuri de muncă pe portaluri specializate sau pe site-urile companiilor și aplici pentru pozițiile care te interesează. LinkedIn poate fi util pentru a afla mai multe despre cultura companiei și despre pozițiile deschise.
Dacă nu găsești anunțuri pentru proiectul open source care te interesează, contactează direct dezvoltatorii sau mentorii. Există cazuri în care companiile iau în considerare angajarea candidaților cu rezultate excepționale.
A doua cale este să fii remarcat prin contribuțiile tale.
Am menționat într-un articol anterior cum să te faci remarcat prin contribuțiile tale. Ideea este să continui să contribui activ până când ești observat de cineva. Dacă impactul tău este semnificativ, vei avea o poziție excelentă pentru a fi angajat.
Concluzie
Calea către o carieră în open source începe cu contribuții. Există cazuri în care candidații învață anumite tehnologii la locul de muncă. Totuși, inițiativa individuală este esențială pentru a fi cu un pas înaintea celorlalți.
De multe ori, joburile în open source sunt remote, oferind un echilibru mai bun între viața personală și profesională, și posibilitatea de a continua să contribui la alte proiecte open source în timpul liber.
În final, explorează bibliotecile și runtime-urile TypeScript pentru a-ți consolida cunoștințele de dezvoltator.