7 советов для профессионального роста программиста

Третья часть нашей трилогии о золотой семерке - поговорим о том, что нужно программисту для гармоничного профессионального роста.
24 апреля 201563Geek Brains207071387

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

1. Регулярная практика программирования

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

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

2. Культура программирования

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

3. Храбрость

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

4. Вера в свои силы

Иногда возникает настолько сложная проблема, что руки опускаются. Просто непонятно, что дальше делать. Не паникуйте, а порадуйтесь возможности решить сложную задачу, обогатив свой опыт. Посмотрите на ситуацию аналитически. Создайте прототип проблемы и постепенно приближайте его к самой проблеме. Например, недавно мы с коллегой мучились, пытаясь скомпилировать огромную старую систему, использующую кучу сторонних компонент на древнем компиляторе. В итоге возникала ошибка линковщика, которая не говорила нам решительно ни о чем. Мы создали новый пустой проект и постепенно стали добавлять туда модули злосчастной программы. Так мы смогли локализовать ошибку. Ну, а когда знаешь, в чем именно проблема, - решить ее становится значительно проще!

Верьте в свои силы. Человек умнее машины! 

5. Быть в авангарде

ИТ развиваются быстро и замедляться не планируют. Можно писать замечательные консольные программы на Паскале, но только вряд ли они найдут благодарных пользователей. Все потому, что средства разработки совершенствуются постоянно. Та область, в которой сегодня Вы пионер, завтра будет использоваться повсеместно. То, что сегодня используется миллионами, завтра станет вчерашним днем, "legacy", "deprecated". Нужно постоянно держать руку на пульсе, чтобы в один прекрасный день не оказаться за бортом парохода современности.

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

6. Английский язык

Без этого никуда. Пока все новое в сфере как программирования, так и ИТ в целом идет к нам с Запада. Самая лучшая документация, самые полезные форумы, самые интересные блоги всегда были и будут на английском языке. В ИТ индустрии английский давным-давно завоевал полное господство и перемен не предвидится. Техническую документацию придется читать любому программисту. Впрочем, нет никакой необходимости доводить свой английский до Upper Intermediate. Достаточно знать столько, сколько необходимо для работы. Программист обязан уметь читать по-английски. Говорить и писать не так критично, хотя и крайне желательно, но читать обязан.

7. Книги "must read"

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

Безусловно, прочтение такой литературы поднимает Вас, как специалиста, на новую ступень. Хороших книг много, но эти просто жемчужина литературы:

  • "Искусство программирования", Дональд Э. Кнут
  • "Объектно-ориентированный анализ и проектирование", Гради Буч
  • "Совершенный код", Стив Макконел
  • "Мифический человеко-месяц", Хилл Чапел, Фредерик Брукс
  • "Приемы объктно-ориентированного проектирования. Паттерны проектирования", Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссилес

А что читаете Вы? 

Тем, кто хочет стать программистом, рекомендуем профессию «Веб-разработчик».

Новые комментарии