Data Analyst
Quelle est la différence entre l'opérateur WHERE et l'opérateur HAVING?
Quelle est la complexité asymptotique de la solution proposée en termes de temps et de mémoire?
Parlez-moi un peu de vous, de votre expérience, des points clés
Quelle information comprend la préparation d'une présentation pour la haute direction?
Sous quelle forme décriviez-vous le contrat API ? De quelles sections était composée la spécification ?
Parle-moi de tes projets avec vib-coding et l'utilisation de LLM
Explique la logique de la résolution du problème sum_series : comment construire la somme de deux séries temporelles par étapes ?
As-tu de l'expérience en modélisation financière ou opérationnelle?
Qu'est-ce que le 95e percentile?
Comment avez-vous traité la saisonnalité et les influences externes dans les séries temporelles?
Avez-vous travaillé avec des fonctions de fenêtre ? Lesquelles connaissez-vous ?
Comment mettre en œuvre une base de connaissances pour LLM si le volume de données dépasse la fenêtre de contexte ? Qu'est-ce qu'une fenêtre de contexte ?
Que peut-on et ne peut-on pas faire lors de la conception d'une API pour préserver la compatibilité rétroactive?
Comment utilises-tu les LLM ? Raconte comment fonctionnent les agents.
// Nous avons une méthode pour obtenir des informations sur les produits, cette méthode est appelée très fréquemment // y a-t-il des problèmes dans ce code et comment les corriger ? base de données postgress func (r *ProductRepository) GetProductDetails(ctx context.Context, productIDs []int) []Product { products := make([]Product, 0, len(productIDs)) for _, id := range productIDs { go func(id int) { var p Product query := "SELECT name, price, description FROM products WHERE id = $1" err := r.db.QueryRowContext(ctx, query, id).Scan(&p.Name, &p.Price, &p.Desc) if err != nil { r.logger.Error("error get product", "err", err) return } products = append(products, p) }(id) } return products }
func (r *OrderRepository) GetActiveOrderIDs(ctx context.Context, offset, limit int) ([]uint32, error) { var ( res []uint32 args []interface{} ) query := `SELECT id FROM "order" WHERE is_terminated = false LIMIT $1 OFFSET $2;` args = append(args, limit, offset) rows, err := r.slave.Query(ctx, query, args...) if err != nil { return nil, err } for rows.Next() { var orderID uint32 if err = rows.Scan(&orderID); err != nil { return nil, err } res = append(res, orderID) } return res, nil }
Parlez du processus de travail d'un analyste commercial dans votre équipe et de votre expérience
Tâche SQL : calculer la conversion par groupes d'expériences (exp_id=90) de l'événement Epic Match Start à Epic Fight Win par utilisateurs, avec une attribution correcte des événements à l'expérience via une jointure temporelle.
Quelle métrique North Star choisir pour le covoiturage ?
Où dans la vie réelle trouve-t-on une distribution normale et où ne l'est-on pas ? Donnez des exemples concrets avec une explication de pourquoi les données sont normalement distribuées ou non.