Выходит так
Получается 20% разработчиков делают 80% багов?
Про вход в IT
Добрый день.
Данный пост адресован тем, кто читает про зарплаты в IT по 100500 рублей в день и думает а не пойти ли мне и не изучить ли тему.
Сперва пару слов о мне - последние полтора года работаю руководителем группы Devops инженеров. Начинал "карьеру в IT" в call-центре провайдера в техподдержке.
Команда у нас геораспределённая, и в ней есть как джуны (совсем начинающие инженеры в нашей области) так и сеньоры (супер опытные ценные для компании специалисты). По возрасту тоже есть большой градиент - от 22 до 40+ лет.
За спиной не один десяток собеседований к себе в команду, из них 95% это собеседования как раз на позицию джуна.
Итак, что на мой взгляд стоит внимания, при желании стать IT инженером:
1 - Нет возрастного ограничения для того, чтобы сменить сферу деятельности и начать изучать новую область.
Но.
Есть большая разница, сравните: или вы уходите в IT в 25 лет когда у вас нет ни семьи, ни ипотек, ни привычек жить по определенным средствам, или же вам 40+ лет, у вас кредитная нагрузка по 35-40 тысяч в месяц, ещё вы кормите семью из 2-3 человек. Тут уже физически не вариант переходить на "работу за хлеб на первые месяцы". Так же, скорее всего в этом случае, единственный вариант изучать что то новое - изучать во внерабочее время, например по вечерам. Это возможно, но сложно. Стоит трезво оценивать свои силы чтобы не повиснуть на шее жены, например, на полгода - год.
2 - Здорово понимать, куда может увести карьера, начиная работать в какой то области IT. Приведу пример роста (там много ответвлений и вариантов, просто как пример): Тестировщик - джун/мидл/серьор разработчик фронта/бэка/фулстек - архитектор сервисов.
Или в сторону devops например: системный администратор - джун/мидл/сеньор devops - джун/мидл/сеньор SRE - техлид - архитектор.
Соответственно если я хотел бы стать разработчиком я бы не пошёл в дизайн или если бы я хотел быть SRE инженером я не пошёл бы работать тестировщиком.
Сразу оговорюсь - есть куча примеров движения людей вне вышеописанных рамок, но я описал только рельсы, т.е. сисадмину будет легче уйти в devops нежели тестировщику или аналитику - стек технологий близкий и переход будет относительно лёгким.
3 - Профильные курсы.
У большинства (не у всех наверно) курсов цель - быть проданными как можно большему числу людей. Это важно понимать. По сути, компании продающей курсы без разницы найдёте ли вы работу потом, они живут именно продажами. Не буду тут останавливаться, все и так всё знают.
4 - Не программированием едины.
Я ушёл в devops из сетевого администрирования за 45к в месяц, и зарплата у меня вполне попадала под запросы большинства людей кто хочет войти в IT где то через год.
Не обязательно стремиться быть разработчиком и идти учить языки 24/7 своего времени, есть очень много разных специальностей. Тестирование, аналитика, системное администрирование, сети, дизайн и многое многое другое. И в каждой из сфер будут айтишные зарплаты.
5 - Конкуренция.
Могу сказать что кадровый голод в IT есть почти везде на уровне от мидла. Рынок буквально пылесосят, компании сами пишут и приглашают прийти к ним на собеседование. Но если вы джун то все не так радужно и довольно сложно. Отсюда и появляются разные "начни работать за еду" и прочее.
Стоит понимать - если сейчас например ото всюду сыпется реклама курсов Python разработчика то и конкуренция там будет огромная, и именно на позицию джуна. Все эти вакансии на 180к это все лишь замануха для продажи курсов.
Если цель просто "войти в IT", то стоит выбирать те направления где конкуренция ниже.
Немного оффтоп - не скажу за всех, но я к себе в команду например не возьму человека который не знает базовых необходимых вещей, но готов работать за еду, только бы учили. Мы учим, и как показывает опыт очень эффективно учим, но ресурс на обучение не бесконечен, это так же затрата сил и времени. Поэтому наличие крепкой базы знаний всегда приоритетнее демпинга оплаты труда.
Буду закругляться, и так много текста. Если пост найдёт отклик, мог бы написать так же как я сам дошёл до текущей работы, на что смотрим при собеседованиях, что то по devops тематике для тех кто думает пойти именно в этом направлении. Спасибо за внимание.
Ответ povt121 в «Секреты вашей профессии, о которых лучше не говорить»
Ооо, прочитал, подгорело. Админил бюджетное предприятие - "Коммунальщик дона" в далёком 2011 году. Предыдущий админ уходил недовольным и оставил из доступов и паролей только админки на компы. Сама архитектура была настроена отлично: интернет через адсл зикселя попадал на шлюз на фрибсд, там распределялись доступы. Закрыто было всё, что могло мешать работе, соцсети, сайты с юмором и много всего. Проблемы по сути возникали только в коммуникации 2 зданий, расстояние почти 500 метров и связь между ними по коаксиалке(то ещё удовольствие). В итоге разбирался со всем сам, но к предыдущему админу были только уважухи, никаких претензий, если честно, даже много из его настроек подчерпнул для себя, с фрибсд так вообще дела не имел, но столкнулся и проникся. Проблемы начались когда начальство стало просить убрать ограничения на выход в интернет и на трафик. А я что, я человек подневольный, всё отключал из правил для определённых айпи. Потом начальство стало просить того же для бухгалтерии, проектировки, в общем начался разброд и шатание. Мои претензии по поводу таких послаблений никого не интересовали. Прошло 3 месяца и мне начали предъявлять, что никто не работает, а только в интернете сидят. На мои аргументы, что вы сами просили, делались круглые глаза... Вернул всё взад, и через месяц меня попросили, ибо слишком много денег прошу за работу. Наняли племянника одного из начальников, который даже линукса не видел никогда. 2 недели пытался его ввести в курс дела, но потерпел крах, ничему не хотел учиться, был уверен, что всё и так знает. Плюнул, ушёл, потом ещё 2 месяца звонили и хуесосили, что ничему его не научил. Вот такая неблагодарная история...
Ответ smitlks в «Секреты вашей профессии, о которых лучше не говорить»
Админил я в одной конторе, в которую прислали нового директора. Ну, он к коллективу поприсматривался, видимо, решил что понял достаточно. Вызывает меня к себе.
- А чем ты целыми днями занимаешься?
-Ну..как...админю...
- Нет, конкретно, какие ты действия предпринимаешь? Платят тебе за что?
- Чтоб все работало?
- Тебе платят, чтобы работал ТЫ. А ты - то куришь, то по коридорам шароёбишься, то болтаешь с кем-то. Не вижу я вообще чтоб ты работал.
- Ну, раз я не работаю - значит все хорошо, так?
- Нет, не так. Или ты пересматриваешь своё поведение, или мы будем поднимать вопрос - зачем ты такой нам нужен?
И невдомек недалёкому, что каждое воскресенье, когда остальные дома на выходном, я приезжал в контору чтоб обслужить систему, перезагрузить что надо и обновления накатить. Сам дошёл до этого, чтоб людей в рабочее время не отвлекать, делал всё в выходной. Времени вроде немного отнимает, а нервы экономит. А люди приходят в понедельник на работу - всё работает, шуршит как надо, жалоб нету. Ага, а админ - бездельник.
Прислал он мне тогда племянника своего на стажировку. Тот, видать, быстро смекнул, или дядя ему прямо сказал почему мной недоволен. В общем, когда я уволился через три месяца, стажёра взяли штатным админом. И стали доходить до меня слухи, что админ летает по этажам как электровеник и постоянно героически проблемы возникающие решает. И большинство персонала конторы так и отзывалось: "Гля, старый то админ на жопе сидел да по коридорам ебланился, тварь ленивая. А новый вона, бегает, людям помогает. Молодец какой."
И только в очень редких случая после этого добавляли: "Правда, со старым админом и проблем то не было, которые так оперативно решать надо...А у этого постоянно... Сам он их что ли создаёт? Да не... ерунда какая то".
Ответ Mr.SIP в «Секреты вашей профессии, о которых лучше не говорить»
Бегать сисадмину и IT спецам противопоказано. Прибежиш и решаеш проблему часа три минимум. А покуриш, чай, кофе и не спеша прийдеш, а проблемы уже и нет.
Ответ на пост «Секреты вашей профессии, о которых лучше не говорить»
Работаю программистом систем автоматики:
1)Программы и механизмы работают значительно лучше людей, причем по всем показателям: цена, точность, скорость, надежность. Поэтому автоматика стремительно вытесняет людей и будет делать это дальше. По сути я занимаюсь тем, что увольняю людей с работы, зачастую еще до того как их туда возьмут.
2)Искусственный интеллект - зачастую игрушка и может работать только в определенных задачах с низкой степенью ответственности (там где цена ошибки приемлема). Полный интеллект еще никто не сделал и на текущей аппаратной структуре врятли сделает. А вот жестко прописанная автоматика - штука очень точная, и надежная, жаль не все задачи ей подвластны.
3)Как минимум за последние 15 лет в моей практике не было ни одно случая, что бы хоть какой то антивирус сумел вылечить компьютер от вирусов. Современные вирусы это целая пачка разных вирусов/программных модулей сносишь один, а второй его восстанавливает из резервных копий и так до бесконечности. Массовые вирусы легко проходят все антивирусы, их изначально делают и проверяют так что бы антивирусы их не видели и не мешали им.
4)Обновления ПО это скорее выжимание денег, чем реальная необходимость. Обычно обновлять надо для получения нового, реально нужного функционала (крайне редко, для безопасности), остальные обновления - скорее мешают. Лучше всего держать всё "как есть", ничего не обновляя до момента пока совсем не прижмет. С обновлениями приходят проблемы. На моей памяти завод встал из за вируса всего 1 раз, а вот из за обновлений и правил безопасности... встают регулярно. По сути обновлять нужно только то ПО, которое смотрит в инет: браузер, удаленный рабочий стол, роутеры, движки сайтов или где нужны актуальные данные (1С, консультант, грандсмета и т.д.).
5)Нормальное, уравновешенное начальство на предприятиях редкость (цените это). Обычно все оттенки наглости, хамства, тупизны. Мне иногда кажется, что только такой народ может чего то достичь в жизни.
6)Большинство антивирусов - просто проверяет электронную подпись файла / сайта, если подпись нормальная = файл безопасный, если нет - блокируется.
7)Новые версии устройств/программ за которыми так гоняются неработоспособны. Дело в том, что новые разработки требуют большого тестирования, на которое почти всегда нет времени. Устройства и ПО просто выпускается на рынок, далее следует череда жалоб от клиентов, по ним проблемы находятся и устраняются, обычно это длительный процесс и занимает около года. Хотите жить без проблем - приобретайте исправленные старые версии, они частенько еще и дешевле.
8)Самая надежная система безопасности - бэкапы всего. Делайте их как можно больше и чаще, храните в разных местах.
9)Облачные технологии - это зло. Обычно они нужны только для выкачивания денег. Их используют что бы надежно привязать пользователя к себе и доить его. Надежность облаков - крайне низкая, несмотря на всю отказоустойчивость серверов они периодически не работают. Вы полностью зависите от каналов связи (нет инета = простой) и их скорости. Вы и ваш ИТшник не можете повлиять на них - сидите и ждите, это с локальными проблемами можно позвать ИТ-шника и пытаться разрулить ситуацию. Ну и вы должны платить постоянно, не заплатите, останетесь без всего. Расценки тоже не радуют, такие же ресурсы в локальной машине обойдутся почти даром.
10)Починка электроники - скорее шаманство/везение (если вы ее не производите). Обычно чинятся источники питания, меняются готовые модули, пропиваются соединения, меняются простые элементы (конденсаторы, микросхемы, зачастую без прошивок, полупроводники), если это не помогло - ремонт провален. Гарантировать удачность починки никто не может. Если есть микротрещина в плате текстолита, то найти это и устранить будет проблемой даже для производителя. Если проблема не может быть продемонстрирована здесь и сейчас, то скорее всего ничего не починят, а скажут, что чинить нечего.
11)Большая часть того, что выдают за сбои систем - это не сбои ПО, а поломки железа, так же многие врут, что проблема именно ИТшная, обычно это просто лень персонала. А вот перепутать данные - это вообще крайне редкая ошибка, обычно путают именно люди, а потом пытаются отмазаться глюками компов.
12)Программист - это скорее разновидность деформации личности. Мозг перестраивается и начинает воспринимать мир по другому, как компьютер. Пытаться разложить по полочкам все, что происходит вокруг, представить все действия в виде последовательности простых операций, все данные в виде чисел и самое главное - проработать ВСЕ возможные варианты событий. Именно такой склад мышления и позволяет нормально работать с техникой, а вот в реальном мире мы скорее похожи на роботов.
13)Мы знаем, что вы храните на компах и многое из того, чем занимаетесь, этим нас не удивить. Обычно мы просто тактично замалчиваем этот вопрос. Да и просто лень в этом разбираться, какая нам разница, что вы за личность.
14)Разрешительная/проверочная бумажка на товар стоит соизмеримо или больше, чем стоит товар. Требуя эти бумаги вы автоматически повышаете цену. Например, обычный ПК вполне может работать в прохладном, запыленном помещении годами, но если вы захотите получить бумажку в которой будет это проверено, цена изделия увеличится на порядок. Зачастую проще пробовать и выбрасывать в случае ошибки, чем заранее переплачивать в разы за сертифицированное.
15)Ваш сисадмин скорее всего ничего не знает о том, почему эта программа так работает, только разработчик программы может сказать почему так происходит, и то не сразу, а спустя какое то время, после анализа ситуации именно на вашем компе. Просто сисадмин попробует как то решить эту проблему с доступного ему края (хотя бы откроет инструкцию), а пользователь будет тупо выражать недовольство ничего не делая.
Поиграем в бизнесменов?
Одна вакансия, два кандидата. Сможете выбрать лучшего? И так пять раз.
Ответ на пост «Секреты вашей профессии, о которых лучше не говорить»
Чтож, расскажу чуть-чуть про мой почти 5-летний опыт в IT в качестве системного аналитика (пора открыться миру). Далее я буду писать в основном про аналитиков, но частично это можно экстраполировать и на других членов команды разработки.
1. ИТишники мало работают, но это только иллюзия. У меня бывают недели, когда я работаю 1 час в день (или работу на час растягиваю на весь день), а потом несколько недель, когда я работаю 12 часов в день. И это не потому что я плохо работаю, а потому что так распределены задачи (в основном это происходит там, где странноаджайл, то есть много где). Иногда удается вписаться точно в норму 8 часов, но так бывает, что эти 8 часов ты почувствуешь как 16 (время способно уплотняться перед дедлайном). Люди, которые овладели искусством садиться работать в 9 и прекращать работать в 18 без чувства незавершенности и без потери качества - полубоги, которыми мало кому дано стать. Чаще всего это тестирование, которое протестует против черезмерной нагрузки (единственные люди, которые, как мне кажется, никогда не сидят без дела)
2. Системные аналитики (да и вцелом ИТишники) получают деньги за порой не очень сложную работу. Но есть нюанс: ты должен отработать хотя бы пару лет на зарплате сильно ниже рыночной и очень быстро прокачаться, а еще желательно несколько раз выгореть за это время (шутка с долей грусти). Редко кому получается сразу найти работу с большой зп даже в мск. У разработчиков и около разработчиков (девопсы, техлиды и т.д.) ещё сложнее, им ведь нужно сразу иметь больше прикладных знаний.
Вцелом вокруг зп ИТишников в России много мифов, которые естественно не правда. Реально много зарабатывают в основном в финтехе, инфобезе, бигдате и т.п. При этом даже в этих направлениях есть компании-вендоры, которые сознательно платят ниже рынка (им приходится расплачиваться за это большой текучкой кадров).
3. Зачастую при собеседованиях мы отдаем предпочтения стажерам, а не людям с большим опытом (10 лет+), потому что весь этот опыт зачастую нерелевантен и проще взять стажера и научить его с нуля делать простые задачки, чтобы разгрузить старшего аналитика. Это грустно.
4. Никакие курсы не научат быть системным аналитиком с нуля так, чтобы сразу тебя взяли на зарплату 100К, придется несколько лет все равно страдать как все (см. п. 2). Ну разве что если до этого ты был разработчиком, тестировщиком или ещё кем-то смежным. Просто потому что аналитик большинство знаний все равно получит во время работы и единый стандарт профессии не везде применяется (а то что я учила в институте по специальности лично мне вообще не пригодилось даже чуть-чуть)
5. Мы знаем когда мы делаем говно. Но мы все равно его делаем. Потому что потому. Потому что задачи должны выходить в срок - от этого зависят прибыли и премии. Потому что требования пришли слишком поздно, потому что цель задачи неясна, потому что много зависимостей с другими командами, плохое планирование (спасибо, аджайл, ненавижу тебя так же сильно как люблю), внезапные сложности с реализацией, фантазии заказчика или разработчика или архитектора, чрезмерные требования к безопасности, ошибки при проектировании, потому что это срочно спустили сверху, ололо, изменился какой-то закон, срочно переделать - есть миллион причин почему нельзя просто взять и сделать хорошо. Это работает как для ваших любимых порносайтов, так и до нелюбимых банковских приложений. Команда, которая делает все хорошо и сразу обычно либо очень дорогая, либо очень выгоревшая.
6. Команда вполне может обойтись без аналитика, но тогда разработчику самому придется обрабатывать весь тот абсурд, который генерит заказчик. Лучше доверьте профессионалам.
7. Системный аналитик и бизнес-аналитик - это разные роли, но всем плевать, ты будешь делать и то, и другое, если вас не сразу двое на проекте.
8. Мы можем сколько угодно говорить какие у нас клиенты, какие молодцы, спасибо им за прибыль и вообще обратная связь это так ценно. Будем искренне вникать во все проблемы и переживать. Но при проектировании фичи мы всё равно будем руководствоваться установкой "представим что все наши пользователи - клинические идиоты". Это очень сильно упрощает работу при создании интерфейсов, моделировании пользовательского поведения и прочих таких вещах. Хороший интерфейс должен быть сделан так, чтобы даже человек с уо смог бы оплатить подписку на кинотеатр, купить любимые вафли онлайн или оформить заявку на кредит (в хорошем банке её не одобрят, но заявку подать все равно должен смочь)
9. Я не знаю и половины того, что должна бы знать, но все равно работаю - это нормально. Большую часть вещей мы осваиваем на лету, а что-то вообще либо гуглим, либо изобретаем заново (костыли и велосипеды). Если внедряется какая-то принципиально новая красивая фича, то она скорее всего уже была где-то внедрена какими-то богами с зп 500+, а остальные просто копировали решение у себя.
10. По факту все главные принципы проектирования в ИТ были разработаны и описаны еще в 80х. Но если ты выпадаешь из профессии хотя бы на год - тебе все равно писец, возвращаться в уже новую реальность сложно.
11. Архитекторы ошибаются. Причем иногда в таких простых вещах, что становится страшно.
12. Аналитик в среднем может принимать около 50 мелких решений в день и это капец как утомляет. Просто разработчики не хотят ничего решать, они хотят тык-тык-тык и интересных задач, а работа аналитика уточнять требования и принимать мелкие решения ("хорошо, пусть этот параметр называется amount, а не sum"; "пусть этот метод вызывается раньше, а вот тот позже"; "нет, эта кнопка должна быть красной потому что так сказали дизайнеры"). В большинстве случаев я просто мысленно подкидываю монетку. В принципе это не самое худшее разделение обязанностей, оно упрощает процесс, но иногда я все равно игнорирую сообщения от разрабов пока медленно не досчитаю до 10.
12. Нуждами тестирования и автоматизации тестирования всегда пренебрегают при проектировании и планировании - это печальная закономерность, я еще ни разу не видела (и не слышала), чтобы ее победили.
13. Выгорание не миф. С этим можно бороться, это в целом не настолько грустно как когда выгорают врачи и учителя, но проблема очень и очень распространенная и всегда вызывает недоумение, мол, почему? У тебя же светлый офис, дружный коллектив, приличная зп, любимое дело, вагоны не разгружаешь, что тебе ещё? И эти вопросы только ухудшают проблему. А если итишник говорит, что с ним такого не бывало и это переоцененная проблема, то тут 50 на 50: либо он правда не сталкивался с таким и ему повезло, либо он вот вот сгорит. Но таких людей мне встречалось довольно мало.
14. Может быть кого-то удивлю, может нет, но ИТишники больше не бледные интроверные парни в очках. В современном ИТ коммуникации занимают порой до 80% рабочего времени, и специалистов, которые замыкаются в себе и ни с кем не общаются, не очень-то поощряют даже при хорошем качестве остальной работы. В каких-то ламповых проектах с устоявшимся бизнесом еще могут быть заповедники хикканов, но в корпоративной разработке все интроверты должны страдать.
15. (Итишники поймут) Я была довольно на большом количестве собеседований как приглашенная звезда интервьер. 99% соискателей говорят, что у них в компании пытались внедрить скрам, не получилось и они сделали что-то своё. Фраза повторяется почти дословно каждый раз и каждый раз мне чуть-чуть смешно)
Для непосвященных: если вкратце, то это весьма удобная методология разработки с ограниченным спектром применения, но его внедряют сейчас где ни попадя и особенно в крупных компаниях. Почему? Потому что приходят аджайл-адепты и продают скрам руководителям компаний как таблетку от всего, получают очень много денег за то, чтобы его внедрить, в результате получается не-скрам-а-что-то-свое, после чего они уходят в закат. До сих пор не понимаю зачем этот театр, но хоть повеселиться за их счет удается. Ну и вцелом это лучше, чем вообще без методологии жить.