Texnik intervyu — ko'pchilik dasturchilar uchun eng qo'rqinchli narsa. Lekin aslida u shunchaki "siz haqingizda ko'proq bilib olish" jarayoni. Qanday tayyorgarlik ko'rish va nimalarga e'tibor berish kerakligi haqida aniq gaplashamiz.
Intervyu qanday bo'ladi
Junior darajadagi intervyular odatda 3 bosqichdan iborat:
1. HR suhbat (10-20 daqiqa)
— Nima uchun shu kompaniyada ishlashni xohlaysiz?
— Qachondan boshlab ishlashingiz mumkin?
2. Texnik savol-javob (30-60 daqiqa)
— Nazariy savollar
— Kichik coding task (masala yechish)
3. Loyiha ko'rish / portfolio tekshirish
— O'z loyihalaringizni tushuntirish
Python uchun eng ko'p so'raladigan savollar
# 1. List va tuple farqi?
ro_yxat = [1, 2, 3] # o'zgaruvchan (mutable)
juft = (1, 2, 3) # o'zgarmas (immutable)
ro_yxat[0] = 10 # ishlaydi
# juft[0] = 10 # xato!
# 2. == va is farqi?
a = [1, 2, 3]
b = [1, 2, 3]
c = a
print(a == b) # True — qiymatlar teng
print(a is b) # False — turli ob'ektlar
print(a is c) # True — bir xil ob'ekt
# 3. *args va **kwargs
def funksiya(*args, **kwargs):
print(args) # tuple: (1, 2, 3)
print(kwargs) # dict: {'ism': 'Ali'}
funksiya(1, 2, 3, ism="Ali")
Coding task — qanday yondashish kerak
Ko'pincha shunday masalalar beriladi:
# Masala: berilgan ro'yxatdan takrorlanganlarni olib tashlang
# 1-usul: set bilan (tartibi saqlanmaydi)
def takror_emas_1(ro_yxat):
return list(set(ro_yxat))
# 2-usul: tartibni saqlab
def takror_emas_2(ro_yxat):
korilganlar = set()
natija = []
for element in ro_yxat:
if element not in korilganlar:
natija.append(element)
korilganlar.add(element)
return natija
print(takror_emas_1([1, 2, 2, 3, 1, 4])) # [1, 2, 3, 4] (tartib farq qilishi mumkin)
print(takror_emas_2([1, 2, 2, 3, 1, 4])) # [1, 2, 3, 4] (tartib saqlanadi)
Masala yechishda ovoz chiqarib fikrlang — "avval buni qilaman, keyin..." deb tushuntiring. Intervyu o'tkazuvchi faqat natijani emas, qanday o'ylashingizni ko'rmoqchi.
Ko'p uchraydigan xatolar
Xato 1: "Bilmayman" deb jimib qolish. Buning o'rniga: "Hozir to'liq esimda yo'q, lekin taxminan shunday deb o'ylayman..." deng.
Xato 2: Savol so'ramaslik. Masala berilsa, avval "men to'g'ri tushundimmi?" deb tasdiqlang.
Xato 3: Kodni test qilmaslik. Yozgandan keyin biror misol bilan o'zingiz tekshiring.
Maslahat: leetcode.com'dagi "Easy" darajadagi masalalardan haftasiga 3-4 tasini yeching. Maqsad tez yechish emas — har xil yondashuvlarni o'rganish.
+1
+0
+0
+0
+0
+0
+0