Γιατί χρειάζεσαι γενικά έναν διευθυντή στη δουλειά σου; Για ποιο λόγο;
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 );
Τι είναι η αναπαραγωγή βάσεων δεδομένων και ποιος είναι ο σκοπός της; Ποια προβλήματα μπορεί να προκύψουν;
Τι είναι το sharding και για ποιο λόγο χρησιμοποιείται; Πώς επιλέγουμε το κλειδί sharding για τους πίνακες μιας υπηρεσίας ταξί (οδηγοί, πελάτες, παραγγελίες);
Πώς σκοτώνουμε μια διαδικασία στο Linux; Τι να κάνετε αν το kill pid δεν βοηθά;
Τι είναι το HTTPS; Πώς διαφέρει από το HTTP; Πώς προστατεύει από την επίθεση 'άνθρωπος στη μέση';
Μίλησε γενικά για το έργο — τι ήταν για τον τελικό χρήστη;
Τι είναι το EXPLAIN και το EXPLAIN ANALYZE στο PostgreSQL, ποια είναι η διαφορά;
Πώς λειτουργεί εσωτερικά ένα slice στο Go; Πώς λειτουργεί η συνάρτηση append;
Είναι απαραίτητο να σχεδιαστεί η αρχιτεκτονική backend για έναν messenger (Slack, Teams, Mattermost). Απαιτήσεις και περιορισμοί: μόνο 1x1 συνομιλίες, χωρίς ομαδικές συνομιλίες μόνο κείμενο μηνύματα, χωρίς συνημμένα η υπηρεσία είναι διαθέσιμη μέσω διαδικτύου έως 10.000 χρήστες στο σύστημα τα μηνύματα πρέπει να παραδίδονται γρήγορα, σε λίγα δευτερόλεπτα η σειρά των μηνυμάτων πρέπει να διατηρείται, χωρίς διπλότυπα πρέπει να είναι δυνατή η κύλιση προς τα πίσω στο chat, δηλαδή η αποθήκευση μηνυμάτων οι πελάτες είναι κινητές συσκευές, δεν χρειάζεται να σχεδιαστούν η σχεδίαση της αυθεντικοποίησης δεν είναι απαραίτητη
Τι είναι μια κατάσταση αγώνα (race condition) στο Go; Δώστε ένα παράδειγμα.