B0SCH

B0SCH

Пикабушник
поставил 20676 плюсов и 1655 минусов
отредактировал 3 поста
проголосовал за 4 редактирования
Награды:
10 лет на Пикабу
81К рейтинг 68 подписчиков 10 подписок 46 постов 5 в горячем

Обновлениям Пикабу посвящается

---
У этого автора не включены донаты, значит вы можете поддержать его только плюсом. При этом, автор выражает недовольство тем, что и так забитая баянами лента, теперь раздулась ещё больше за счёт повторяющегося текста про донаты, который мешает просмотру контента. Ссылка для поддержки: https://youtu.be/dQw4w9WgXcQ?t=1

На волне олдскульных воспоминаний

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

Как я в 31 год стал Java-разработчиком

Уже несколько раз на протяжении полугода меня просили написать эту историю, а тут в комментах я сам предложил. Видимо пора.

Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

Надеюсь, что те, кто ради этого подписался еще полгода назад, не сильно обиделись за столь продолжительное ожидание.


Тут не будет истории стоического превозмогания, как я приходил со смены на заводе и ночами учил Яву. Извенити.


Разобью историю на две логические части внутри одного поста: 1. Как учился; 2. Как искал работу.

Будет с небольшими элементами гайда.

Очень много букв.

____

Небольшая экспозиция.

Итак, на дворе 2020, мне 31 год, я уже около 10 лет работаю в розничной торговле, последние 8 лет в руководящих должностях. Кто-то на этом моменте скажет:

Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

А собака ответит, что ее все заебало. За эти годы я успел поработать в разных компаниях и позициях, но объединяло их одно общее свойство: розница, это кадровая помойка, карнавал некомпетентности и мизантропии. Причем, как правило, вплоть до топов и владельцев бизнеса.

Помимо этого, меня грызло ещё и то, что несмотря на два образования (машиностроение и экономика), я, по сути, не умею ничего. Только продавать и руководить продажами. Так себе наборчик. Притом, что я это ненавижу. Никаких прикладных навыков. В фильмах ужасов таких как я убивают первыми.

Ещё в 2018 пробовал учить JavaScript, но как-то не пошло. Не особо хватало времени, да и язык меня не зацепил (к слову, до сих пор его недолюбливаю).

Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

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

Ну и, заверте…


Часть 1. Обучение.
Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

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

Первым вопросом был выбор языка. Я ориентировался на индекс tiobe - https://www.tiobe.com/tiobe-index/ - утрированно, это, с некоторыми оговорками, рейтинг популярности ЯПов. Логично, что чем популярнее язык, тем проще будет найти работу начинающему разработчику. Да, экзотические языки тоже требуются и платят хорошо (иногда даже больше, чем на популярных), но там редко нужны джуны, потому что, чаще всего, это мертвые языки и легаси, а на собеседовании вы услышите, что предыдущий разработчик просто умер от старости.

Есть еще “молодые и перспективные” языки, типа Go или раста, но они уже лет по 10 в этих статусах.

Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

Для сравнения, Java, за первые 5 лет своего существования, стала самым популярным языком. Изучать их лучше уже имея какой-то опыт и понимание, зачем они вам нужны. Но я отвлекся.


Была выбрана Ява. Не рандомом, но расписывать аргументацию мне не хочется. Если стоит выбор языка, то в идеале, надо взять список из нескольких языков, почитать про них, про области применения, посмотреть на примеры кода (вдруг синтаксис не понравится) и уже потом выбирать.

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

Я выбрал самый консервативный (и не самый быстрый) способ для самостоятельного изучения теории - книгу. Достаточно хрестоматийная “Java. Руководство для начинающих” за авторством Герберта Шилдта. 600+ страниц достаточно сухого текста. Если что-то не понимал, то искал информацию в интернете: ютуб, статьи на разных ресурсах типа вертекса или джавараша. Кому как, но прочитанное я воспринимаю и запоминаю намного лучше, чем услышанное. Главный лайвхак (лайвхачище!), который для себя вывел в процессе, это то, что повторение - мать учения. Каждый новый день я начинал с краткой пробежки по пройденной накануне теме. Мозг, видимо, понимает, что такая информация, все-таки нужна и запоминает намного эффективнее.

Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

Из ютуб-каналов по Яве выделю сейчас, наверное, только Алишева. В плане подачи, это топ. Ранее смотрел еще Немчинского, но, сейчас в России не все захотят его смотреть.

А, ну и, конечно, ExtremeCode - маслятки поймут.


Практиковался, также - по-классике: примеры и задания из книг + задачки на LeetCode и CodingBat. Сайтов для тренировок десятки. Спустя месяца 3 начал увеличивать долю практики в обучении, теория пошла медленнее, но таким образом куда лучше набивается рука и пропадает страх перед кодом. Стал искать и делать примеры заданий, которые могут дать в виде тестового перед собеседованием. В основном, это всякие круд-приложения, вроде телефонного справочника (на практике так и оказалось, за некоторым исключением). К этому моменту я уже, естественно, составил свою дорожную карту для изучения Явы (на самом деле просто нагуглил) и поэтому понимал, что только самим языком дело не ограничится и параллельно с Шилдтом пошел, естественно SQL и Git, а следом - алгоритмы и структуры данных (это все необходимо, независимо от выбранного языка). Потом - JPA/JDBC/Hibernate (основы) и коллекции (про это все Шилд решил в этой книге не писать, что, мне кажется странным, зато там есть явно лишнее про сервлеты, javafx и свинг).

Для тех кто в теме - современная Ява, это Spring Framework. За время своего обучения я его почти не изучал и не щупал. О чем, к слову, совсем не жалею, но для минимума надо хотя бы посмотреть курс того же Алишева, так как спрашивают много где. Хотя я считаю, что если совсем еще джуна спрашивают про спринг, то это очень странно.

Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

На обучение я тратил 8-10 часов в день. Почти без выходных. Только иногда позволял себе дни отдыха, и то, когда понимал, что уже не вывожу и котелок перегрелся. Первое время, с непривычки, болела голова каждый вечер. Спустя, примерно, 5 месяцев, не прекращая обучения, я начал смотреть вакансии на HH уже не просто с целью посмотреть требования и необходимые технологии, а уже начинать откликаться.


Часть 2. Поиск работы.

Здесь будет больше в сторону гайда.

@Sapiensbru “На самом известном российском IT ресурсе посчитали, что число стажерских вакансий составляет 0.2% от рынка труда. Очевидно, что желающих намного больше. Например в стажерских вакансиях по java на hh по 500-1000 откликов.”

Скорее всего, так и есть. Стоит понимать, что вакансия стажера, это, само по себе, редкое явление, стажер - это вложение, которое, как и любое вложение, всегда имеет риски. Крупные компании набирают стажеров еще среди перспективных студентов всяких матмехов в хороших ВУЗах, там рисков меньше, а “потанцевал” у таких стажеров - выше. У нас, в Екб, у обеих крупнейших местных it-контор (Наумен и Контур) есть даже свои аудитории в УРФУ. Соответственно, компаниям поменьше будут доставаться те, кто остались, а, следовательно, рисков больше. К тому, же на стажера нужно выделять время и людей на обучение. Чаще выгоднее бывает взять уже что-то умеющего джуна.

Так как я, к тому времени, уже имел существенный опыт взаимодействия с бизнесом, то прекрасно это все понимал. И я не искал стажерские вакансии. Да, если попадались, то откликался, но намеренно не искал. У этой стратегии есть еще один плюс. Большинство самоучек и часть свежих выпускников стараются найти работу именно стажера или джуна за еду, так как боятся ответственности, требований, своей некомпетентности и т.п. Синдром самозванца as is. Из двух одинаковых джуновских вакансии с одинаковыми требованиями, та, где будет выше ЗП, наберет меньше откликов.

Основное место поиска - HH, хабр.карьера, региональные сайты поиска работы. Перед откликом, я всегда изучал вакансию, гуглил про работодателя, писал нормальное персонализированное сопроводительное письмо. Я понимал, что с моими навыками я мало кому нужен, поэтому я всегда выпрашивал дать мне тестовое задание (ИЧСХ часто получал. Настолько часто, что многие даже не стал делать). Этим я убивал сразу четырех зайцев:

1. Демонстрировал свое рвение;

2. Получал на руки реальное тестовое, а не из интернетов, с сомнительной степенью актуальности;

3. В случае успешного выполнения, меня-таки могли бы рассмотреть на вакансию;

4. Как правило, тестовое оказывалось сложнее, чем то, что я делал до этого и это очень стимулировало изучать новое и актуальное.

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

Вообще, есть масса видео на тему, как правильно оформить свое резюме и что там должно быть. Настоятельно рекомендую.

Не будет лишним нагуглить “какие вопросы задают на собеседовании junior %s developer”. НО. Ни в коем случае не зубрить. Я не встречал, чтобы просто задали вопрос, и после правильного ответа сразу переходили к следующему. Обычно это будет так: “Какую коллекцию будешь использовать если надо, чтобы в ней хранились только уникальные объекты, без дублей? Ага, а почему? А какая у нее сложность записи в О-терминологии? А скорость поиска? И раз уж начали про сложность, то какую бы ты выбрал коллекцию если надо… и т.д.”. Если соискатель просто зазубрит, то, гарантированно, поплывет.

Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

Парочка кулстори.

1. Почти сразу мне одна контора выдала тестовое. Оно, как я уже писал выше, было сложнее того, что я уже делал раньше, да и вакансия была даже не джуновская, а просто Java-разработчик. Короче, я взялся за дело.

На эту задачу я уделял, примерно, 3-4 часа в день. Деталей не помню, но что-то типа связанных справочников с парсингом данных из XML, торчащей наружу апихой и какими-то еще фичами, точно уже не помню.

Делал я это задание ровно месяц. Жутко гордился собой. Естественно, выложил в гит и отправил этим ребятам. И… меня пригласили на собеседование. Мое первое собеседование. Блять, как же я волновался.

Это был созвон в Зуме, были HR, тех-лид и опытный разработчик из отдела, куда нужен сотрудник (причем они не только реально смотрели мой код, но и развернули его у себя и потыкались). Общая часть прошла, как всегда, отлично, язык у меня подвешенный, но на технической части я просто обосрался. Я забыл вообще все. Я сидел, слышал вопрос, а у меня просто шум и звон в голове, я ничего не могу вспомнить, отчего начинаю волноваться еще больше. Замкнутый круг. Чтобы вы понимали, я не смог ответить на вопрос “что такое и зачем нужны оболочки типов” и “что такое рекурсивный метод”. Пиздец. Так стыдно мне никогда не было. Естественно, мне вежливо отказали, подумав, наверное, что писал не сам.

2. Примерно через неделю после первого собеседования, меня пригласили на второе. Там тоже было тестовое, но что-то небольшое и простое. На этот раз собеседование очное. Я думал, что раз это уже не первое, то волноваться так не буду и пройдет лучше. В этот момент психика:

Как я в 31 год стал Java-разработчиком Программирование, Java, Мат, Длиннопост

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

Что характерно, в обоих случаях, сразу как только волнение проходило, я вспоминал все ответы и находил решение. Хоть толку от этого, в этих случаях было мало, но меня это осознание успокоило - я понял, что мог пройти оба собеса.

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

Так я официально стал junior java developer. От начала обучения до трудоустройства прошло почти 9 месяцев. Про впечатления от первой рабочей недели можно написать еще такой же по объему текст. Скажу лишь, что это не идет ни в какое сравнение с тем, что я делал дома и со мной никто не сюсюкался, буквально после того, как ознакомился с проектом, пошли боевые задачи.

Получилось скомкано, ну и пихуй.
Показать полностью 9

Ответ на пост «Неужели нельзя по другому ?»

Когда только начинал искать работу программистом, откликался на все, плюс-минус, подходящие вакансии.
В числе них была одна компания, которая в нашем городе считается одной из лучших в сегменте, входит в число топовых по версии хабра и hh, короче говоря пушка-вышка-годнота.
Естественно, я туда хотел очень сильно, даже понимая, что не имею ни релевантного опыта, ни подходящего образования (я кодер-самоучка с опытом 10+ лет в розничной торговле и экономическим образованием).
В большинство других компаний, куда я отправлял своё резюме, мне либо отвечали отказом, либо давали тестовое задание.
А в эту компанию я не только отправил резюме на hh сразу на несколько вакансий, но и заполнил форму отклика на их сайте, в том числе на стажерские программы, писал на общую почту HR-отдела, и даже кому-то из рекрутеров в личку.
Результат был нулевой. Никто не написал даже шаблонный отказ - просто тишина. Что для меня было удивительно, ведь фирма топ.
Через какое-то время меня взяли уже в другую компанию и все бы ничего, но тогда я бы и не стал писать весь этот текст.
Где-то через полгода мой тимлид решил увольняться. И (внезапно!) его хантят в ту контору, в которую я так и не попал.
По прошествии месяца он мне пишет со словами, мол, порекомендовал тебя в команду, сказали отправляй резюме, вот ссылка на вакансию.
Ну ок, я откликнулся. Ииии... Тишина.
Начинаю гореть. Пишу коллеге, сообщаю, что динамят. Он даёт контакты руковода отдела. Пишу ему, тот удивляется, связывается с HR, на что та говорит, что приглашение отправляла на мою почту.
Тут уже удивляюсь я, потому что почту проверяю постоянно, папка со спамом пуста. Да и кто будет связываться с соискателем через почту, когда поступила инструкция приглашать без вопросов? Ну ок, развивать тему не стал. В итоге пригласили на собес, который я успешно прошёл, и сейчас работаю в той фирме, в которую так хотел попасть.
Что это было, я так и не понял. С девочкой HR потом заобщались, оказалась вполне адекватной.
Советую не гореть, применять бритву Хэнлона и проявлять настойчивость.

Показать полностью

На волне трейлера Дюны

На волне трейлера Дюны Дюна 2021, 2020
Показать полностью 1

Окей, Гугл

Окей, Гугл

Если кому надо

Если кому надо Steam купоны, Бесплатно

http://steamcommunity.com/id/b_0_s_c_h

Касаемо "фактов" про супергероев/события и персоналии мультфильмов/кинофильмов

Объясните мне, пожалуйста, почему информацию про вымышленных, с*ка, героев/события, происходящие в вымышленных сеттингах называют фактами?
Поправьте, но фактами вы называете чью-то фантазию? Это как если назвать фактом любую из абсурдных новостей укросми. Ведь это тоже чья-то фантазия, и у нее много почитателей, которые с упоением ждут новых выпусков и, быть может, даже коллекционируют их. Там тоже есть свои супергерои, злые гении и роковые красотки (не очень красотки да и не очень роковые). Косплеев только не хватает.
Да, у меня бомбит от т.н. "фактов".
Отличная работа, все прочитано!