Lideri de opinie

Modificările aduse de inteligența artificială în dezvoltarea inginerilor

mm
Adaugă Unite.AI la sursele tale preferate pe Google

Acum aproximativ un an, una dintre cele mai aprige dezbateri din domeniul software s-a axat pe viitorul inginerului junior. Argumentul părea simplu: dacă inteligența artificială poate gestiona deja multe sarcini de programare la nivel junior, de ce să continuăm să angajăm și să instruim juniori?

A fost o întrebare serioasă, și mulți oameni deștepți au luat-o în serios.

La acea vreme, răspunsul meu a fost că alte profesii au rezolvat deja versiuni ale acestei probleme. Nimeni nu absolvă facultatea de medicină și nu efectuează imediat o intervenție chirurgicală independentă. Medicii petrec ani întregi făcând stagiatură, internship, completând rezidențiatul și practicând sub supraveghere înainte ca sistemul să aibă încredere în ei.

Același model există și în conducerea executivă. Nimeni nu absolvă facultatea și nu conduce imediat o companie din Fortune 500. Oamenii conduc echipe mici, apoi unități de afaceri mai mari și acumulează treptat judecată de-a lungul timpului. Calea devine mai lungă, mai practică și mai bazată pe ucenicie pe măsură ce crește complexitatea rolului.

Cred că ingineria se îndreaptă spre aceeași direcție. Dar, în ultimele luni, am început să gândesc diferit despre această problemă din cauza a trei experiențe nelegate care au condus la aceeași concluzie.

Trei exemple

Un prieten de-al meu a petrecut recent câteva luni pregătindu-se pentru un examen de limba cehă. El și câțiva colegi ai săi au angajat tutori umani și au investit bani reali în proces. El a promovat confortabil. Majoritatea celorlalți nu au reușit.

Cea mai mare diferență, potrivit lui, a fost că tutorele său principal a fost de fapt ChatGPT.

El putea studia la ora 23:00, dacă dorea. Putea repeta aceeași exercițiu de conjugare de 40 de ori fără a se îngrijora că va irosi răbdarea cuiva. Putea juca roluri în situații foarte specifice, cum ar fi interacțiunea cu un ofițer de taxe ceh, și putea adapta ședința exact la ceea ce îi era greu în acea zi.

Tutorii umani erau buni. Ei pur și simplu nu puteau egala disponibilitatea, repetiția și personalizarea.

Văd ceva asemănător și cu fiul meu și fizica. El înțelege deja subiectul foarte bine, așa că nu folosește Claude pentru a-i oferi răspunsuri. El îl folosește pentru a-l provoca. El îi cere să genereze probleme mai grele, să îl presese pe presupunerile sale, să explice de ce o abordare a fost aproape, dar în cele din urmă greșită, și să îl chestioneze în mod interactiv.

Cea mai apropiată comparație pe care o pot face este experiența pe care copiii deștepți o aveau când știau un frate mai mare care studia fizică. Cu toate acestea, această versiune este întotdeauna disponibilă, niciodată nerăbdătoare și niciodată nu spune “întreabă-mă mai târziu”.

Nepotul meu, care este încă la liceu, a construit un mic proiect de hobby pe care, în cele din urmă, îl va comercializa. L-am ajutat să configureze un agent de codare și să automatizeze câteva fluxuri de lucru. Fiecare după-amiază, la ora 17:00, în timp ce el termină școala, un agent scanează baza sa de cod și îi lasă sugestii de îmbunătățire. O dată pe săptămână, un alt flux de lucru rulează cercetări competitive și aduce la suprafață noi idei.

I-a plăcut.

La un moment dat, el a glumit: “Dacă programarea este atât de ușoară, voi rămâne fără idei”.

I-am spus că ideile au fost întotdeauna resursa rară. Diferența acum este că execuția nu mai constrânge în același fel, deoarece implementarea a devenit dramatic mai ieftină.

Bucle de feedback mai rapide

Niciunul dintre aceste exemple nu are de-a face cu limba cehă, fizica sau analiza codului.

Ele sunt exemple de feedback personalizat, care devine continuu disponibil.

În mod istoric, inginerii juniori învățau parțial prin repetiție și parțial prin proximitatea față de oameni experimentați. Ai scris cod, ai așteptat revizuirea, ai primit feedback atunci când un senior avea în cele din urmă timp disponibil și ai construit treptat judecată de-a lungul anilor de greșeli acumulate.

Inteligența artificială modifică însuși bucla de feedback.

Un inginer junior cu un asistent de inteligență artificială configurat corespunzător primește multe dintre lucrurile care depindeau anterior de disponibilitatea seniorilor. Revizuirea imediată a codului. Explicații despre de ce o alegere de proiectare poate crea probleme mai târziu. Referințe la modele similare din altă parte a bazei de cod. Reacție atunci când se ajunge la implementarea cea mai evidentă, în loc de cea mai bună.

Cel mai important, feedback-ul ajunge în timp ce inginerul este încă în interiorul problemei, și nu după două zile, când contextul a dispărut.

Asta contează pentru că trecerea de la junior la senior a fost întotdeauna condusă în mare măsură de judecată. Judecata este în mare măsură recunoașterea modelelor construite prin expunerea repetată la greșeli, compromisuri și cazuri limită. Cu cât cineva poate trece mai repede prin aceste bucle de feedback, cu atât mai repede se dezvoltă judecata.

Gâtul de sticlă al capacității de procesare nu se mai află la inginerii seniori. Acum se află tot mai mult la învățător.

Rețeaua de siguranță se îmbunătățește

Există o altă schimbare aici care contează la fel de mult.

Un inginer junior care lucrează cu sisteme puternice de revizuire a codului este substanțial mai puțin probabil să deterioreze accidental un sistem de producție.

Multe greșeli clasice sunt acum semnalate imediat: credențiale hardcodate, excepții înghițite, interogări nesigure, probleme de securitate, arhitecturi proaste, dependențe prost definite. Cererile de extragere proastă sunt prinse înainte de a părăsi laptopul.

Asta schimbă podeaua pentru munca juniorilor.

În mod istoric, o parte semnificativă a timpului inginerilor seniori a fost dedicată protejării organizației de greșeli evitabile. Straturile de revizuire a inteligenței artificiale absorb din ce în ce mai mult această povară, ceea ce permite juniorilor să opereze mai independent mai devreme decât puteau anterior.

Asta nu elimină nevoia de mentorat sau supraveghere. Schimbă locul unde mentoratul devine cel mai valoros.

Prăpastia se lărgește

Versiunea optimistă a acestui viitor depinde foarte mult de modul în care inginerul individual folosește sistemul.

Cineva care tratează inteligența artificială în primul rând ca o scurtătură pentru a evita gândirea va genera probabil mai mult cod, dar va învăța foarte puțin. Acum zece ani, aceeași persoană ar fi copiat soluții de pe Stack Overflow fără a le înțelege. Mecanismul s-a schimbat. Comportamentul de bază nu.

Inteligența artificială nu a fost niciodată menită să rezolve pasivitatea intelectuală.

Rezultatul mai interesant apare atunci când inginerii se angajează activ cu feedback-ul pe care îl primesc. Dacă cineva citește revizuirea cu atenție, se opune, pune întrebări ulterioare, testează alternative și, ocazional, descoperă că modelul însuși a fost greșit, atunci ei construiesc judecată mult mai rapid decât generațiile anterioare.

Efortul cognitiv nu a dispărut. S-a deplasat mai devreme în buclă și a devenit mai ieftin de repetat.

Asta probabil lărgește prăpastia dintre inginerii implicați și cei neimplicați.

Cele mai importante schimbări de productivitate funcționează în acest fel. Cititul a lărgit prăpastia dintre populațiile alfabetizate și cele analfabete. Internetul a lărgit prăpastia dintre oamenii curioși și cei pasivi. Inteligența artificială pare să continue același model.

Judecata de produs contează mai mult

Întrebarea mai interesantă nu mai este dacă inginerii juniori dispar. Este ce contribuie inginerii juniori din ce în ce mai mult atunci când implementarea însăși devine mai ușoară.

Răspunsul începe să arate surprinzător de similar cu ceea ce contribuie inginerii seniori puternici: creativitate, instinct de produs, gust, prioritizare, judecată și capacitatea de a identifica ce ar trebui să existe din start.

Rolurile de inginer se îndreaptă tot mai mult spre gândire orientată spre produs pentru că fricțiunea de implementare continuă să se prăbușească. Lucrările de instalații contează mai puțin decât înțelegerea dacă sistemul construit rezolvă cu adevărat problema corectă.

Proiectarea sistemului încă contează. Denumirea lucrurilor încă contează. Judecata de produs încă contează. Înțelegerea utilizatorilor încă contează. În unele moduri, aceste abilități devin și mai importante pentru că organizațiile pot testa idei mult mai rapid decât înainte.

Un inginer crescut cu inteligență artificială de la început va gândi probabil foarte diferit față de cineva instruit acum cincisprezece ani.

El va presupune că iterarea este ieftină. Va prototipa rapid multiple abordări, în loc de a dezbate o singură abordare timp de zile. Va aștepta bucle de feedback mult mai strânse între utilizatori și implementare, deoarece costul încercărilor continuă să scadă.

Asta creează un alt fel de inginer, unul modelat de cicluri mult mai scurte între idee și execuție.

Organizațiile vor trebui să reevalueze angajarea, evaluarea, mentoratul și promovarea corespunzător. Dar software-ul a trecut deja prin astfel de tranziții de mai multe ori: când a apărut web-ul, când a apărut mobilul, când infrastructura cloud a înlocuit sistemele on-prem.

Fiecare schimbare a modificat ce înseamnă o bună inginerie, fără a elimina nevoia de ingineri înșiși.

Implicații operaționale

Pentru inginerii juniori, sfatul nu este deosebit de glamoros.

Alegeți proiecte reale. Folosiți inteligența artificială ca reviewer umbrit în timp ce lucrați. Citiți feedback-ul cu atenție. Îl contraziceți uneori. Puneți întrebări ulterioare. Țineți evidența modelelor din spatele greșelilor pe care le prinde.

Asta este una dintre cele mai rapide căi de a dezvolta judecată, mult mai rapid decât așteptarea unui inginer senior ocupat să se elibereze pentru mentorat.

Pentru manageri, gâtul de sticlă se schimbă și el.

Creșterea juniorilor depindea în mod tradițional foarte mult de cât timp puteau seniorii să aloce pentru coaching. În mod tot mai evident, punctul de levier mai mare devine proiectarea unor medii de învățare puternice în jurul utilizării inteligenței artificiale: așteptări de revizuire, reguli de escaladare, modele de promptare, garduri și selectarea proiectelor.

Organizațiile care structurează aceste sisteme bine vor dezvolta probabil talent mai rapid decât generațiile anterioare.

Și pentru echipele de conducere, probabil că are sens să înceteze a mai vedea inginerii juniori în primul rând ca capacitate de execuție înlocuibilă. În multe organizații, ei pot deveni una dintre cele mai ieftine surse de experimentare, energie și iterare creativă disponibile.

O generație diferită de ingineri

Prietenul meu a învățat limba cehă mai repede pentru că a purtat, în esență, un tutore personalizat în buzunar. Fiul meu învață fizică cu un nivel de feedback interactiv pe care nu l-am avut eu vreodată. Nepotul meu primește în fiecare seară revizuiri de cod și cercetări de piață, în timp ce doarme.

Următoarea generație de ingineri va intra în industrie cu coaching continuu, bucle de feedback imediat și cicluri dramatic mai rapide între efort și feedback.

Asta nu elimină inginerul junior. Schimbă doar cât de repede se dezvoltă și care sunt abilitățile care contează mai mult pe parcurs.

Versiunea rolului pe care oamenii au crescut cu ea este probabil pe cale de dispariție. Dar înlocuirea poate fi mai rapidă, mai bine antrenată, mai experimentală și mai orientată spre produs decât generația anterioară a avut vreodată ocazia să devină.

Andrew Filev este fondatorul și CEO-ul Zencoder. El a transformat managementul colaborativ al muncii prin fondarea Wrike (20.000 de clienți, vândut pentru 2,25 miliarde de dolari), a fost prezentat în Forbes și The New York Times, iar pasiunea sa pentru inteligență artificială și inovație continuă să modeleze viitorul muncii.