Anong mga tanong sa .NET interview ang dapat kong asahan?

Ni Aaron Cao · Na-update noong

Anong mga tanong sa .NET interview ang dapat kong asahan?
Asahan ang mga tanong tungkol sa runtime (CLR, garbage collection, value type kumpara sa reference type), wika (async at await, LINQ, generics, records), framework (ASP.NET Core middleware at dependency injection, EF Core), at mga scenario gaya ng memory leak sa matagal na tumatakbong serbisyo o mabagal na API endpoint. Ang pangangatwiran ang sinusuri ng mga interviewer.

Asahan ang mga tanong tungkol sa runtime (CLR, garbage collection, value type kumpara sa reference type), wika (async at await, LINQ, generics, records), framework (ASP.NET Core middleware at dependency injection, EF Core), at mga scenario gaya ng memory leak sa matagal na tumatakbong serbisyo o mabagal na API endpoint. Ang pangangatwiran ang sinusuri ng mga interviewer.

Anong mga tanong sa runtime at wika ang pambungad sa .NET interview?

Nagsisimula ang mga interviewer kung saan nagsisimula ang framework: sa runtime. Asahang ipaliwanag kung ano ang ginagawa ng Common Language Runtime (pag-load ng mga assembly, just-in-time compilation ng intermediate language, pamamahala ng memory), pagkatapos ay talakayin nang mas malalim ang garbage collection. Madaling hulaan ang sunod-sunod na follow-up: bakit generational ang collector, ano ang dahilan upang manatili ang isang object hanggang sa susunod na generation, para saan ang large object heap, at bakit umiiral pa ang IDisposable at using kung pinamamahalaan naman ang memory. Sagutin ang huli sa pamamagitan ng pagbanggit sa mga unmanaged resource gaya ng mga file handle at koneksyon, na hindi alam ng collector kung paano agad i-release.

  • Mga value type at reference type. Kung saan nananatili ang bawat isa, ano ang ibig sabihin ng pagkopya sa bawat isa, at ang halaga ng boxing sa performance.
  • async at await. Ipaliwanag na pinapalaya ng hinihintay na task ang tumatawag na thread sa halip na i-block ito, kung bakit nakalaan ang async void para sa mga event handler, at kung anong deadlock ang tinutukoy kapag nagbababala ang mga tao tungkol sa .Result.
  • LINQ. Ang deferred execution ang bitag: tumatakbo ang isang IEnumerable query kapag ini-enumerate, hindi kapag isinusulat, at ang query laban sa isang database provider ay isinasalin lamang sa SQL para sa mga expression na nauunawaan ng provider.
  • Generics, interfaces, at records. Mga constraint, kung bakit mas mainam ang mga interface kaysa base class para sa testability, at kung ano ang pakinabang ng value equality ng isang record.

Sagutin ang bawat isa gamit ang mekanismo at isang bunga nito. Ang pagsasabing mura ang generation-zero collection dahil karamihan sa mga object ay maagang nawawala ang antas na nais ng mga interviewer; hindi sapat ang pagbanggit lamang sa mga generation nang walang dahilan.

Ano ang anyo ng mga tanong tungkol sa ASP.NET Core at EF Core?

Kumpiyansa kang gumawa ng mga controller ngunit nag-aalalang tungkol sa plumbing na bihira mong galawin ang mga tanong. Makatuwiran ang pag-aalalang iyon dahil dito pumapasok ang mga tanong tungkol sa framework, kaya narito ang plumbing sa karaniwang pagkakasunod-sunod ng pagtatanong, kasama ang follow-up ng bawat isa.

  • Ang request pipeline. Tumatakbo ang middleware ayon sa pagkakasunod-sunod ng pagkaka-register nito, at bawat component ang nagpapasya kung tatawagin ang susunod. Follow-up: saan nakapuwesto ang authentication kaugnay ng authorization, at ano ang mangyayari kung pabaligtad ang pagkaka-register mo sa mga ito?
  • Mga lifetime ng dependency injection. Ang singleton ay nabubuhay habang tumatakbo ang application, ang scoped ay para sa isang request, at ang transient ay nililikha tuwing nire-resolve ito. Ang klasikong bitag ay ang pag-inject ng scoped service, gaya ng database context, sa isang singleton; maging handang ipaliwanag kung bakit bug iyon.
  • Configuration at options. Mga layered source, environment override, at options pattern para sa typed settings.
  • EF Core. Change tracking at kung kailan ito io-off para sa mga read-only query, ang N+1 problem at kung paano ito naiiwasan ng eager loading o projection, mga migration, at ang makatotohanang punto kung kailan mas mahusay sa LINQ ang query na manu-manong isinulat.
  • Testing. Kung paano ginagawang testable ng mga interface at DI container ang isang serbisyo, at kung ano ang napapatunayan at hindi napapatunayan ng isang in-memory provider tungkol sa tunay na database.

Pinag-uugnay ng pinakamahuhusay na kandidato ang mga ito: ang scoped context na ni-resolve sa loob ng singleton background service ay hindi tanong na trivia; isa itong bug sa memory at correctness na aktuwal nang naipadala ng mga interviewer, at gusto nilang marinig na tahasan kang gagawa ng scope.

Paano isinasagawa ang mga scenario question?

Sa mga senior loop, inilalahad ang isang sintomas at sinusubaybayan ang paraan mo. Isang karaniwang halimbawa: sinabihan ang isang backend engineer na nag-i-interview para sa senior role sa isang logistics company na patuloy na tumataas nang ilang araw ang paggamit ng memory ng isang ASP.NET Core API hanggang sa mag-restart ang container. Hindi nanghuhula ang mahusay na sagot. Itinatanong nito kung ano ang nagbago, sinusuri kung may mga object na nahuli ng static cache o matagal na event subscription, naghahanap ng mga scoped service na hawak ng mga singleton, iniinspeksiyon ang paglaki ng large object heap, at kumukuha ng memory snapshot bago magmungkahi ng pag-aayos. Ang pagkakasunod-sunod ng imbestigasyon ang sinusuri ng interviewer.

Iba pang nauulit na scenario: endpoint na bumabagal lamang kapag mataas ang load, kung saan lilipat ang sagot mula sa synchronous database call patungo sa async, pagkaubos ng connection pool, at caching; race condition sa shared collection at ang halaga ng concurrent collection at mga opsyon sa locking; request na kailangang tumawag sa tatlong downstream service at kung paano mo haharapin ang mga timeout, retry, at partial failure; at migration na kailangang magdagdag ng column nang walang downtime. Sa bawat kaso, sabihin ang constraint, pumili ng mekanismo, at banggitin nang malakas ang trade-off.

Mas madali ang mga ito kapag naensayo mo nang malakas at may mga follow-up, na siyang layunin ng mode na mock interview; ang iba pang koleksiyon ayon sa wika at tungkulin ay nasa mga tanong sa interview ayon sa tungkulin at paksa.

Makakatulong ba ang AI interview assistant sa mga tanong sa .NET?

Sa mga conversational round, oo, sa loob ng mga itinakdang limitasyon. Kinukuha ng native macOS at Windows desktop app ng SubcueAI ang system audio at mikropono mo at nagpapakita ng maiikling mungkahing sagot sa isang local overlay, kaya kapag tinanong ng interviewer kung bakit bug ang scoped context sa loob ng singleton, nasa screen mo ang mekanismo habang ipinapaliwanag mo ito sa sarili mong mga salita. Sinasaklaw ng browser extension ang mga tawag sa browser tab sa Chrome at Edge sa pamamagitan ng pagkuha lamang sa audio ng meeting tab. Walang bot na sumasali sa tawag at walang ini-inject sa meeting page; nasa pahina ng tutorial ang pag-setup.

Ang mga limitasyon: hindi saklaw ang proctored assessment, naka-record na screen, laptop na pinamamahalaan ng kumpanya, o live coding exercise kung saan nagta-type ka ng C# habang inoobserbahan, at pinakamahina ang assistant sa mismong bahagi kung saan hinihingi sa iyong magsulat ng code. Pinakamalakas ito sa mga tanong sa runtime, framework, at trade-off sa itaas. Ibigay muna rito ang iyong resume upang sumalamin ang mga mungkahi sa mga system na aktuwal mong ginawa; nasa resume builder ang profile na iyon.

FAQ

Bakit may mga generation ang .NET garbage collector?

Maagang nawawala ang karamihan sa mga object, kaya nababawi ng madalas at murang pagkolekta sa pinakabagong generation ang malaking bahagi ng memory nang hindi sinusuri ang buong heap. Ang mga object na nananatili ay inililipat pataas at mas madalang na kinokolekta, kaya maikli ang mga paghinto sa karaniwang allocation pattern.

Ano ang pagkakaiba ng singleton, scoped, at transient sa ASP.NET Core?

Ang singleton ay nililikha nang minsan para sa application, ang scoped nang minsan sa bawat request, at ang transient tuwing nire-resolve ito. Kapag nag-inject ng scoped service sa singleton, mananatili itong nakatali sa buong lifetime ng application, na karaniwang bug sa mga database context.

Ano talaga ang ginagawa ng await?

Nire-register nito ang natitirang bahagi ng method bilang continuation at ibinabalik ang control sa caller, kaya malaya ang thread habang kinukumpleto ang hinihintay na trabaho. Ang pag-block sa isang task gamit ang .Result o .Wait ay maaaring magdulot ng deadlock sa mga context na kailangang muling gamitin ang thread na iyon.

Ano ang N+1 problem sa EF Core?

Ito ay ang pag-load ng listahan ng mga parent at pagkatapos ay pagpapatakbo ng hiwalay na query para sa bawat parent upang kunin ang mga child nito. Ginagawa itong isa o dalawang query ng eager loading gamit ang Include, o ng projection sa mga field lamang na kailangan mo.

Makakatulong ba ang SubcueAI sa isang proctored .NET coding test?

Hindi. Hindi saklaw ang mga proctored at recorded assessment, at sarili mong gawain ang live coding habang inoobserbahan. Para ito sa mga conversational round, at sa mock interview mode ka maaaring magsanay bago ang mga iyon.

Kaugnay na tanong

← Higit pa sa Mga Tanong sa Interview ayon sa Role at Paksa