Среда
18.06.2025, 03:54
logo
Приветствую Вас Гость | RSS
Главная Регистрация Вход
Меню сайта

Обновления DrWeb

Официальный сайт DrWeb

Обновления Windows

Зарница



Инструменты

 AVZ



+ к Вашей защите!


Emsisoft Anti-Malware Download

Emsisoft Anti-Malware Order Information

Тестируем скорость


Статистика
Яндекс.Метрика


Онлайн всего: 1
Гостей: 1
Пользователей: 0

Обменники


Главная » 2012 » Март » 20 » Советы себе в прошлом! Для программистов, начинающих и не только ...
20:14
Советы себе в прошлом! Для программистов, начинающих и не только ...
22884723450988.jpg (300×400)
У меня очень мало опыта (суммарно программистом я проработал 16 месяцев), тем не менее, я хотел бы дать несколько советов себе-в-прошлом, ну, или иными словами всем тем, кто сейчас учится в университете и планирует стать разработчиком ПО. Ни в коей мере не претендую на мудрость или опытность. Немного подумав, я понял, что все эти советы как никогда актуальны для меня и сегодня тоже. Первую заметку я опубликовал в своем блоге в прошлом году, а сейчас публикую здесь список, расширенный советами читателей блога.

Все советы автономны и их порядок не имеет значения.


Какой язык должен знать любой разработчик? Не, не Си и не Джаву. Английский. Учите английский, и не только технический, но и разговорный.

Программируйте. Программируйте. Программируйте. Менеджеры той компании, где я работаю, придерживаются мнения, что резюме программиста это github. Конечно, это лишь выражение, смысл в том, что от программиста в первую очередь ожидают код, а потом – оценки, рекомендации и сертификаты. Программируйте. Опыт важнее оценок и точка. Если работодатель настаивает на обратном, то подумайте дважды, перед тем, как устраиваться к нему на работу.

Познакомьтесь с UNIX. Установка Убунту и компиляция ядра – это не знакомство с UNIX. Почитайте о том инженерном и научном фундаменте который лежит в основе философии UNIX. Не обязательно становится крутым сисадмином и поднимать десяток серверов, лучше просто привыкните к принципам работы и UNIX way.

Математика – это главное. Не смотря на сугубую потребительскую направленность многих софтверных компаний, фундаментальные науки остаются основой всего.

Задавайте вопросы. Естественно, если не нашли ответ в гугле. Соответственно, не задавайте вопросы, на которые может ответить гугл. Сайт StackOverflow – ваш лучший друг. Задавайте вопросы в интернете, среди друзей, учителей, коллег. Глупый вопрос лучше незнания.

Познакомьтесь с системами контроля версий. Хотя бы с основными – SVN, Git, Mercurial. Откройте репозиторий на своей машине и используйте его для домашних заданий и собственных проектов.

Познакомьтесь с современными инструментами разработки. Зачастую в университетах не уделяют внимания средам разработки и другим программам и утилитам, необходимым для полноценной работы. Многие IDE бесплатны, попробуйте Eclipse, NetBeans, Emacs, XCode, привыкните к принципам работы, найдите удобный для вас инструмент.

Научитесь пользоваться отладчиком. Это настолько критично, что совершенно непонятно, почему университеты уделяют этому так мало внимания.

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

Познакомьтесь с шаблонами (паттернами) проектирования. Про это уже сто раз говорили, но я повторюсь. Здесь вы не отвертитесь и применить хотя бы пару основных паттернов где-нибудь просто обязаны. Достаньте свой телефон и взгляните на первую попавшуюся программу: представьте, как можно к ее разработке применить какой-нибудь паттерн.

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

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

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

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

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

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

Не забывайте о принципе Парето. 20 процентов усилий дают 80 процентов результата. Это, естественно, не правило, но вполне очевидная тенденция.

Прочтите классику: Code CompleteThe Pragmatic ProgrammerThe Practice of ProgrammingDesign Patterns.

Учитесь планировать. Те же университетские задания – оцените, сколько у вас уйдет времени, а по окончании проанализируйте работу. Делайте это постоянно и для разных типов работы. Разработчик, который выполняет работу вовремя намного ценнее разработчика, который иногда выполняет работу быстрее других. И не волнуйтесь, если так и не научитесь чётко оценивать объем будущей работы – этого никто не умеет делать :-)

Расставляйте приоритеты. Еще один совет в от Капитана Очевидность. Вкупе с предыдущим советом можно в разы повысить эффективность.

Не зацикливайтесь на обеспеченности работой. Не работайте против своей воли только потому что сейчас и здесь платят деньги. Лучший способ обезопасить свою карьеру – постоянно развиваться и работать с удовольствием.

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

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

Просмотров: 494 | Добавил: СанСаныч | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Ссылки


Календарь
«  Март 2012  »
Пн Вт Ср Чт Пт Сб Вс
   1234
567891011
12131415161718
19202122232425
262728293031

Праздники
Праздники России

Погода на завтра

О вирусах

Радио On-Line

Мини-чат
200

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Поиск

    Архив записей


    Copyright MyCorp © 2025