30 марта 2011
Как оценить свой профессионализм?
- написал: mister_dump
- 71
- 0
Статья больше имеет характер большого вопроса. Все мы знаем народную мудрость — «Век живи, век учись», но сколько можно учиться программированию, с какого момента человек может считать себя профессионалом? Senior developer? Junior developer? Как выйти из статуса «начинающий» или «любитель»?Есть одна статья по этому поводу, которая якобы отвечает на все эти вопросы, но не совсем так. В статье нет четких границ между профессионалом и хорошим любителем своего дела. Бывает сила любви к своему хобби превышает все ожидания и не каждый профессионал угонится за таким, но, всё равно, профессионал остается профессионалом, а любитель — любителем. Где границы?
Предлагаю некоторые критерии оценок, на сколько они весомы в оценке профессионализма программиста?
Длинные строчки в резюме о навыках и знаний технологий.
Профессионал: C/C++, C#, asp.net, ajax, mvc, mfc, php, perl, mysql, ms sql server 2k/5/8, oracle 10/11g, sql, t/sql, pl/sql, javascript, html, css
Любитель: c#, asp.net или php, javascript
Работа в команде.
Профессионал, считается командным игроком, отлично разбирается в службах контроля версий, участвует в совместных проектах, сборках с другими участниками. Хотя не факт, что разбирается, как правило деталь в большом механизме отвечает только за малую его долю, но свою долю знает на все 100%.
Любитель — как правило одиночка, реже собираются в двоём, но это не мешает ему также изучать различные СВН, пробовать и пользоваться. Знает полный механизм разработки с нуля до внедрения, он же менеджер, он же кодер, он же служба поддержки.
Знание синтаксиса языка, правил программирования
Профессионал: пишет строго по правилам, любой профессионал взглянув на его творчество без труда продолжит писать с того места, где закончил предыдущий. Все комментарии на месте и полны, методы, классы, переменные придерживаются чёткому регламенту. Все понятно и просто, нет хардкода, нет говнокода.
Любитель: пишет по своим правилам, если любитель с опытом, то и у него сложились свои правила оформления кода, свои наименования, свой стиль комментариев. Хорошо, если любитель смотрел книги по правилам оформления синтаксиса кода, например .net, тогда его код будет малость схож с профессионалом. Но это все условно и в каждой конторе могут быть свои правила.
Сложные алгоритмы
Профессионал должен уметь написать такой алгоритм, который будет затрачивать меньше ресурсов. Код оптимизирован и занимает мало строчек. У профессионала не бывает, что медленно работает.
Любитель, чаще, не ставит перед собой такую задачу, его основная цель — направленность на конечного клиента, на результат. «Пузырьковый» метод поиска — это все, что ему нужно, остальное по мере надобности и желания. Медленно работает — давай посмотрим почему.
Место работы
Профессионал работает в специализированной IT конторе, где с утра до вечера перед его глазами код. У него много времени на изучение литературы, подтягивание других методов поиска и многого другого.
Любитель работает менеджером по продаже канцтоваров. Приходя домой он начинает заниматься программированием, и не факт что каждый день. Любитель сам выбирает, какую тему ему изучить сегодня и на сколько глубокие знания ему потребуются в новом начинании.
Деньги
Профессионал запрашивает хорошие деньги. Наверно он знает, что он профессионал, а не любитель в it-конторе, который только набирается опыта.
Любитель просит мало, он не уверен что его качество выполнения сравнимо с профессиональным, поэтому дает денежную поблажку, хотя, вполне возможно, этот профессионализм зачастую совсем не востребован.
Опыт
Профессионал с трёх лет занимается программированием, он еще под стол ходил, но уже писал на бейсики. Но этот профессионал может работать над одним проектом многие месяцы, есть ли в этом развитие, не превращается ли он в опытного любителя?
Любитель занимается программированием всего год или два. Его глубина знаний зависит от требований заказчика или своих поставленных задач. Возможно они шире, чем у профессионала, но не глубже.
Так по каким критериям можно различить профа от любителя, и всегда ли проф это лучше, чем любитель. Может проф слишком много знает для нацеливания на конечного пользователя, не уйдет ли он в вечную оптимизацию своего кода, когда как любитель выдаст результат через считанные дни.
В какой момент любитель переходит в ранг профессионала, если все то, что делает проф, он делает в свободное от основной работы время. Те же знания, те же проекты, те же алгоритмы.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.
Комментарии:0