Профессиональная самооценка

Один из неловких моментов: человек считает себя senior’ом, а ты по итогам считаешь, что он в лучшем случае серединка middle, и вот надо как-то это обосновать. Неудобно всё это, травмирующе для обеих сторон. Лучше, когда человек оценивает себя адекватно, актуально, объективно. Чтобы после десяти «не знаю» и «не помню» не собеседующего странным считал, но задумался о повышении квалификации.
Сузим контекст. Пусть Java (язык), JDK (библиотеки), JVM (виртуальная машина). Как джависту понять, на каком уровне он всё это знает?

Во-первых, сертификация. У Oracle три уровня: Associate (junior), Professional (middle), Master (senior). Попробуйте их сдать. Как вариант, можно купить mock certification у Enthuware и потренироваться. Или осилить книги вроде OCA: Oracle Certified Associate Java SE 8 Programmer I Study Guide: Exam 1Z0-808 или OCA Java SE 8 Programmer I Certification Guide. После чтения задуматься: да, обо всём этом спрашивают и всё это считается нужным для подтверждения уровня. Если вы не согласны и можете несогласие аргументированно оформить в текст, напишите в Oracle. Быть может, к вам прислушаются.
Слышал мнение, что никто сертификацию не сдаёт, никому не надо и т.п. Так вот, количество сертифицированных приближается к миллиону. Последнюю статистику нагуглить не удалось, но вот текст от Oracle времён семёрки: Java Programmer Certification: Java SE 7 Certified Programmers И да, работодатели тоже с интересом смотрят на сертификат.

Во-вторых, собеседования. Если вы являетесь senior’ом, для вас не составит труда за несколько месяцев пройти senior собеседования в top 20 работодателей. Вроде бы мороки много, но уверяю, оно того стоит. Сначала может оказаться больно и обидно, но после здравого размышления всё становится на свои места. И, грубо говоря, либо 20 человек признают ваш уровень, либо вы спуститесь на землю. Ну или затаите обиду непризнанного гения, что тоже бывает.
В top надо идти потому, что у них есть выбор, а вокруг десятки разработчиков, с которыми можно сравнить. И если местные senior’ы среди ночи легко ответят на вопрос «как выглядит integer underflow в Java», сам собою формируется некоторый стандарт уровня. Вы не можете на подобное отвечать? Окей, возможно, вы и senior, но не нашей мануфактуры.

В-третьих, актуальные учебники. Ну т.е. вот лично мне персонально индивидуально кажется странным, когда специалист, декларирующий знание языка, плавает уже в букварных темах, но знаю, есть считающие это нормальным. Каждому своё, конечно, а всё же рекомендую память подновлять. Открываете. Читаете. Чем больше «ого», «ух ты» и «вона как», тем больше «мда» в голове вас собеседующего.
Сюда же включите ознакомление с профильными курсами топовых вузов США. Они регулярно обновляются, ну и качеством выше отечественных. Сравните их требования знаний студента с вашими требованиями к себе.

В-четвёртых, конференции. Их полезно смотреть и слушать. Умные люди отбирают доклады умных людей, чтобы умные люди послушали. Послушайте и вы. После каждого доклада говорите вслух: «озвученная тема не нужна, не интересна, никто не использует, да что за бред вообще, это не надо знать». Чем менее смешной вам будет казаться эта фраза, тем дальше вы от senior Java, например.
Понимаю, тот ещё показатель. Но умиляет же, когда Шипилёв, например, собирает сотни слушателей, зал впитывает, статьи пишутся, софт делается, а потом мимоидущий senior expert guru Java developer роняет, шо то никому не надо. В общем, на этом оселке тоже не мешает после всего остального сверить себя с внешним миром.

В-пятых, определение. Подумайте и последовательно сформулируйте собственные определения senior, middle и junior. Именно в таком порядке. Опишите обязательные знания и умения уровней. Только честно и злобно. Словно перед вами сто кандидатов, надо нанять двоих и от этих двоих зависит, выйдет ваш бизнес на IPO завтра или через год. Сделали? Ожидаемо примените к себе. Всё хорошо? Теперь то же объективно примените ко всем своим знакомым разработчикам. Откалибруйте шкалу, попробуйте посмотреть на каждого через оценку его знаний в каждой области. И снова примеряйте к себе.
Надеюсь, что вы определили уровни не через скорость гугления неизвестного. И здорово, если вам хватило мудрости не определять через «о, я не умею в рекурсию, значит, настоящим senior’ам рекурсия не нужна».

Всё это я в какой-то степени прошёл. Разве что собеседований мне хватило и трёх, чтобы понять, что после двухлетнего перерыва был самоуверенным бревном, а не Java senior’ом. Правда, сейчас тоже вряд ли потяну полновоенное собеседование, ведь есть ещё Spring, Hibernate, NoSQL, RDBMS, алгоритмы, Linux, сети… Да-да, всё то, что вы обязательно нагуглите, если вдруг понадобится. ^_^

Добавить комментарий