Ինչու՞ է քեզ անհրաժեշտ ղեկավար աշխատանքում: Ինչի համար?
Golang
Ինչպես է աշխատում հեշ աղյուսակը: Ի՞նչ է ներբեռնում և ընթերցման բարդությունը: Go-ում իրականացնելու առանձնահատկությունները։
Եթե պետք է ընտրես երկու ընկերություն կամ երկու թիմ, ինչին ուշադրություն դարձնես և ինչպես ընտրես?
Դու հասկանում ես, թե որ թիմում ուզում ես աշխատել։ Ինչպե՞ս պետք է լինի այն։
Կարո՞ղ է եղել, որ դուք երկար ժամանակ ինչ-որ բան եք արել, և ի վերջո այն չի եղել ներդրված կամ մերժվել է թղթապանակում։
Ինչքան հաճախ եք թիմում կատարում կոդի վերանայում?
Կոդի ճիշտ գործարկման համար՝ մուտքի կետը -- main փաթեթի main ֆունկցիան package main import ( "crypto/md5" "fmt" ) var alphabet = []rune{'a', 'b', 'c', 'd', '1', '2', '3'} func RecoverPassword(h []byte) string { return "" } func hashPassword(in string) []byte { h := md5.Sum([]byte(in)) return h[:] } func main() { tests := []string{"a", "12", "abc333d"} ok := true for _, exp := range tests { h := hashPassword(exp) act := RecoverPassword(h) if act != exp { fmt.Printf("Սխալ: սպասվում %q, ստացվում %q\n", exp, act) ok = false } } if ok { fmt.Println("Բոլոր թեստերը հաջողությամբ անցան") } }
Ի՞նչն է հիմա ավելի շատ ուզում՝ արտադրանքի կամ պլատֆորմային զարգացմանը:
Ի՞նչ է տարբերությունը գործընթացների, թելերի և goroutines-ների միջև Go-ում։
SELECT * c.id, -- ընտրեք բոլոր զրույցները (c.id, c.name) բոլոր օգտվողների համար անունով ($1) where text > 'abc'
Шарт 3 ұғым бар: пайдаланушы, чат, хабарлама • Пайдаланушының аты және тіркелу күні бар • Чаттың аты және құру күні бар • Хабарламаның мәтіні, авторы және құру күні бар • Пайдаланушы бір уақытта бірнеше чатта болуы мүмкін • Хабарлама міндетті түрде чатқа тиесілі болуы керек, ол бір уақытта бірнеше чатқа тиесілі бола алмайды • Ауданды кестелер түрінде сипаттау керек -- тарату -- message_count в чаттарда лимит 100 --getShard(time zone) -> shard_id -> 1 --getShard(time zone) -> shard_id -> 2 --shard1 [1..100] --shard2 [101..200] CREATE TABLE users ( id int PRIMARY KEY, name varchar(255) NOT NULL, reg_at TIMESTAMP NOT NULL DEFAULT NOW() ); CREATE TABLE chats ( id int PRIMARY KEY, name VARCHAR(255) NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT NOW(), message_count int NOT NULL CHECK <= 100 ); CREATE TABLE user_chats ( user_id int not null REFERENCES users(id), chat_id int NOT NULL REFERENCES chats(id), PRIMARY KEY (user_id, chat_id) ); CREATE TABLE messages ( id int PRIMARY KEY, chat_id int NOT NULL REFERENCES chats(id), author_id int NOT NULL REFERENCES users(id), created_at TIMESTAMP NOT NULL DEFAULT NOW(), text TEXT NOT NULL );
Ի՞նչ է HTTPS-ը: Ինչպե՞ս է այն տարբերվում HTTP-ից: Ինչպե՞ս է այն պաշտպանում 'մարդու միջնորդ' հարձակումից:
Ի՞նչ է շարդավորումը և ինչու է այն օգտագործվում: Ինչպես ընտրել շարդավորման բանալին տաքսի ծառայության աղյուսակների համար (վարորդներ, հաճախորդներ, պատվերներ):
Տվյալների բազաների կրկնօրինակումն ինչ է և ինչու է այն օգտագործվում: Ի՞նչ խնդիրներ կարող են առաջանալ։
Ընդհանուր առմամբ պատմիր նախագծի մասին — ինչ էր դա վերջնական օգտվողի համար?
Ինչպե՞ս սպանել պրոցեսը Linux-ում: Ինչ անել, եթե kill pid չի օգնում?
3 օբյեկտներ կան՝ օգտվող, զրույց, հաղորդագրություն • Օգտվողը ունի անուն և գրանցման ամսաթիվ • Զրույցը ունի անուն և ստեղծման ամսաթիվ • Հաղորդագրությունը ունի տեքստ, հեղինակ և ստեղծման ամսաթիվ • Օգտվողը կարող է միաժամանակ լինել մի քանի զրույցներում • Հաղորդագրությունը պարտադիր է պատկանում զրույցին և չի կարող պատկանում մի քանի զրույցների • Պետք է նկարագրել ոլորտը աղյուսակների տեսքով
Ինչ է EXPLAIN և EXPLAIN ANALYZE-ը PostgreSQL-ում, ինչ տարբերություն կա նրանց միջև?
Ի՞նչ է ռեյսային պայմանը (race condition) Go-ում: Տվեք օրինակ։
Ինչպես է աշխատում slice-ը Go-ում ներսից? Ինչպես է աշխատում append ֆունկցիան?