Sobes.tech

Ποια χαρακτηριστικά των υπαλλήλων βοηθούν στην οικοδόμηση μιας αποτελεσματικής και αρμονικής ομάδας;

Junior — Middle
147

Μπορείς να εξηγήσεις πώς λειτουργεί το next();

146

Πώς μπορείτε να προσδιορίσετε τον αριθμό των συμμετεχόντων στην προηγούμενη ομάδα σας;

Junior — Middle
146

Ο υποψήφιος ζητά να εξηγήσει τη προτεινόμενη λύση (γιατί πρέπει να συγκρίνουμε τα προϊόντα των ελάχιστων και μέγιστων ζευγών).

144

Πότε ήταν η τελευταία φορά που λύσατε αλγοριθμικά προβλήματα για πρακτική ή έργα;

Junior — Middle
142

Μπορείς να αξιολογήσεις τη δυσκολία αυτής της λύσης (σε χρόνο και μνήμη); Και γιατί η πολυπλοκότητα δεν είναι O(n^2);

142

Πώς υλοποιείται ένας απλός μηχανισμός κλειδώματος (lock) στη μνήμη για προστασία από ανταγωνιστική πρόσβαση χωρίς τη χρήση εξωτερικών εξαρτήσεων;

142

# ΑΤΜ που φορτώνεται με κασέτες με χαρτονομίσματα, με την εφαρμογή μας στο πλοίο # πρέπει να μπορεί να εκδίδει χαρτονομίσματα για το καθορισμένο ποσό ή να απαντά με άρνηση # Κατά την έκδοση, τα χαρτονομίσματα αφαιρούνται από το υπόλοιπο του ΑΤΜ. # Επιτρεπτές ονομασίες: 50€, 100€, 500€, 1000€, 5000€. class ATM: pass # χώρος για κώδικα # Συσκευή του ΑΤΜ: # - τα χρήματα βρίσκονται σε κασέτες μέσα στο ΑΤΜ, φορτώνονται από τον επιθεωρητή και ξαναφορτώνονται; # - σε κάθε κασέτα υπάρχουν χαρτονομίσματα της δικής της ονομαστικής αξίας; # - το ΑΤΜ μπορεί να μετρήσει τα υπόλοιπα χαρτονομίσματα στις κασέτες, αλλά αυτή η λειτουργία διαρκεί πολύ - πρέπει να καλείται όσο το δυνατόν λιγότερο. # API για αλληλεπίδραση με τον εξοπλισμό του ΑΤΜ. # η διεπαφή SDK μπορεί να τροποποιηθεί/επεκταθεί με συμφωνία των μερών, αν χρειάζεται class SDK(ABC): @abstractmethod def count_banknotes(self, banknote: int) -> int: pass @abstractmethod def move_banknote_to_dispenser(self, banknote: int, count: int) -> None: pass @abstractmethod def open_dispenser(self) -> None: pass

141

Ποιο ήταν το μέγιστο μέγεθος δεδομένων που αποθηκεύσατε ή επεξεργαστήκατε ποτέ στην πρακτική σας;

Junior — Middle
141

Έχετε εμπειρία στην υποστήριξη ή την ανάπτυξη κατανεμημένων συστημάτων;

141

class ATM(SKD): def __init__(self, atm_api: "SKD"): self.atm_api: SKD = atm_api self.bills_count: dict[int:int] = {bill: self.atm_api.count_banknotes(bill) for bill in BILLS} def withdraw(self, amount: int) -> bool: bills_plan: dict[int: int] = {} remaining = amount for bill in BILLS: available = self.bills_count[bill] take = min(remaining // bill, available) if take > 0: bills_plan[bill] = take remaining -= take * bill if remaining != 0: return False bills_count_const = {50: 0, 100: 2, 500: 0, 1000: 0, ...}, expected = True @pytest.mark.parametrize( "bills_count_const,expected", [ ({5000: 0, 1000: 0, 500: 0, 100: 0, 50: 0}, False), ({5000: 100, 1000: 100, 500: 100, 100: 100, 50: 100}, True), ({5000: 1, 1000: 0, 500: 0, 100: 2, 50: 0}, True) ] ) def test_false(bills_count_const, expected): atm = ATM(FakeSDK()) atm.bills_count = bills_count_const amount = 1000 res = atm.withdraw(amount) assert res == expected

141

Έχετε εμπειρία στη δημιουργία και συντήρηση συστημάτων που βασίζονται σε κατανεμημένες αρχιτεκτονικές;

Junior — Middle
140

# OneEditApart("γάτα", "σκύλος") -> ψευδές # OneEditApart("γάτα", "γάτες") -> αληθές # OneEditApart("γάτα", "κόψιμο") -> αληθές # OneEditApart("γάτα", "κάστρο") -> αληθές # OneEditApart("γάτα", "σε") -> αληθές # OneEditApart("γάτα", "ενέργειες") -> ψευδές def OneEditApart(s1, s2) -> bool:

140

Σε ποιες χώρες εξετάζετε επιλογές εργασίας ή συνεργασίας;

Junior — Middle
139

Σε ποιο στάδιο βρίσκεται αυτήν τη στιγμή η αναζήτησή σας για εργασία ή έργο;

Junior — Middle
137

```python from collections import Counter def min_s(a: str, s: str) -> str: need = set(a) window = Counter() res = "" c = 0 left = 0 best_len = float('inf') for right, char in enumerate(s): if char in need and \ window[char] += 1 if window[char] == 1: c += 1 while c == len(need): if right - left + 1 < best_len: res = s[left:right + 1] best_len = right - left + 1 if s[left] in need: window[s[left]] -= 1 if window[s[left]] == 0: c -= 1 left += 1 return res ```

136

Ο συνεντευκτής διευκρινίζει αν ο υποψήφιος βλέπει την προϋπόθεση της εργασίας.

133

Έχετε εμπειρία στην ανάπτυξη frontend;

Junior — Middle
130

Πώς θα παρουσίαζαμε ένα γράφο που χρειαζόμαστε για αυτήν την εργασία και πώς θα παίρναμε την απάντηση (διαδρομή) από αυτόν;

130
/5