Technical Foundation and Self Assessment Questions
Covers baseline technical knowledge and the candidate's ability to honestly assess and communicate their technical strengths and weaknesses. Topics include fundamental infrastructure and networking concepts, operating system and protocol basics, core development and platform concepts relevant to the role, and the candidate's candid self evaluation of their depth in specific technologies. Interviewers use this to calibrate how technical the candidate is expected to be, identify areas for growth, and ensure alignment of expectations between product and engineering for collaboration.
Sample Answer
Sample Answer
Sample Answer
Sample Answer
import numpy as np
from typing import Iterator, Tuple
def minibatch_generator(X: np.ndarray,
y: np.ndarray,
batch_size: int = 32,
shuffle: bool = True,
drop_last: bool = False) -> Iterator[Tuple[np.ndarray, np.ndarray]]:
"""
Yields (X_batch, y_batch) tuples.
- X, y: arrays with same first dimension n
- batch_size: size of each minibatch
- shuffle: whether to shuffle indices each epoch
- drop_last: if True, drop final smaller batch
"""
if X.shape[0] != y.shape[0]:
raise ValueError("X and y must have the same number of samples")
n = X.shape[0]
indices = np.arange(n)
while True: # infinite generator; caller typically breaks after desired epochs
if shuffle:
np.random.shuffle(indices)
for start in range(0, n, batch_size):
end = start + batch_size
if end > n and drop_last:
break
batch_idx = indices[start:end]
yield np.take(X, batch_idx, axis=0), np.take(y, batch_idx, axis=0)Sample Answer
Unlock Full Question Bank
Get access to hundreds of Technical Foundation and Self Assessment interview questions and detailed answers.
Sign in to ContinueJoin thousands of developers preparing for their dream job.