Что должен знать/уметь senior backend developer?
Как я вижу это со своей позиции джуниора:
Навскидку:
1) Подробная экспертиза технологий, относящихся к предметной области проекта и его целевых платформ. Ведь senior не только должен круто разрабатывать на тех или иных технологиях - он, собственно, и определяет, какие технологии будут использоваться на проекте с учетом многих факторов.
2) Полное снятие технологических рисков. Это, в общем, вытекает из первого. Senior всегда может предвидеть возможные проблемы еще до начала разработки проекта и подробно донести это в доходчивой форме заказчику/руководству.
3) Умение эффективно ставить задачи разработчикам своей команды. По сути, умение руководить.
4) Умение эффективно делиться богатым опытом с членами своего коллектива. То есть быть мудрым и чутким наставником для младших коллег.
Думается, настоящие senior-разработчики идут от 10-12 лет опыта работы.
Вот была статья на хабре про план развития, он конечно упрощен, но с определенной точкой допущений сделает из тебя мидла. Так вот сеньйор это мидл который стал управленцем. Поэтому все знания мидла + управления людьми, бизнесом и тд. Должен начинать понимать как всем этим рулить и как общаться с программистами непосредственно. Следующий уровень(во многих кампаниях де факто или де юре это он и есть) - CTO.