Знания здесь не помогут: почему вы до сих пор не сеньор и кто такие разработчики высшего уровня

Оленка Пилипчак

Как только кто-то попадает в IT, он, как правило, начинает мечтать об уровне сеньора. Большинство инженеров, по крайней мере, тех, кто не стремится стать владельцем бизнеса, считают это вершиной успеха. Но иногда кажется, что невозможно логически объяснить, почему кого называют «сеньор».

Фулстек-разработчик Рэй Эпс считает, что на самом деле это не совсем так. После 11 лет работы в этой области он получил опыт работы с инженерами всех уровней. И может сказать следующее: ваш уровень — это сочетание ваших знаний и опыта. 

Передаем ему слово.

Знания и опыт

Объясню свое мнение более подробно: ваши знания и ваш опыт — это две стороны одной монеты.

Знания означают, что вы знаете, как что-нибудь сделать. А вот опыт — это знать, что что-то делать НЕ надо.

Знания можно получить разными способами: это информация, которую вы изучаете. Опыт вы приобретаете только тогда, когда что-то делаете неправильно, ошибаетесь или терпите поражение. 

Некоторые удивительные люди обладают способностью учиться на чужих ошибках. Обычно инженеры так не умеют, но если вы способны на такое — вы обладаете уникальной суперсилой. 

Итак, сегодня ваш первый официальный день работы в должности инженера-программиста: у вас ноль опыта и огромный запас знаний. Возможно, вы получили их в университете, или (как в моем случае) из YouTube. Вы — джуниор, потому что у вас слишком много знаний, если сравнивать с вашим опытом.

Звучит так, будто это плохо? Но это так и есть. 

Есть немного знаний, но нет опыта

Джуниор считает, что он прав. Но он ошибается и не замечает этого, потому что у него нет опыта. Если у вас есть опыт (опять же, это ошибки и неудачи), вы будете помнить, что ошибки возможны. Но в первые дни работы часто даже не задумываешься над тем, что некоторые вещи нужно проверять, чтобы не сбиться с верного пути. 

Это не критика, я сам был на вашем месте. Я помню, как я стоял в небольшой комнате для встреч с маркером в руке перед доской. Я спорил так, будто от этого зависела моя жизнь. Я был на 100% убежден, что пользователи должны иметь возможность выбирать имя пользователя и что система развалится, если их заставят использовать свою электронную почту для входа.

Мой коллега Дэйв, который был сеньором, позволил мне сделать так, как я предлагал. В нашем случае это было не слишком удачное решение. И Дэйв это предвидел, он пытался меня предупредить, но я не хотел слушать. В процессе работы над проектом он объяснил мне все нюансы. 

Конечно, я пожалел об этом решении, но получил опыт. Теперь я хорошо понимаю, какие проблемы могут возникнуть, если вы хотите создать систему аккаунтов на основе имени пользователя. 

Такая система необязательно будет проблемной.

Но ценность опыта заключается не в том, что вы изменили свое мнение на противоположное, а в том, что научились предполагать, что можете ошибаться. Никто не становится сеньором только потому, что делает что-то без ошибок. 

Намного позже, когда я спорил, я вспоминал ту доску, Дэйва и то, как я безосновательно верил в свою идею. Это заставляет меня сомневаться и анализировать, не совершаю ли я снова какую-то ошибку.

Больше опыта

Быть посередине — это неуютно. Это второе место напоминает вам, что вы еще не достигли вершины. Но в то же время это важный этап: у вас достаточно опыта, чтобы сомневаться в том, что вы изучили. 

Больше знаний, но еще находится в процессе получения опыта

Вы поймете, что вы мидл, когда будете знать ответ, но все равно будете искать альтернативные решения. Когда вы спорите, вы готовы слушать оппонента и не ведете себя так, как будто у вас пытаются забрать что-то очень ценное.

Больше опыта, чем знаний

Вы становитесь сеньором, когда ваш опыт превышает ваши знания. На этом этапе вы, скорее всего, легко признаете, что не правы. Вы учитесь в процессе работы, на своих ошибках и неудачах, а не на видео в YouTube или публикациях в блогах. 

Важно отдавать себе отчет в следующем: IT-сфера — это безграничное количество информации, которую можно изучать и усваивать. Но ваши знания и опыт ограничены, они не касаются всей отрасли. 

Наконец опыта немного больше, чем знаний

Я фулстек-разработчик. Я знаком с облаками, API-дизайном, разработкой интерфейса JavaScript и другими вещами, которые можно ожидать от веб-разработчиков. В этих темах у меня много знаний и опыта. Но если бы я решил присоединиться к команде программистов в SpaceX и писать код на C, который загружается в микропроцессор на сервоприводе, контролирующий угол наклона ракеты… Тут мой богатый опыт ничего бы не стоил.

Дело в том, что сеньор не должен быть специалистом по любому вопросу. Помните об этом, если вы только начинаете и думаете, стоит ли вам уходить в одну сферу или пытаться охватить как можно больше.

Можно быть настоящим фулстек-инженером и прекрасно разбираться как во фронте, так и бэкенде. Но для этого вам понадобится много лет работы.

Гораздо больше опыта, чем знаний

В последние несколько лет я утверждал, что должно быть звание выше сеньор-инженера. По моему опыту это звание не потолок для человека, работающего над кодом. Я видел инженеров, работающих на совсем другом уровне, и могу утверждать, что недавно присоединился к ним.

Я всегда занимался кодом, но в последние четыре года был техническим руководителем (на разных должностях и титулах) и руководил сеньор-инженерами. Я понял, что все время быть правым невозможно: где-то вы все равно будете ошибаться.

Проблема в том, что все меняется: бизнес, потребности клиентов, рынки, продукты, команды инженеров и их опыт. Все это означает, что то, что мы создаем как инженеры, непостоянно.

Это другой уровень реализации, требующий много опыта для осознания. Выбор AWS Lambda вместо GCP Cloud Run в качестве инфраструктуры не будет правильным выбором, если AWS обанкротится десять лет спустя. Есть вещи, которые находятся вне вашего контроля и которые вы не можете предусмотреть.

Как инженер наивысшего уровня вы определяете вещи, которыми можете управлять и строить на них свое программное обеспечение. Все остальное — это внешние факторы, и ваша система должна быть способна быстро и легко подстроиться под их изменения. 

Смысл всего этого

Иногда вы ошибаетесь, но иногда правы. Не все идеи, дизайны, решения или реализации одинаковы. Некоторые решения лучше других.

Знание — это педаль газа, которая двигает вас вперед в споре. На вашей стороне есть факты, примеры кода, статьи, лучшие практики и целый раздел из книги Мартина ФаулераАвтор ряда книг и статей по архитектуре ПО, объектно-ориентированному анализу и разработке, языку UML, рефакторингу, экстремальному программированию, предметно-ориентированным языкам программирования.

Опыт — это перерыв, спасательный круг, чтобы замедлить и прекратить спор. Воспоминания о предыдущих ошибках и здоровом страхе, что ваше решение не сработает, позволяют вам рассмотреть альтернативную точку зрения.

«Если вы не можете аргументировать обе стороны проблемы, вы недостаточно хорошо понимаете проблему» (GBlink’s Dad).

Иногда вы правы, тогда настаивайте. От вашей настойчивости может зависеть судьба проекта или компании. Иногда вы ошибаетесь. И вы не сможете это осознать, если все, что у вас есть — это знания, подталкивающие вас к спору.

Как конкретно оценивать чьи-то знания и опыт? Я еще не уверен в ответе. Я просто знаю, что это путь.

Автор: Рэй Эпс

Перевела Евгения Козловская

Читайте также: Виртуозный кодер и крутой ментор: 7 признаков настоящего сеньора

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023