Free lesson · GenAI Engineering Leader

Hiring GenAI Engineers માટે ડેટા મોડેલ અને સ્કીમા ડિઝાઇન કરો

કોડિંગ, સિસ્ટમ ડિઝાઇન, LLM-વિશિષ્ટ અને મૂલ્યાંકન પડકારોને આવરી લેતા ઇન્ટરવ્યૂ લૂપ્સ ડિઝાઇન કરવા માટે જરૂરી મુખ્ય ડેટા સ્ટ્રક્ચર્સ, સ્કીમા અને કન્ફિગરેશન વ્યાખ્યાયિત કરો. એવા પાયાના મોડેલ્સ ડિઝાઇન કરો જેના પર બાકીના બધા કમ્પોનન્ટ્સ બનશે.

Course: GenAI Engineering Leadership · Chapter 1 · Hiring GenAI Engineers

Free to read — no subscription required.

પરિચય

જ્યારે તમે GenAI એન્જિનિયરોની ભરતી કરી રહ્યા હોવ, ત્યારે કોડિંગ રાઉન્ડ ઘણીવાર તમારા લૂપમાં સૌથી નબળો સંકેત હોય છે — પ્રોડક્શન LLM એન્જિનિયરિંગમાં મજબૂત ઉમેદવારો સામાન્ય અલ્ગોરિધમ પઝલમાં નિષ્ફળ જઈ શકે છે, અને આત્મવિશ્વાસુ જનરલિસ્ટો તમારી ટીમ ખરેખર જે કોડ શિપ કરે છે તેની એક લાઇન પણ લખ્યા વગર પાસ થઈ જાય છે. આ રાઉન્ડ ખોટો થાય તો તમે કાં તો જે લોકોની તમને સૌથી વધુ જરૂર છે તેમને નકારી દો છો અથવા જે લોકો તેમના પહેલા સ્પ્રિન્ટમાં જ નિષ્ફળ થવાની સૌથી વધુ શક્યતા ધરાવે છે તેમને ઓફર આપી દો છો. આ પાઠના અંત સુધીમાં તમે એક બહુ-રાઉન્ડ ઇન્ટરવ્યૂ લૂપ ડિઝાઇન કરી શકશો જેમાં કોડિંગ રાઉન્ડ એક સ્પષ્ટ ક્ષમતા (competency) સાથે મેપ થયેલો હોય, બાકીના લૂપ સામે તેનું વજન નક્કી થયેલું હોય, અને કવરેજ ચેક્સથી સજ્જ હોય જે ડિઝાઇનની ખામીઓને ખરાબ ભરતી બનતા પહેલાં પકડી લે.

મુખ્ય પરિભાષા

  • Competency matrix (ક્ષમતા મેટ્રિક્સ): કોઈ ભૂમિકા માટે જરૂરી કૌશલ્ય પરિમાણોની સ્પષ્ટ યાદી, જેમાં દરેક ઇન્ટરવ્યૂ રાઉન્ડ એક પ્રાથમિક પરિમાણ સાથે મેપ થયેલો હોય જેનું મૂલ્યાંકન કરવાની જવાબદારી તેની હોય.
  • Coverage (કવરેજ): એ ગુણધર્મ કે મેટ્રિક્સમાંના દરેક ક્ષમતા પરિમાણનું મૂલ્યાંકન ઓછામાં ઓછા એક રાઉન્ડ દ્વારા થાય છે; જે ક્ષમતાને શૂન્ય રાઉન્ડ સોંપાયેલા હોય તે ભરતીનું અંધ બિંદુ (blind spot) છે.
  • Round weight (રાઉન્ડ વજન): અંતિમ hire/no-hire નિર્ણયમાં રાઉન્ડના યોગદાન પર લાગતો સંખ્યાત્મક ગુણક, જે "આ રાઉન્ડ વધુ મહત્વનો છે" જેવા અસ્પષ્ટ નિર્ણયોને સ્પષ્ટ અને સમીક્ષા કરી શકાય તેવા બનાવવા માટે વપરાય છે.

વિભાવનાઓ

ઇન્ટરવ્યૂ લૂપની ડિઝાઇનનો એકમ competency matrix છે: ભૂમિકા માટે જરૂરી કૌશલ્ય પરિમાણોની સ્પષ્ટ યાદી, જેમાં દરેક રાઉન્ડ બરાબર એક પરિમાણ સાથે મેપ થયેલો હોય જેનું મૂલ્યાંકન કરવાની પ્રાથમિક જવાબદારી તેની હોય. GenAI એન્જિનિયરિંગ ભરતી માટે, છ પરિમાણો ભૂમિકાના વાસ્તવિક વિસ્તારને આવરી લે છે — કોડિંગ મૂળભૂત બાબતો, સિસ્ટમ ડિઝાઇન, LLM ડોમેન જ્ઞાન, મૂલ્યાંકન પદ્ધતિ, સહયોગ અને સંચાર, અને પ્રોડક્શન એન્જિનિયરિંગ. એક રાઉન્ડ નજીકના પરિમાણો પર ગૌણ સંકેત આપી શકે છે, પરંતુ દરેક પરિમાણનો માલિક એક — અને માત્ર એક — રાઉન્ડ હોવો જોઈએ.

બે ગુણધર્મો મેટ્રિક્સને માત્ર શોભાના બદલે ઉપયોગી બનાવે છે. Coverage એ ગુણધર્મ છે કે દરેક પરિમાણનું મૂલ્યાંકન ઓછામાં ઓછો એક રાઉન્ડ કરે છે; કોઈપણ આવરી ન લેવાયેલું પરિમાણ એક અંધ બિંદુ છે જે ખોટી ભરતી બનવાની રાહ જોઈ રહ્યું છે. પ્રાથમિક પર કોઈ ઓવરલેપ નહીં (No-overlap on primaries) એ ગુણધર્મ છે કે કોઈ બે રાઉન્ડ એક જ પ્રાથમિક પરિમાણનો દાવો કરતા નથી; ઓવરલેપ ઇન્ટરવ્યૂઅરનો સમય વેડફે છે અને કોઈ સંકેત ઉમેર્યા વગર લૂપની લંબાઈ વધારે છે. નીચેનું Code Walkthrough બંને ગુણધર્મોને ચલાવી શકાય તેવા ચેક્સ તરીકે એન્કોડ કરે છે જેથી ડિઝાઇનની ચકાસણી દર વખતે એક જ રીતે થાય, દરેક ભરતી કિકઓફમાં ફરીથી દલીલ ન કરવી પડે.

ત્રીજી વિભાવના, round weight, દર્શાવે છે કે દરેક રાઉન્ડ અંતિમ નિર્ણયમાં કેટલું યોગદાન આપે છે. દરેક રાઉન્ડને સમાન વજન પર છોડી દેવાથી કલ્ચર વાતચીતને AI સિસ્ટમ ડિઝાઇન રાઉન્ડ સાથે શાંતિથી સરખાવી દેવાય છે, જે ભરતી સમિતિ ખરેખર ભાગ્યે જ માને છે. વજનને નામ આપવાથી વાતચીત ખુલ્લામાં આવે છે જ્યાં તેની સમીક્ષા થઈ શકે.

ઇન્ટરવ્યૂ લૂપ ડિઝાઇન કરવું એ એક પુનરાવર્તિત કવરેજ-અને-કેલિબ્રેશન ચક્ર છે:

Loading diagram...

Code Walkthrough

વિભાવનાઓમાંના competency matrix પર આધાર રાખીને, આ વિભાગ મેટ્રિક્સને ચલાવી શકાય તેવા કોડમાં ફેરવે છે જેથી કવરેજ વિશ્લેષણ કોઈ ફરી ન વાંચતા વિકી પેજમાં પડી રહેવાને બદલે આપમેળે ચાલે. નીચેનો સ્નિપેટ competency enum, round dataclass અને લૂપ-સ્તરની કવરેજ પદ્ધતિઓને એક જ સ્વ-સમાવિષ્ટ ઉદાહરણમાં જોડે છે.

Code snippetpython
1from dataclasses import dataclass, field 2from enum import Enum 3 4class CompetencyArea(Enum): 5 CODING = "coding_fundamentals" 6 SYSTEM_DESIGN = "system_design" 7 LLM_KNOWLEDGE = "llm_domain_knowledge" 8 EVALUATION = "evaluation_methodology" 9 COLLABORATION = "collaboration_communication" 10 PRODUCTION = "production_engineering" 11 12@dataclass 13class InterviewRound: 14 name: str 15 duration_minutes: int 16 primary_competency: CompetencyArea 17 secondary_competencies: list[CompetencyArea] = field(default_factory=list) 18 weight: float = 1.0 19 20@dataclass 21class InterviewLoop: 22 role_title: str 23 rounds: list[InterviewRound] = field(default_factory=list) 24 25 def coverage_report(self) -> dict[str, list[str]]: 26 coverage = {area.value: [] for area in CompetencyArea} 27 for r in self.rounds: 28 coverage[r.primary_competency.value].append(f"{r.name} (primary)") 29 for sc in r.secondary_competencies: 30 coverage[sc.value].append(f"{r.name} (secondary)") 31 return coverage 32 33 def identify_gaps(self) -> list[str]: 34 return [a for a, rs in self.coverage_report().items() if not rs]
  • CompetencyArea GenAI ભરતીએ આવરી લેવા જોઈએ તેવા છ પરિમાણોને નામ આપે છે, સામાન્ય "technical / behavioral" વિભાજનથી આગળ વધીને જેથી દરેક રાઉન્ડ પાસે મૂલ્યાંકન કરવા માટે એક ચોક્કસ કૌશલ્ય હોય.
  • InterviewRound રાઉન્ડની પ્રાથમિક ક્ષમતા, કોઈપણ ગૌણ સંકેતો, અને એક weight નોંધે છે જે એન્કોડ કરે છે કે ભરતીનો નિર્ણય તેના પર કેટલો આધાર રાખે છે — અસ્પષ્ટ નિર્ણયોને સ્પષ્ટ અને સમીક્ષા કરી શકાય તેવા બનાવે છે.
  • InterviewLoop.coverage_report દરેક ક્ષમતાને તેનું મૂલ્યાંકન કરતા રાઉન્ડ્સ સાથે મેપ કરે છે, જેથી ઓવરલેપ (કોડિંગ પર બે રાઉન્ડ પ્રાથમિક હોવા) એક નજરમાં દેખાઈ આવે.
  • InterviewLoop.identify_gaps શૂન્ય કવરેજ ધરાવતી કોઈપણ ક્ષમતાને ફ્લેગ કરે છે, ડિઝાઇનની ભૂલોને ભરતીની ભૂલો બનતા પહેલાં પકડી લે છે.

તમને ખબર પડશે કે તે કામ કરે છે જ્યારે identify_gaps() ખાલી યાદી પરત કરે અને કોઈ ક્ષમતા એકથી વધુ (primary) એન્ટ્રી સાથે ન દેખાય — દરેક પરિમાણ બરાબર એક વાર આવરી લેવાયું છે.

શિસ્ત-ક્ષેત્ર ઉપયોગ

શું કરવું અને શું ન કરવું

હવે જ્યારે તમે અમલીકરણ પર કામ કરી લીધું છે, નીચેની પ્રથાઓ ટકાઉ અભિગમને નાજુક અભિગમથી અલગ પાડે છે.

શું કરવું

  1. પહેલાં competency matrix વ્યાખ્યાયિત કરો, પછી ગૌણ કવરેજ ઉમેરતા પહેલાં દરેક રાઉન્ડને બરાબર એક પ્રાથમિક ક્ષમતા સાથે મેપ કરો.
  2. પહેલા ઉમેદવારનું શેડ્યૂલ કરતા પહેલાં લૂપ વ્યાખ્યા સામે identify_gaps() ચલાવો અને કોઈપણ આવરી ન લેવાયેલી ક્ષમતાનું નિરાકરણ કરો.
  3. દરેક રાઉન્ડ એવા ઇન્ટરવ્યૂઅરને સોંપો જેની ભૂમિકા મૂલ્યાંકન થતી ક્ષમતા સાથે મેળ ખાય (દા.ત., LLM ડીપ ડાઇવ માટે ML Lead, નહીં કે કોઈ યોગાનુયોગ ઉપલબ્ધ એન્જિનિયર).

શું ન કરવું

  1. બે રાઉન્ડને એક જ પ્રાથમિક ક્ષમતા શેર કરવા ન દો — ઓવરલેપ ઇન્ટરવ્યૂઅરનો સમય વેડફે છે અને કોઈ સંકેત ઉમેર્યા વગર લૂપની લંબાઈ વધારે છે.
  2. competency matrix અપડેટ કર્યા વગર કોઈ રાઉન્ડ ઉમેરશો નહીં; દસ્તાવેજ વગરના રાઉન્ડ્સ હાલના કવરેજની નકલ કરવા તરફ અથવા કશું માપી શકાય તેવું મૂલ્યાંકન ન કરવા તરફ સરકી જાય છે.
  3. રાઉન્ડ વજનને શોભાના ગણશો નહીં — દરેક રાઉન્ડને weight=1.0 પર છોડી દેવાથી અંતિમ નિર્ણયમાં કલ્ચર રાઉન્ડ AI સિસ્ટમ ડિઝાઇન રાઉન્ડ જેટલો જ ગણાય છે.

A hands-on lab comes with this lesson — real code, in a cloud IDE. Create a free account to run it. No card.

Free account · no card · straight to the lab

Or get the full path — from

Listen to this lesson

Audio overviews of this lesson's labs and its chapter, from GenBodha Bytes.

More free lessons in GenAI Engineering Leadership

All free lessons in GenAI Engineering Leader →