Смекни!
smekni.com

Профессия программист (стр. 2 из 3)

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

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

Автоматизация нужна повсеместно. Кассиры в магазине пробивают чеки с помощью сканера штрихкодов, настроенного на ассортимент этого магазина и на его бухгалтерские документы. На заводе информация о каждой детали тоже поступает в бухгалтерскую программу напрямую со станка. В стоматологической клинике ваша карта ведется в электронном виде; во многих западных и в некоторых наших медицинских лабораториях обработка анализов производится автоматически, без участия человека. Бухгалтеры работают с системами R-keeper, 1C, SAP-R3, автоматизирующими их труд.

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

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

Должностные обязанности

Аналитик в основном общается с командой разработки и с заказчиком (проект может быть и сторонним, и внутренним). Он собирает сведения и у заказчиков, и у предполагаемых пользователей продукта и описывает это для команды разработки в понятных для нее терминах. Отвечает на вопрос: что надо сделать? Именно аналитик занимается наиболее соответствующей специальности деятельностью.

Программист - член команды разработки. Отвечает на вопрос: как надо сделать? Получает информацию либо напрямую от заказчика и пользователей (если проект совсем маленький и не предполагает аналитиков), либо от аналитика и из документов, которые тот подготовил. После этого он создает программу.

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

Менеджер проектов зачастую совмещает роль аналитика проекта и обязанности по управлению проектом - распределение задач, контроль над их выполнением, помощь команде в сложных ситуациях и обеспечение дружественной инфраструктуры (комфортных условий и наличия всех необходимых программ).

Дополнительные требования

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

Для этой работы нужны и хорошо развитые коммуникативные способности. Одно из основных умений - умение доказать и показать, что всё хорошо придумано. Очень сложно доказать клиенту, что он неправ. А еще сложнее признать потом, что именно клиент был прав, потому что «идеальный» сценарий не работает.

Но есть и еще более важное умение - умение признать клиента основным носителем знаний в его предметной области. Увы, очень часто специалист додумывает за клиента, что тому якобы нужно, а потом клиент удивляется: сделано даже то, о чем не просили. Впрочем, бывает, что клиент и сам не знает, чего он хочет. Либо формулирует свои пожелания неточно и невнимательно, поскольку просто не понимает, что же еще надо объяснить: для него-то всё очевидно.

Работая на стыке областей знаний, вы зачастую будете посредником между узкими специалистами выбранной предметной области и специалистами техническими. И именно от вас зависит, найдут ли они общий язык, обретут ли они общее видение ситуации и единую точку зрения на решаемую задачу. Если вы создаете систему для коммерческой компании, то больше полугода вы будете объяснять остальным прикладникам, «а что такое дебет и кредит», «а как мне рассчитать вот этот коэффициент, который указан в документе». И объяснять как можно проще. А потом будете многократно растолковывать пользователям, «а когда нажимать на эту кнопку», и возражать на выпады типа «разве это сложно - добавить новый отчет? Он ведь почти такой же, как другой отчет».

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

Базовые знания

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

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

И хорошо бы уметь играть в шахматы - это разовьет логическое мышление.

Выбор вуза и учеба

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

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

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

Необходимо постоянно учиться новому

Прикладник учится всегда. А учиться нужно процессам производства программ и технологий, изучать и сами новые технологии, используемые в конкретном проекте, осваивать новые области приложения знаний, постигать по-другому поставленные бизнес-процессы. Результата в обучении надо достигать очень быстро - и так же быстро переключаться между разными знаниями, которые уже есть. За то время, пока вы студенты, будут придуманы новые алгоритмы проектирования процессов, новые способы автоматизации, новые программы для документирования - всё станет по-новому.

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

Однако еще только-только окончив вуз, вы уже окажетесь на одном уровне со многими коллегами в своей отрасли.

Программист: с компьютером на ты

Работные сайты перегружены вакансиями для программистов. Зарплата в $1000 сегодня считается минимальной…

Сфера информационных технологий (IT) в России развивается стремительно: темпы роста составляют 25% в год – это выше, чем в Европе и США. Российские вузы ежегодно выпускают до 100 тысяч программистов, и все равно спрос превышает предложение. Дефицит специалистов испытывает не только Россия. Профессионалов приглашают в иностранные фирмы (в частности США) для так называемого оффшорного программирования – работы под заказ зарубежных компаний. Российский специалист в такой фирме может получать $3-4 тыс. в месяц.

Вперед – в разработчики!

Самые высокооплачиваемые программисты – разработчики новых операционных систем, приложений и программ (MS Office, Adobe Photoshop и т. п.). Этим занимаются специалисты высшей квалификации таких иностранных фирм-производителей, как Microsoft, Sun, Oracle, Adobe и др. В отечественных компаниях подобные проекты редкость, пользователи устанавливают на свои ПК в основном западные продукты. Отдельные российские фирмы-разработчики программного обеспечения существуют, но их немного (например, «Лаборатория Касперского», которая выпускает антивирусные программы). Созданием программ занимаются и государственные структуры: НИИ и конструкторские бюро военно-промышленного комплекса, космонавтики, но зарплаты здесь несопоставимы с зарплатами в коммерческих организациях.