пятница, 20 февраля 2009 г.

Кто есть кто в мире IT. Часть 8.

Мои мысли о тенденциях развития ИТ в России

О типах компаний я расписал подробно и дал рекомендации по выбору компании. Следует еще поговорить о специализации. Чем именно заниматься: САПР, интернет, АСУ ТП или чем-то другим? Начну с резких выпадов в сторону излишнего увлечения модными технологиями. Тут будет много эмоций, т.к. испытывать эти модные "штучки" приходилось на собственной шкуре. В 99% опыт был весьма разочаровывающим.

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

При всем моем уважении к известным личностям в ИТ-тусовке, позволю себе еще раз сказать про SaaS, SOA, cloud computing и прочее: я не скажу за весь мир, но в сегодняшней России им места нет. При охмуривании заказчиков лучше этих слов не говорить: будет непонимание (мы же до этого жили как-то- зачем нам это сейчас?), хмурые брови (подозрение, что хотят обмануть). Сергей Орлик тут прав: http://sorlik.blogspot.com/2009/01/service-oriented-enterprise.html. Прав в том, что не надо пугать клиентов такими словами.

Да, к нам на завод, на склад приходили внедренцы-агитаторы, которые пытались внедрять 1С, Oracle Forms и много еще чего- уж и позабыл что именно. Обычно все упиралось в то, что они не могли ответить на вопрос: "Что у вас есть такого, что у нас еще не внедрено, и нам это очень-очень надо внедрить?" Практика показывает, что запуск нового бизнес-процесса занимает 1-2 месяца. При такой скорости разработки любые внедренцы будут постоянно в роли догоняющих, а фиксировать функционал и ждать когда они его реализуют- бизнесу этот вариант не подходит. А красивые слова о высоких технологиях, масштабируемости, перспективах разбивались о конкретные факты. Мне ни разу не пришлось столкнуться с тем, чтобы возможностей классической клиент-серверной технологии работы с БД "не хватало". А я работал с многогигабайтными БД, которые не особых "напрягов" держали около 300 активных, подчеркиваю- активных, пользователей. На них вертелись очень сложные хранимые процедуры (мягко даже сказал про сложные- умопомрачительные). И это был Interbase, MS SQL Server. Ни тебе тяжеловесного Oracle, ни тебе трехзвенки и прочих изощрений. Отчетная форма в Fast Report вообще клепалась за полдня, позволяя не только распечатать отчет, но и экспортировать в MS Excel, MS Word, HTML. Пересылка данных филиалам, получение данных от партнеров и поставщиков в электронном виде- все это реализовывалось тривиально, через электронную почту. Никаких проблем- все работает, а процесс разработки несложен и быстр. А теперь прикиньте, много ли у нас в стране предприятий, где наберется 1000 пользователей или 300 активных подключений? Считанные единицы. И там вполне подойдут решения на базе трехзвенки. Все это- проверенные временем технологии: надежные, отработанные, с прекрасно развитым инструментарием. А экспериментировать на себе, и внедрять нечто сырое и непонятно на решение каких проблем направленное, никто не хочет.

К чему я разразился этой террадой про несостоятельность новомодных технологий? Активное их продвижение "замусоривает" мозги начинающих программистов, и они много времени тратят на поиски того, чем им стоит заняться. Эта ситуация сравнима с положением в ВУЗах: ради денег открываются наборы на новые специальности с громкими названиями, типа, "Микротехника", "Нанотехнологии". Звучит красиво, и подкупает перспективностью: "Вот окончу ВУЗ, и, как раз, нанотехнологии будут на подъеме, и я стану дорогим, востребованным специалистом". Проходит 2-3 года, студент осознает, что с таким дипломом он 100% по специальности нигде не устроится. И раскошеливаются его родители на дополнительное обучение в вечернем ВУЗе, но уже на вполне реальную земную специальность юриста, программиста 1С, бухгалтера. А спрашивается, почему сразу было не подумать, и не направить ребенка, с замусоренными мозгами, на обучение, пусть и не модным, но актуальным сегодня и завтра специальностями?

Но, если не SaaS и прочая мода, то, чем же заниматься, если хочется стать программистом? Было бы неправильно просто сказать: "Идите все, занимайтесь 1С!" Кроме этого замечательного продукта есть еще много областей ИТ, где можно и зарабатывать хорошо, и задачи решать интересные. Чем, например, плоха игровая индустрия? Поэтому, важно в целом дать правильное представление о положении в ИТ, что уже позволит самостоятельно сделать выбор.

Самый большой сегмент ИТ- это автоматизация внутренней деятельности предприятия. Еще иногда это называют, хоть и не всегда верно, АСУ ТП (автоматизация систем управления технологическими процессами). Если, кроме знания языка программирования, изучить еще и одну из СУБД, то в этой области вы всегда работу найдете, и по жизни будете чувствовать себя уверенно: такие специалисты всегда ценятся. Однако, в последние годы идет сильная тенденция к переходу от собственных систем к покупному ПО. Таким образом, "асушники" предприятия больше смещаются от чистого программирования к администрированию покупных систем и не большому программированию на уровне скриптов- адаптации системы под бизнес-процессы предприятия. Предприятия не просто переводят свои бизнес-процессы на покупные системы, а больше концентрируются на основной деятельности, передавая часть функций на аутсорсинг: хостинг сайта, разработка сайта, виртуальные АТС, аудиторские услуги, клиринговые услуги и т.д. Чем грозит это программисту? Ничем серьезным- просто будет большая миграции программистов в сторону софтверных компаний. В ИТ отделах предприятий останутся на поддержке ПО программисты невысокой квалификации. Предприятию такой сценарий удобен, т.к. такие программисты стоят дешевле, а покупные системы быстрее адаптируются под бизнес-процессы предприятия, чем если бы делали все свое.

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

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

Таким образом, я прогнозирую что в будущем в ИТ усилится роль софтверных компаний, производящих коробочное ПО и интеграторов, его внедряющих на предприятия. Разработка собственных систем будет встречаться весьма редко- только в узкоспециализированных областях ИТ. Миграция на коробочное ПО- это очень медленный процесс. Вероятнее всего пройдет еще не одно десятилетие, прежде чем, наступит гегемония коробочного ПО. Другая тенденция- появление разнообразных веб-сервисов. Многие из них выглядят несуразно, непрактично. По сути, это идет проба сил, прощупывание пути развития. В этом бурлящем интернет-супе разнообразных сервисов можно как неплохо заработать, так и сильно проиграть. Тем не менее, если снять пенку с этого супа, то становятся очевидными ряд серьезных ограничений интернет-технологий, которые не позволят им в ближайшие десятилетия делать погоду на рынке ИТ. Это и неумение интернет-приложениями использовать полноценно мощь современных компьютеров, и неумение работать автономно при отсутствующем подключении к сети, а также рост объема передаваемых данных, опережающий возможности сети по их передаче. Эти тенденции приводят к очевидному результату: наибольшее развитие получат "десктопные" приложения, широко использующие как возможности компьютера, так интернета. В качестве отменного примера, показывающего отличное чутье менеджмента компании, я назову Microsoft Live. Компания Google в этом плане уступает, так как искусственно ограничивает себя исключительно веб-технологиями. Перспективные приложения- это приложения, умеющие обновляться в автоматическом режиме через интернет, отсылающие баг-репорты в случае сбоя программы, умеющие синхронизировать данные между разными компьютерами пользователя. На сегодняшний день таких приложений уже немало и эта тенденция будет усиливаться. Прочтите еще раз мой прогноз на 2009 год. Приложения для мобильных устройств- тоже относятся к перспективному направлению развития.

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

Конец.