2019-06-18
Как сделать следующий шаг, если его не делают за меня?
Продолжаем отвечать на вопросы:
Я сейчас мидл, и совершенно не представляю, как сделать следующий шаг в профессии. Грамотный код знаю, как писать, работаю с технологиями, но чувствую, что мне явно не хватает более "архитектурных" задач и широкого мышления. И должность архитектора, понятное дело, без опыта в данном направлении мне никто не даст. Собственно, вопрос, а как дальше развиваться, если у тебя нет таких практических задач, которые бы тебя развивали?
Начнём с того, что все эти джун-мидл-сениор и прочие лычки что-то могут значить лишь в рамках одной организации. Натурально один и тот же инженер может проходить как миддл, архитектор и сениор. Всё зависит от градации и традиций внутри компании. Так что если бы я был ленивым, то посоветовал бы тебе узнать у своего начальства, что же они подразумевают под сениор разработчиком. Возможно, это всего лишь гребец, который умеет с умным видом проходить собеседования у клиента, или умеет говорить по-немецки, чем приводит в восторг заказчика из Германии.
Тут, кстати, лишь доля шутки. Может твоя компания достаточно "взрослая", чтобы иметь четкие определения. Если таковых нет, то можно напрямую спросить у лида или менеджера. Они только рады будут рассказать тебе, что же они хотят от тебя.
Если же спросить не у кого, то придётся выкручиваться самому. Сениор разработчик, по "западной" классификации, это не гребец, у которого мозоли от двух лет за веслом, а сотрудник, способный решать задачи бизнеса. Не разжеванные задачки в джире типа "добавить кнопку 'лайк' на экран просмотра фотографии", а уровня "повысить вовлеченность пользователя". В первом случае справится обычный мидл, и сделает это хорошо и качественно. Во втором случае нужно будет подумать, посовещаться с соседними командами, нужно будет понимать домен и то, как и что делают пользователи. Нужна ответственность, нужна готовность принимать решения (или не принмать их, но завернуть их в А/Б тесты) Внезапно тут же пригождаются те самысе софт скиллы — как иначе ты будешь договариваться со всеми? Как будешь убеждать, как будешь выдавть работу менее расторопным коллегам?
Вот чтобы решать такие задачи, их нужно либо выдумать самостоятельно, либо найти в беклоге. Короче, нужна какая-то продукториентированность, а не только технологии и хороший код. Через некоторое время все заметят, что тебе можно просто сказать "вот у нас тут болит, посмотри, что можно сделать", а там уже и официальная лычка подойдёт. А "архитектурные" задачи к этому приложатся, не переживай.
В общем, будь активнее, придумывай себе задачи, смотри на продукт и пытайся понять, что можно сделать лучше и отвечай на вопрос "а почему, кому и на сколько это будет лучше?"