Как правильно заходить в айти (ответ на загадку про два стенда)
Осторожно, длиннопост.
Я женщина и у меня нет специального образования. Только 11 классов общеобразовательной школы. ВУЗ (гуманитарный) бросила на первом же курсе, неинтересно было учиться. В технический поступить на бюджет было очень сложно, а возможности платить за обучение у моих родителей не было.
Я не программист и очень слабо знаю один язык программирования, по работе он мне пока не пригодился -- я тестировщик (то, что называется "ручной"). Когда я ищу новую работу, я могу просто разместить резюме и эйчары будут звонить и приглашать на собеседования сами. При этом я не топовый синьор, я вполне себе среднестатистический миддл.
Зарплата выше средней по стране в несколько раз. Работаю на удалёнке. Причем мне даже свой комп не нужен, от работы выдали ноут (конечно, когда уволюсь, его надо будет сдать обратно, и личный ПК у меня тоже дома есть). Мечта, не правда ли? Я могла бы быть готовой рекламой курсов как войти в айти, "без знания языков программирования" и не ноготочки пилить, а тест-кейсы.
И я действительно проходила пару курсов. Когда уже работала, для повышения квалификации (бесплатный курс по python -- не пригодился; недорогой курс по тестированию API -- пригодился). Но это не курсы "с нуля в миддлы", это именно допилить какой-то навык, которого не хватает. За уплаченное на курсе по тестированию API немного жалко, могла бы и сама найти инфу и разобраться, но решила экономить время и силы (курс был, конечно, параллельно с работой).
У меня не было компа в детстве. Родители купили, когда я уже закончила школу и уехала учиться в другой город. Я купила свой первый ноут в кредит, когда уже работала.
Так вот, что, как мне кажется, нужно для успешного входа в айти:
Логическое аналитическое мышление. Именно то, о чем говорят айтишники, когда доказывают, что они богоизбранные. В детстве я легко и успешно решала задачки "со звездочкой" и любые головоломки на логику. На уроках информатики я сходу понимала алгоритм решения задачи и могла его сформулировать и пошагово расписать. Умение составить четкий алгоритм важнее, чем знание конкретного ЯП или знание особых инструментов тестирования. Это ключевой навык для работы в разработке ПО: аналитику он нужен, чтобы написать хорошее ТЗ, тестировщику -- чтобы составить исчерпывающие тест-кейсы, программисту -- чтобы написать код. Можно ли не обладать им с рождения, а натренировать? Как мне кажется -- можно, да и врожденное мышление тоже надо тренировать. Но в рамках курсов, как я понимаю, этому не учат (регулярно делаю ревью тест-кейсов менее опытных коллег, которые проходили курсы, и почти всегда там слабое умение выстроить алгоритм и тем более внятно его описать).
Интерес к сфере информационных технологий. Моя жизнь не была гладкой, после школы я долго работала в техподдержке и с первой линии "попробуйте перезагрузить компьютер, все равно не работает? Переключаю на инженера" стала тем самым инженером, на которого переключают. И никто меня специально не учил, я училась и интересовалась сама, покупала с небольшой зарплаты нужные книги (дорогие, блин) или находила их бесплатно в сети, читала и понимала (что иногда, без бэкграунда в виде высшего технического образования, было сложно и требовало часто отложить книжку и нагуглить инфу, чтобы понять очередную главу). У меня горели глаза. Мне было интересно понять, разобраться, применить знания в работе. Потом мне надоело общаться с пользователями на звонках, да и поняла, что в этой профессии дальше двигаться некуда -- стала интересоваться разработкой ПО, читала самоучители для программистов, по такому самоучителю написала простенький калькулятор (на С++, кажется).
Умение учиться самостоятельно. Плотно пересекается с предыдущим пунктом. Когда интересно и хочется информации по своему интересу -- я гуглю, читаю, вникаю. Курсы могут являться достойным инструментом получения информации, но не те, которые "с нуля в миддлы", а с конкретным навыком. И, опять же, сам по себе курс не научит ничему -- это просто один из форматов обучения. Иногда удобный: например, курс по python был удобен автоматической проверкой ДЗ -- пишешь код по задаче, отправляешь в специальном интерфейсе, если код правильный -- ДЗ выполнено, неправильный -- ДЗ не засчитано, переделывай. Иногда нет: когда дело касается усвоения информации, я предпочитаю её в письменном виде, а не болтовней лектора на видео.
Умение организовывать свою работу самостоятельно. Без этого навыка вас ждёт фейл. Собственно, история с локдауном и переводом на удалёнку тех, кто никогда так не работал, наглядно это продемонстрировала: очень многие люди оказались неспособны выполнять свою работу, если за спиной не ходит начальник. Или, наоборот, неспособны организовать работу так, чтобы не заниматься ей в нерабочее время. В айти рано или поздно понимаешь, что, как бы ни горели глаза, нужно соблюдать баланс труда и отдыха, а то горящие глаза быстро потухают, если постоянно засиживаться за работой допоздна. И навык самому организовать работу -- ключевой, который отличает миддла от джуна (именно поэтому после курсов миддлом не стать без реального опыта): чем выше ты по грейду, тем менее детализированы задачи. Грубо говоря, джуну дают в руки лопату и говорят: выкопай яму вот по таким координатам, с такими-то параметрами глубина-ширина-высота. Дальше начинаются задачи типа "нужно сделать яму" (параметры ямы и её размещения нужно определить самому, а так же чем её копать -- руками, лопатой, экскаватором, подземным взрывом) или вообще "мы хотим тут бассейн сделать" (и тебе нужно понять, копать ли под бассейн яму или тут подойдет каркасный). И этому пониманию на курсах не научить, только реальный опыт работы поможет.
p.s. Айтишники не богоизбранные, в каждой профессии своя специфика по т.н. "софт-скиллам". Текущая ситуация с зарплатой -- не про то, что айтишникам слишком много платят, а про то, что слишком мало платят другим специалистам. Врачи и учителя, по моему мнению, должны получать столько же, а то и больше. Как и инженеры на заводах. Как, в общем-то, и любые высококвалифицированные специалисты.