Sobes.tech

Каналдар мен горутинмен жұмыс жасағанда қандай үлгілерді білесіз? Fan-in, fan-out және басқа туралы айта аласыз ба?

Middle+
X5
30

Соңғы жұмыс орныңызда команда қалай ұйымдастырылды, неше адам болды және сіз қандай нақты лауазымда болдыңыз?

Senior
AvitoAvito
30

Практикаңызда орналастыру кезінде қандай қиындықтарға тап болдыңыз?

Senior
Магнит Тех
30

Неліктен ағымдағы жұмыс орнынан кетуді шештіңіз?

Middle
OZONOZON
30

gRPC туралы айтыңыз: неге таңдайды, артықшылықтары, шектеулері.

Senior
А7
30

gRPC HTTP үстінде жұмыс істей ме, жоқ па? Ол қалай жұмыс істейді?

Senior
OZONOZON
30

Go тілінде слайс дегеніміз не? Ол массивтен қалай ерекшеленеді? Слайсты функцияға өткізіп, оның элементтерін өзгерткен кезде не болады?

Senior
2gis2gis
30

Amazon Athena-да бөлу қандай негізде жасалды?

Middle
СБЕРСБЕР
30

Логиканы сервиске ауыстырғанда қол жетімділікті тексеру мен тапсырысты жасау қалай атомды түрде жүзеге асырылады?

Senior
2gis2gis
30

Неліктен жұмыс орнын ауыстыруды қарастырып отырсыз?

Middle+
ООО Макс
30

SQL тапсырмасы: 2025 жылдың қаңтарында жалпы мөлшері 50-ден асатын клиенттердің Customer ID, Customer Name, Customer City-ін шығаратын сұрау жазу.

Middle+
СБЕРСБЕР
30

Терезе жарамды болған кезде жауапқа не қосылады?

Senior
Яндекс
30

storage import ( "database/sql" "errors" "fmt" "time" "github.com/company/my-service/internal/event" "github.com/company/my-service/internal/metric" ) type Partner struct { ID string `db:"id" json:"id"` Balance float32 `db:"balance" json:"balance"` Hold float32 `db:"hold" json:"hold"` } type PayoutRepository struct { db sql.DB eventPublisher event.Publisher metricCollector metric.Collector totalPayouts int } func NewPayoutRepository() *PayoutRepository { db, err := sql.Open("postgres", "host=localhost user=postgres password=postgres dbname=affiliate") if err != nil { panic(err) } r := PayoutRepository{ db: db, eventPublisher: event.NewKafkaPublisher("localhost:9092"), metricCollector: metric.NewPrometheusCollector("localhost:9090"), } go func() { for range time.Tick(time.Minute) { _ = r.metricCollector.Send("TotalPayouts", r.totalPayouts) } }() return r } func (r *PayoutRepository) Payout(advertiserID, partnerID string, amount float32) error { advertiser, err := r.find(advertiserID) if err != nil { return err } partner, err := r.find(partnerID) if err != nil { return err } advertiser.Balance -= amount partner.Hold -= amount partner.Balance += amount if err := r.save(advertiser); err != nil { return err } if err := r.save(partner); err != nil { return err } r.totalPayouts++ return nil } func (r *PayoutRepository) find(id string) (Partner, error) { p := Partner{} err := r.db.QueryRow("SELECT * FROM partners WHERE id = " + id).Scan(&p) if err != nil { if err == sql.ErrNoRows { return p, errors.New("partner not found")} } return p, err } func (r *PayoutRepository) save(p Partner) error { _, err := r.db.Exec( fmt.Sprintf("UPDATE partners SET balance = %s, hold = %s WHERE id = %s", p.Balance, p.Hold, p.ID), ) if err != nil { return err } if err := r.eventPublisher.Publish("BalanceChanged", p); err != nil { return err } return nil }

Senior
Pasul LTD
30

sync пакеті не?

Middle+
МВидео/эльдорадо
30

Логистикалық және операциялық деректерді өңдеу үшін корпоративтік платформа логистикалық маршруттарды құру және есептеу ме?

Senior
МВидео/эльдорадо
30

Жүктеуді кім жүзеге асырады — әзірлеушілер ме, әлде DevOps па?

Middle+
КуперКупер
30

FastestSearcher функциясын бірлік тесттері арқылы қалай сынау керек?

Senior
Магнит Тех
30

API Gateway дегеніміз не және ол не үшін қажет?

Senior
Магнит Тех
30

Неліктен сұраулар ұзақ уақыт жұмыс істейді? Өткен айда қанша жол таңдалды?

Middle
Магнум
30

Кітап атауы бойынша іздеу үшін қай индекс қолдану керек?

Middle
СитиДрайвСитиДрайв
30
/374