Ответ
Senior Developer – опытный разработчик, глубоко разбирающийся в технологиях, архитектуре и best practices. Пишет качественный код, решает сложные задачи, может наставлять джунов и мидлов.
Tech Lead (техлид) – отвечает за техническую сторону проекта: архитектуру, выбор технологий, код-ревью. Часто совмещает техническую и управленческую роли, но фокус на решении технических проблем.
Team Lead (тимлид) – управляет командой: планирование, распределение задач, мотивация, коммуникация с другими отделами. Технические навыки важны, но приоритет – менеджмент и процессы.
Пример:
// Senior: напишет эффективный алгоритм
func OptimizedSearch(data []int, target int) int { ... }
// Tech Lead: выберет между sync.Map и обычным map + мьютексом
// Team Lead: организует процесс внедрения этого решения в проект