Java и вино 🍷
676 subscribers
21 photos
18 links
Про Java и мой путь в IT

Связь: @sbv239
Download Telegram
Сегодня «провалил» тестовое собеседование, которое состояло из 30 вопросов

Примерно 20 вопросов взял, 10 с ошибками. Успешным считалось 22 правильных ответа

Если честно, то не понравилось от слова «совсем».

Во-первых, потому что мало времени: 1 вопрос = 1 минута это мало, особенно когда нужно решить задачу на построение SQL-запроса и выбрать 1 из очень похожих 4-х ответов.

Во-вторых, вопросы показались довольно трудными. Если что, я претендую в данной компании на учебно-стажерскую позицию (даже не Junior пока).

Бонусом, пара вопросов имели (как мне кажется) не очень корректно подобранные ответы, что несколько смутило в процессе.

И тем не менее, я доволен, что поучаствовал. Пусть лучше заваливают сложными вопросами - крепче стану. Вопросы с правильными (на мой взгляд) ответами собрал в документ (его можно комментировать), который буду по мере сил дополнять:

https://docs.google.com/document/d/1zmV27b2zZUTHPVArIT-byZzy_HbvtVst18RHVw9r5J0/edit#
👍13🔥3
К вопросу о том, где и кто я сейчас

Завтра делаю тестовое задание для одной компании. По итогу отпишусь и расскажу 💪
👍12🔥3
И снова про тестовые…

Написала девушка на LinkedIn

— Здравствуйте, ищите работу Java разработчиком? Их есть у меня
— Да, здравствуйте. Я смотрю у Вас в вакансии 3-6 лет опыта и позиция Senior

Меня конечно учили все знакомые IT-шники, что в резюме нужно откровенно врать (они это называют словом «приукрашивать», но смысл общий не меняется), но не до такой же степени, согласитесь.

Морально я разумеется к этому готов (приукрашивать), но тратить свое и чужое время на откровенно бестолковую переписку не хочу.

— У меня нет опыта 3-6 лет, резюме выложено на странице и вообще я бы Junior’ом хотел бы попробовать.
— Нет проблем, можно и Junior, но тогда надо сделать тестовое задание

Опа! — подумал я. Не послали и уже хорошо.

— Давайте задание!
— Высылаю

Если кому-то интересно, то задача была следующая:

Есть файл CSV c данными в определенном формате, есть файл JSON с данными в том же формате. Нужно написать консольное приложение с использованием Spring и Maven (обязательно), которое бы конвертировало данные и выводило их в единый JSON-формат. Необходимо проводить обработку и вывод данных с использованием многопоточности.

Вот собственно и ответ на вопрос куда я пропал.

1 день работы + 1 день на переосмысление и рефакторинг. Задачу сделал, в GitHub выгрузил, жду ответа 😀
👍164
А давайте я поделюсь планами на ближайшую неделю

— LeetCode

Хочу порешать алгоритмические задачи. У меня с ними проблемы, как выяснилось — все эти переборы массивов нужно научиться делать по красоте

— Тестирование

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

— Функциональное программирование

Нужно совершить над собой усилие и закончить этот курс (тем более что осталось там не более 20%)

— Базы данных

Тоже висит курс по SQL незаконченный (на пару часов времени) — не люблю такие незакрытые гештальты.

— Если удастся при этом попасть на какое-то собеседование буду рад

Но сегодня никакого программирования. Отдых! Сегодня…

…сегодня я позанимаюсь английским 🙈
👍10
Ситуация на рынке

Я активно пользуюсь двумя источниками: LinkedIn и HH. И вот какое у меня складывается ощущение спустя пару месяцев активного мониторинга и попыток «прижаться» хоть куда-то.

Сейчас всем нужны разработчики уровня middle и senior — за них идет борьба, потому что их мало. Если кому-то нужен Junior то требования к нему применяются такие, что становится немного не ясно, зачем компании с такими джунами миддлы и сеньоры.

Я в некотором недоумении если честно и смущении. Но! я бы не хотел, чтобы вы подумали, что я жалуюсь. Отнюдь. У меня есть цель и я к ней иду, просто путь чуть более холмистый оказался 😀
👍21
Работать ли бесплатно (даже не за еду) новичку?

Хочу сказать сразу, круто изменив свою жизнь и начав фактически с нуля заниматься новой для себя деятельностью, я не рискую умереть с голоду, а мой ребенок остаться в драных носках. Надеюсь.

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

Сейчас у меня есть выбор: продолжать искать место, где в меня поверят (а это в их интересах) и сразу начнут платить или же попробовать устроиться куда-то бесплатно, чтобы через условную стажировку получить опыт и реальный оффер. Одно ограничение — это должно быть мне интересно.

Сейчас я прорабатываю оба варианта, какой из них в итоге вступит в силу покажет время.

Второй вариант немного отодвинет (на пару месяцев) меня от реальной цели, но приведет к ней с большей гарантией (как мне кажется), поэтому мое мнение — да! Я готов поработать бесплатно какое-то время.

А вы что думаете?
👍2
Простите, но я скоро стану парсер-мастером

Прилетело очередное тестовое задание после непродолжительного собеседования.

Необходимо написать программу, импортирующую данные из xml-файла в БД, с учетом следующих ограничений:

— использовать чистую java (без spring)
— для импорта использовать JDBC
— игнорировать дубли. Они могут быть в исходном xml или уже присутствовать в БД. Реализация не должна пропускать дублирующие данные

Тестовые данные я формирую тут: https://www.mockaroo.com/

Для реализации я выбрал PostgreSQL и HikariCP (для работы с пулом соединений)

Вообще мне такой подход (выполнения тестовых) очень нравится последнее время: я через практику осваиваю различные архитектурные паттерны и прикладные возможности библиотек.

Like it 😀
👍17🔥6🎉1
Не успеваю тестовые задания выполнять. Прилетает новая порция "работы" уже по другому направлению 🙈
👍14
Ребят, хочу спросить у вас

Какие курсы вы считаете прямо must-have из тех что проходили? Платные и нет.

Для меня сейчас критичны не новичковые вещи, а погружение: алгоритмы, структуры данных, тестирование, прикладные фреймворки и т.д. Можно прямо со ссылками

Начну: Data Structures and Algorithms: Deep Dive Using Java (есть на рутрекере)
👍3
Сегодня прилетело уведомление в Госуслугах

Можно получить неплохую субсидию (до 100%) от государства (тут я бы сказал «бери пока дают») на обучение. Много IT-специальностей.

По Java:

— Автоматизатор тестирования на Java (Яндекс)
— Java-разработка для начинающих (Нетология)

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

Мне новичковые курсы уже не подходят в силу того, что уровень знаний у меня уже выше, но если кто совсем начинает, то рекомендую озадачиться.
👍4
Про удаленку

Знаете, давно хотел вам рассказать, почему ЕЩЕ я решил «свалить» и уйти в IT с головой. Удаленка!

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

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

Я люблю бегать. Знаете, когда лучше всего бегается? Днем! Кто-то обедает, а я бегаю. Потом прихожу, привожу себя в порядок, только потом обедаю и дальше за компьютер. И можно допоздна.

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

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

Будьте счастливы!
👍40🔥74
В общем, я взял два новых курса. Постараюсь до осени в любом случае их как-то пройти

1) Data Structures and Algorithms: Deep Dive Using Java

https://www.udemy.com/course/data-structures-and-algorithms-deep-dive-using-java/

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

2) Testing Spring Boot: Beginner to Guru

https://www.udemy.com/course/testing-spring-boot-beginner-to-guru/

Судя по отзывам, очень неплохой курс. Для меня тестирование оказалось большой проблемой во всех проектах, к которым я прикладывал руку. Нужно повышать скилл.



32 евро можно добавить к моим расходам на обучение
Привет!

Небольшой вопросик из последнего теста (просто разминка для ума и повод повторить теорию, если не знаете). Что будет выведено на экран?

A : 1
B : 2
C : Будет выброшено исключение
D : Не скомпилируется

Правильный ответ:

A

Дело все в том, что Java всегда передает параметры по значению. Метод change работает не с исходной ссылкой value, а с её копией. Это раз.

Два. ++i можно переписать как i = i + 1, что равнозначно созданию "нового" объекта (в силу иммутабельности классов-оберток) внутри области видимости метода change (это видно, если запустить дебаг).
👍18
Как стать уверенным разработчиком на главном языке «энтерпрайза» Java?

Например, записаться на курс по Java-разработке от Хекслета.

Курс поможет освоить язык, алгоритмы и структуры данных, работу с микросервисами, фреймворком Spring Boot, базами данных и инфраструктурой.

На Хекслете курс спроектирован так, что его невозможно просто «отсидеть» или «прослушать». Именно поэтому студенты могут получить оффер ещё во время обучения, а некоторые работодатели указывают их курсы как преимущество при найме.

— Узнайте подробнее о программе: https://clck.ru/gexZM

#реклама
👍3
Рапортую

Как сказал один мой друг «ты по части блогинга большой специалист уже»

И правда, смешно. Первые свои деньги на программировании я заработал разместив рекламу о курсах по программированию в блоге о программировании.

Окупил курс (на Udemy я покупаю только когда скидки большие, беру сразу пару курсов), в который и погрузился сейчас с головой — Testing Spring Boot: Beginner to Guru. Чувак, кстати, тоже питерский как и я, но из флоридского СПб 😀

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

— парсер JSON + CSV → JSON на Spring (ссылка на пост)
— парсер XML → PostgreSQL на голом JDBC (ссылка на пост)

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

3. Оба раза — «Вы хороший, приходите попозже». Приду, конечно, если по пути не сверну…

4. В пятницу очередной собес, на английском. Стремно. Кстати, в том же месте где я один раз уже не прошел тестирование. Со второго раза справился лучше (об этом я тоже напишу — есть над чем похихикать).

Stay tuned 😀
🔥10👍5👏4😁1
Хотите верьте, хотите нет, но сейчас будет еще один каминг-аут

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

А у вас как?
😁231🎉1
😁20👍5👏1
Текучка

— Меня заблокировал Udemy. Видимо, ему не нравится что я продолжаю проходить курсы и находиться в России, выходя под VPN. Пытаюсь разобраться с этой проблемой. 2 курса оплаченных висят…

— Прошел собеседование на английском, но результаты пока не сказали, завтра еще один, но на русском.

— Немного сбавил обороты, потому что начала голова уже пухнуть от всякой учебы. Поймал себя на мысли, что многие вещи в котелке перестали укладываться ровными полочками и теперь находятся там в виде винегрета.

— Хочу попробовать взять курсы Skyeng для разнообразия быта. Код писать почти перестал, что плохо. Надо возвращаться в струю.

Специально сгустил немного краски, а то могло показаться, что все так здорово и замечательно у меня шло 😃
👍15👏2
Сейчас напишу правду от которой, возможно, кому-то станет неприятно

Я смотрю многие ролики на YouTube про java-собеседования. Все в них классно: и конкурсы, и вопросы, и задачки, и ответы. Не классно только одно — итоговое резюме.

«Ты молодец, очень неплохо, хорошие знания». Может быть в личке кандидату потом и объясняют его место в пищевой цепочке более детально, но публично это, увы, не происходит.

Мое мнение, что реальная правда умалчивается: 80% собеседуемых не то что не junior, но даже на trainee (стажер) претендовать не должны. Полная каша в голове и, главное, непонимание основ. Приходите через пол года, пожалуйста.

Может быть я и сам такой (мне сложно корректно оценить свой уровень), не спорю.

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

Моя претензия не к уровню вопросов. После просмотра многих интервью может сложиться иллюзорное впечатление, какого объема знания и качества ответы необходимы, чтобы устроиться на работу и пройти реальное собеседование. Не поддавайтесь соблазну поверить в это...
👍15🎉1
Моя (моя) самая главная рекомендация по собеседованиям

Ручка и листочек (блокнотик и карандаш). Предупредите, что будете отвлекаться изредка.

1. Записывайте вопросы, на которые вы не знаете ответа. По возможности, просите пояснений у интервьюера (что он хотел услышать в качестве ответа).

2. После интервью проработайте эти темы.

3. Вы стали лучшей версией себя.
👍24