Golang
// GetUsersList atgriež lietotāju sarakstu. (datu bāzē tiek glabāti aptuveni 1 miljons lietotāju) // Izmanto lietotāju saraksta rādīšanai administrācijas panelī. Ja isActive = true, tiek atgriezti tikai aktīvie lietotāji. func (u *UsersRepo) GetUsersList(ctx context.Context, isActive bool) ([]User, error) { rows, err := u.DB.Query("SELECT id, name, phone FROM users WHERE is_active = ?", isActive) if err != nil { return nil, errors.New("kļūda, iegūstot lietotāju sarakstu") } var users []User // Aizpildiet informāciju par lietotājiem. for rows.Next() { var user User err := rows.Scan(&user.ID, &user.Name, &user.Phone) if err != nil { return nil, err } // Iegūstiet lietotāja e-pasta sarakstu err, err := u.DB.QueryContext(ctx, "SELECT email FROM user_emails WHERE user_id = ?", user.ID) if err != nil { return nil, errors.New("kļūda, iegūstot lietotāju sarakstu") } var emails []string for er.Next() { var email string err := rows.Scan(&email) if err != nil { return nil, err } emails = append(emails, email) } if len(emails) != 0 { for i, e := range emails { e = strings.ToLower(e) emails[i] = e } } user.Emails = emails // Iegūstiet profila informāciju no VK API profile, err := getUserProfileFromVkApiByUserPhone(user.Phone) if err != nil { return nil, errors.New("kļūda, iegūstot lietotāju sarakstu") } user.Profile = profile users = append(users, user) } if err = rows.Err(); err != nil { return nil, errors.New("kļūda, iegūstot lietotāju sarakstu") } }
Vai esat iepazinies ar vakances aprakstu?
Kāda ir atšķirība starp HTTP un HTTPS?
Kāda ir atšķirība starp GET un POST?
Lūdzu, pastāsti, kur šobrīd strādā un ko dari.
Vai jums ir pieredze ar moderniem frontend ietvara (Vue, React, Svelte)? Kas ir reaktivitate un kā tā tiek īstenota React?
Kā plānotājs pārtrauc gorutīnu, kas ieiet bezgalīgā ciklā?
Ko tu gaidi no komandas / vadītāja? Ko viņš ir jāizdara, kā palīdzēt?
Pastāsti par buferētajiem un nebuferētajiem kanāliem. Kad mēs tos izmantojam? Kā tie bloķējas un kad notiek deadlock?
Pastāstiet par savu pieredzi [uzņēmums].
Kāpēc jūs izdarījāt tieši tik daudz pakalpojumu? Kā notika izvēle — veidot pakalpojumu vai nē?
Vai mūsu maksājumu webhook pakalpojums ir stateful?
Vai esat nodarbojies ar mašīnmācību?
Pastāsti par transakcijām PostgreSQL. Kas ir ACID un izolācijas līmeņi?
Piedāvājums: 320k bruto (~280k neto) + ceturkšņa prēmija 20%. Kā jums šķiet šie nosacījumi?
Kas tev ir svarīgs, izvēloties jaunu darba vietu?
Kā tika filtrēti dublikāti? Vai nebija iespējams noteikt dublikātu pēc ID? Kāpēc papildināt datus no Redis?
Vai tev būs nepieciešams divu nedēļu apmācība?
Jūs esat rakstnieks, pārvaldāt savu mini blogu un tur publicējat rakstus. Jūsu bloga lietotāji (lasītāji), pēc autorizācijas, var tos apskatīt/lasīt. Nepieciešams ieviest funkcionalitāti, kas skaita unikālos skatījumus dienā katram rakstam. Funkcionālie prasības: - Šodienas statistika: autors var redzēt, cik unikālo lietotāju ir skatījuši viņa rakstu šodien (dati tiek vākti reāllaikā). - Iepriekšējo dienu statistika: autors var redzēt statistiku par jebkuru iepriekšējo dienu (piemēram, vakar). Tehniskie ierobežojumi un nosacījumi: - Lietojumprogramma darbojas uz viena servera (viens pods) - Atmiņas glabāšana - Laiks UTC0
Ar kurām datu bāzēm esat strādājis un kādā līmenī? Vairāk par PostgreSQL, Redis, ClickHouse.