Golang
A startup sajátosságairól: nem mindig világos a feladatok meghatározása, néha homályos, kezdeményezésre és önállóságra van szükség, a terhelés lehet egyenetlen. Hogyan érzi magát ebben?
Hogyan hasonlítjuk össze a térképen lévő elemeket? Hogyan ellenőrizzük, hogy két térkép egyezik-e?
Mesélj a moderációs/orkesztáló rendszer tervezéséről — hogyan tervezték, milyen döntéseket hoztak?
Milyen jó gyakorlatok és antipatternek vannak az egységtesztelésben? Hogyan lehet felismerni, hogy a tesztek jók?
Skálázási feladat: a B szolgáltatás növekvő terhelést tapasztal az A szolgáltatástól. Mit lehet tenni?
Mesélj egy érdekes feladatról a múltbeli tapasztalatodból. Mit csináltál a cégnél?
Adott egy karakterlánc. Találd meg az i és j indexpárok számát (i <= j), amelyek között, beleértve, nincsenek ismétlődő karakterek. A "aba" karakterlánc esetén a válasz 5: [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") A "abcb" karakterlánc esetén a válasz ?: aba 3 + 2 = 5 abcb 4 (a, b, c, d) + 1 (ab) + 1 (bc) + 1 (cb) + 1 (abc) = 8
Miért problémás sok operációs rendszer szálat létrehozni? Miért van szükség ütemezőre a Go felhasználói térben futó környezetében?
Használhatunk egy oszlopot a SELECT-ben, ha nem csoportosítjuk GROUP BY-ban?
Ha a felhasználók elégedetlenek a monetizációs modell változása miatt, de a vállalkozásnak világos terve van — mit tegyen?
// Két rendezett nem csökkenő sorrendben lévő egész számokból álló sorozat van. // Vissza kell adni az első sorozat összes olyan elemét, amelyek nem szerepelnek a másodikban. // 0 <= N <= 10^6 // -10^9 <= a[i] <= 10^9 // [1] // [2, 3, 4, 5, 6] // [1] // [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, ...] // [1] // [2, 3, 4, 5, 6, 7, 8] func filter(first []int, second []int) []int { res := make([]int, 0, len(first)) i, j := 0, 0 for i < len(first) && j < len(second) { if first[i] < second[j] { result = append(result, first[i]) i++ } else if first[i] > second[j] { j++ } else { i++ j++ } } for i < len(first) { result = append(result, first[i]) i++ } return result }
Milyen állapotai vannak egy goroutine-nak?
Milyen zárolásokat hoz létre a PostgreSQL adott sorok törlésekor?
Lehet összehasonlítani két tömb vagy lista szeletet egymással?
Miért váltottál a(z) [cég] cégről a(z) [cég] cégre?
Mesélj a Go nyelvű szeletekkel való munkáról: hogyan működik a capacity és a length, mi történik, ha túlléped a határokat?
Hogyan kerülnek a feladatok a munkába? Mesélj erről a folyamatról.
Mesélj a korábbi projektről (Cloud.ru): milyen projekt volt, mivel foglalkoztál?
Mi a különbség a DROP és a TRUNCATE között?
Felelősségi körzet pontosítása: állapotgép, Transactional Outbox, optimista zárolások