Работа в it. Как начать и что учить. Часть 2.1 - Общее описание сфер деятельности и соответствующие им наборы знаний и навыков
Доброго времени суток, уважаемые пикабушники. Если после прочтения первой части - плюсы и минусы работы в ИТ (ознакомиться можно здесь), вы все ещё заинтересованы в том, чтобы начать работать или хотя бы двигаться в направлении работы в it - сфере, то в этой части я постараюсь как можно более понятно описать чем же все таки занимаются it-шники, чем разные направления друг от друга отличаются, и какие навыки и знания нужны для работы в этих направлениях. Первым делом хочу извиниться перед теми, кто ждал этот пост за столь длительное ожидание. Рабочий график и ремонт не оставляли много времени для работы над статьей, а учитывая объемы информации, которую нужно подать развернуто и понятно, сделать это быстро не представлялось возможным.
После прочтения комментариев к первой части данной "трилогии", а так же комментариев к большей части вопросов вроде того, который побудил меня к написаю этих статей, мне даже захотелось сделать отдельный пост на тему "мифы о работе в ИТ", но думаю такого материала в сети и так более чем достаточно. Однако, все таки отмечу здесь несколько моментов, которые наиболее часто встречались в обсуждениях, и которые на мой скромный взгляд не совсем соответствуют реальному положению дел.
Во - первых, хочется сказать что некоторые несомненно мудрые и опытные спецы пишут что-то вроде: "Рай в этой сфере обещают лишь красивые статьи, реальность совсем иная, особенно для тех, кто решил после 30ти поменять направление." В данный момент я работаю в коллективе с людьми от 23 до 50 лет, и далеко не все из них сразу начали заниматься тем, что делают сейчас. По-этому, делать акцент на возрасте человека, что мол "после 30 осваивать что-то новое уже поздно", считаю абсолютно не корректным. Несомненно, с возрастом скорость усвоения новой информации снижается, и обучение новому дается людям сложнее, но это означает лишь то, что потребуется несколько больше времени или больше упорства. Если сильно захотеть - можно в космос полететь, так ведь? А если человек не готов учиться и развиваться как профессионал, то в it идти не стоит ни в 18 ни в 25 ни 40 лет.
Во-вторых, комментарии вроде "чтобы работать в it надо 5 лет учиться и 5 лет работать на минималке, чтобы потом начать получать нормально". Ну этот момент все таки больше завязан на конкретное направление деятельности и место где проживает человек. Чем больше город, тем больше различных вариантов, и в принципе найти зп уровня среднего по региону и чуть выше более чем реально с опытом работы в год-полтора.
В-третьих, самые забавные замечания, на мой взгляд "В России нигде нормально не учат ИТ". Ну начнем с того, что в в ВУЗах вообще не учат, там учатся. Задача ВУЗа дать базовые знания и общее представление об области, в которой предстоит работать человеку, чтобы он имел возможность посмотреть и пощупать как можно больше направлений и выбрать наиболее интересное для себя. Да и уровень образования в России по качеству не хуже большинства стран европы.
Теперь перейдем собственно к основной части. Сразу хотелось бы отметить, что it-шник != программист, но программист = it-шник. То есть, вопросы "как начать работать и it" и "как стать программистом" - это разные вопросы, и ответы на них будут разными. То, что обычно называют "програмированием", в it сфере относится к "разработке програмных продуктов", и это пожалуй самое сложное направление, требующее максимального количества времени и сил на освоение. В целом же, я склонен разделить it-сферу на 3 больших блока: разработку, эксплуатацию (сопровождение) и администрирование, а так же отдельные специальности, которые существуют на стыках этих блоков, либо на переферии. Дело в том, что времена когда один гениальный (или не очень) человек писал игру\сайт\программу\приложение, которое становилось мегапопулярным и при этом было завершенным продуктом, не требовавшим поддержки давно прошли. На текущий момент технологии развиваются такими темпами, что быть классным специалистом во всем и сразу невозможно в принципе, сейчас время специалистов узкого профиля. А рынок настолько наполнен предложениями, что даже самое гениальное творение не имеет потенциала без грамотного продвижения и сопровождения. По-этому работа идет целыми командами различных специалистов, каждый из которых делает свою работу. И у каждого из них свой набор знаний и навыков, требуемый для выполнения его обязанностей.
ВАЖНО: Для работы в сфере it, не связанной с фрилансом, крайне желательно (практически необходимо) получение соответствующего образования. Устроиться на работу без диплома вполне возможно, но выбор доступных мест будет сильно уже, чем при наличии такового, а так же, сильно ограничена будет и возможность карьерного роста.
Обычно при подборе персонала, специалисты hr ориентируются на те требования к кандидатам, которые им выставил "заказчик", и в большинстве случаев наличие технического образования там идет на первом месте. В таком случае, даже самые талантливые и опытные самоучки без диплома не будут даже рассмотрены. В тех случаях, когда наличие тех.образования не является обязательным, человек с соответствующим дипломом будет иметь приоритет.
Так что, даже если самостоятельно освоите все необходимые навыки, получать техническое образование все равно придется. Но это можно сделать и заочно, уже работая в этой области.
Администрирование
Ну с задачи администраторов, я думаю, все знакомы, и сильно вдаваться в подробности нет необходимости. Если в кратце, то это поддержание всей сетевой инфраструктуры, от пользовательских рабочих станций до сетевых маршрутизаторов, в рабочем состоянии. Иными словами все, что находиться между коннектором на сетевом кабеле провайдера до клавиатуры пользователя - зона ответственности администраторов. Администраторы в свою очередь могут делиться на:
- сетевиков (администрирование компьютерных сетей и сетевого оборудования)
- СУБД (базы данных)
- администраторов инфраструктуры (администрирование ОС, пользовательского ПО и т.д.). В маленьких кампаниях такого деления обычно нет, имеется один отдел, специалисты которого занимаются всем и сразу. Все зависит от сложности и количества компонентов, которые необходимо администрировать, а так же, бюджета организации.
Как известно, хороший админ - тот, который весь день ничего не делает. Хотя далеко не всегда начальство это понимает...
Для начала работы в данной области требуются такие знания как:
- Теория баз данных
- SQL
- Теория компьютерных сетей
- Операционные системы и среды
- Практика в работе с ОС Windows Server и Linux
- Умение работать с командной строкой
- Информационная безопасность
В принципе, такого набора знаний и навыков будет достаточно для того, чтобы начать проходить собеседования на должность какого нибудь младшего администратора или (хотя бы) стажера.
Эксплуатация и сопровождение
Это пожалуй самая большая область в которой занято наибольшее количество человек. Ведь любой продукт, необходимо поддерживать и развивать. И в отличие от разработки, которая имеет конкретные сроки выполнения и завершения задач, процесс эксплуатации длится все время, пока продукт "живет". В задачи специалистов этого направления входит очень много разнообразных задач, которые требуют разных навыков и очень разных уровней компетенции, и сильно зависят как от особенностей самого направления, так и от конкретных особенностей сданного в эксплуатацию продукта. Но в общем случае можно свести их к:
- поддержке пользователей
- контролю за состоянием и качеством работы эксплуатируемых продуктов и систем
- исправлению выявленных ошибок продуктов или системы
- выявлению и анализу первопричин дефектов и багов поддерживаемых продуктов
- передача информации о выявленных проблемах в разработку и контроль их исправления
- составление отчетов о работе продукта и прогнозирование изменений с целью повышения качества работы эксплуатируемых систем
Специалисты данной области занимают все уровни между рядовыми пользователями продуктов и их разработчиками. Главная задача своевременное реагирование на нештатные ситуации и их исправление своими силами, если это возможно. Если исправить ошибку самостоятельно не получается, то необходимо как можно более детально изучить и проанализировать причины произошедшего, и передать всю полученную информацию в разработку, чтобы те смогли как можно быстрее выкатить решение. Так что модераторы Facebook, Picabu и прочих ресурсов это уже и есть первый уровень эксплуатации. Сюда же входит 2 линия технической поддержки провайдеров. Это все нижние уровни, куда можно устроиться работать не имея высшего технического образования или глубоких знаний в этой области. Следом будут идти разнообразные аналитики, отвечающие за отчетность и контроль, инженеры, занимающиеся выявлением и исправлением ошибок, и интеграторы, отвечающие за взаимодействие с разработкой.
Высокие уровни эксплуатации вполне могут частично пересекаться с разработкой. И хороший инженер эксплуатации, после нескольких лет работы, может находиться на уровне среднего разрабочика. Работа в этих структурах позволяет свободно переходить из одной в другую. Разработчиков с удовольствием берут в эксплуатацию продуктов, которые они разрабатывали, а специалист работавший в эксплуатации будет иметь преимущество при переходе в разработку, перед человеком "с улицы", потому что уже знает тот продукт, который нужно будет дорабатывать и развивать.
По набору знаний и навыков сказать что-то определенное, довольно сложно. Он будет сильно зависеть от конкретных условий, конкретного продукта, но в целом (для того что бы начать работать) можно смело учить всю базу:
- Теория баз данных
- SQL
- Компьютерные сети
- Основы информационной безопасности
- Операционные системы
А далее все опционально, в зависимости от требований к интересующим вакансиям. Поскольку большинство продуктов являются уникальными для конкретного направления или вообще конкретной организации, то от вас в первую очередь будут ожидать готовности и желания быстро учиться и усваивать большие объемы информации в сжатые сроки.
Походу написания статьи я понял, что даже для поста текста получается многовато, и вынес разработку и все смежные направления во вторую часть (хоть и не планировал изначально так делать), которую выложу в течение 2-3 дней. Спасибо за внимание, уважаемые пикабушники. Мир вам!