Sobes.tech

Каржылык күтүүлөрүңүз кандай? Минимум жана ыңгайлуу деңгээлди белгилеңиз.

Senior
РамблерРамблер
41

Кайчаганда жарамсыз билдирүүлөрдү өзүнчө темага которуп, аларды өндүрдүңүзбү же кандай? Мындай билдирүүлөр көп болдубу?

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

Грузияга көчүүгө даярсыңбы?

Senior
.wrk
41

Go-дөгү rune эмне?

Senior
техвил
41

Redis конфигурациясы кай сакталат, эгер алдаган машинада болсо?

Senior
Uzum
41

Иштеги танд канчалык маанилүү? Мааш талаптары?

Senior
X5
41

Make аркылуу алдын ала бөлүнгөн эс менен эң жакшы slice кантип түзүү керек? Неге алдын ала капаситетти көрсөтүү керек?

Senior
ClearWay
41

Бир датасы барбы?

Senior
Яндекс
41

Өзүңүздүн кесиптик тажрыйбаңыз жана иш издөөгө эмне үчүн чечим кабыл алгандыгыңыз жөнүндө айтып бериңиз.

Middle+
Защита Инфо Транс z-it
41

// Кодду туура кылуу үчүн, суроолор атаандаштыкташуулары керек жана жооп коду көрсөтүлүшү керек // жана ката болсо, аны логго жазып, иштетүүнү улантыңыз package main import "net/http" var addrs = []string{"[link]"} func main() { for _, url := range addrs { resp, err := http.Get(url) if err != nil { log.Error(err) continue } // Эгер керек болсо, resp менен иштөө } }

Senior
ИП Ганус Александр Андреевич
41

Элементти издөөнүн алгоритмин бинара издөөнүн дарагында мисал менен көрсөтүңүз (түйүн ачкычы менен салыштыруу, солго/оңго кыймыл).

Senior
МВидеоМВидео
41

HeadHunter webhook аркылуу жооп жөнөтө алат, ал эми Avito мындай кыла албайт — өзүңүз барып иштетишиңиз керек. Муну кантип иштетсе болот?

Senior
OZONOZON
41

Жаңы жумуш ордуңуздан эмне күтөсүз?

Senior
BetBoom
41

VACUUM FULLке альтернатива катары кандай билесиз, ал дагы орун бошотот, бирок катуу бөгөттөө жок?

Middle+
plata
41

Резюмеңдө Golangда 3 микросервиске коштуларың жазылган. Маалыматтарды нормалдаштыруу жана текшерүүдөн тышкары дагы эмне кылдың? Бул колдоо беле же өнүктүрүүбү?

Senior
wilix
41

Бардык сатуучулардын тизмесин жана гана блоктогон сатууучулардын тизмесин камткан таблица болсо, бир суроо менен блоктогон эмес сатууучулардын тизмесин кантип аласыз?

Middle
Aliexpress
41

Оптимисттик блоктоо деген эмне?

Senior
Lenta Tech
41

ClickHouse ба колонкалардын ортосундагы байланышты кантип табат?

Middle+
Магнум
41

Amazon Athenaда бөлүмдөш кандай негизде жасалды?

Middle
СБЕРСБЕР
41

пакет сактагыч импорт ( "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 } return p, nil } 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
41
/412