Как стать автором
Обновить
8
0
Павел @na9ort

Java Developer

Отправить сообщение

Java Digest # 10

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров5K

Всем привет! ? ? ?

Мы — Java-разработчики Тинькофф: Андрей Орлов, Арсений ЗайцевКонстантин Максимов, и Константин Польщиков. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и решили делиться этим не только с коллегами, но и со всем сообществом.

?В этот весенний период, наполненный свежестью и обновлениями, ждите обзоров состояния jextract и новых функций терминала в JetBrains IDEs, включая его бета-версию. Готовьтесь к версии 0.8.0 Spring AI, где есть новые функции и улучшения. Вдохните аромат цветущей весны, пока мы погружаемся в обзор различных Java Enhancement Proposals (JEP), включая поддержку Markdown в JavaDoc, новые возможности для компиляции и выполнения Java-кода, а также превью функций Java 22. Вдохновляйтесь, ведь весна в мире Java приносит с собой обновления и новые возможности для всех нас. Stay tuned! ?

Читать десятый выпуск
Всего голосов 18: ↑17 и ↓1+17
Комментарии0

Почему Senior Developer'ы не могут устроиться на работу

Время на прочтение3 мин
Количество просмотров153K


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


После первичного созвона меня отправили на сторонний сайт (HackerRank), чтобы я решил три небольших задачки за 1 час. Для меня это был первый подобный опыт. Первые две задачки были простыми, но третья оказалась посложней. Когда время подошло к концу, моё решение не проходило все тесты, а только где-то 8 из 10 необходимых.

Читать дальше →
Всего голосов 165: ↑151 и ↓14+137
Комментарии909

Мягкие ссылки на страже доступной памяти или как экономить память правильно

Время на прочтение13 мин
Количество просмотров162K
image
Все java-разработчики, рано или поздно, встречаются с пресловутой ошибкой OutOfMemoryError. 
После этой встречи мы начинаем более бережно относится к используемой памяти, экономить ее. Начиная с версии 1.2 в Java появился пакет java.lang.ref.* с классами SoftReference, WeakReference, PhantomReference. Далее я расскажу вам о том, как помогут эти классы в борьбе с OutOfMemoryError. И что более интересно, приведу реальные примеры их использования. Начнем.
Читать дальше →
Всего голосов 67: ↑62 и ↓5+57
Комментарии23

Моки и стабы

Время на прочтение8 мин
Количество просмотров107K
Существует категория классов, которые тестировать весьма просто. Если класс зависит только от примитивных типов данных и не имеет никаких связей с другими бизнес-сущностями, то достаточно создать экземпляр этого класса, «пнуть» его некоторым образом путем изменения свойства или вызова метода и проверить ожидаемое состояние.

Это самый простой и эффективный способ тестирования, и любой толковый дизайн отталкивается от подобных классов, которые являются «строительными блоками» нижнего уровня, на основе которых затем уже строятся более сложные абстракции. Но количество классов, которые живут в такой «изоляции» не много по своей природе. Даже если мы по нормальному выделили всю логику по работе с базой данных (или сервисом) в отдельный класс (или набор классов), то рано или поздно появится кто-то, кто эти классы будет использовать для получения более высокоуровневого поведения и этого «кого-то» тоже нужно будет тестировать.

Но для начала давайте рассмотрим более типичный случай, когда логика по работе с базой данных или внешним сервисом, а также логика обработки этих данных сосредоточена в одном месте.
Читать дальше →
Всего голосов 43: ↑38 и ↓5+33
Комментарии14

Есть ли польза от решения алгоритмических задач на LeetCode?

Время на прочтение8 мин
Количество просмотров87K

Пожалуй каждый программист, который сталкивался с вопросом: "А как устроиться на работу в FAANG?" - получал ответ, что ему нужно разобраться с алгоритмами, со структурами данных и прорешать порядка 300-400 задач на leetcode по алгоритмам.

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

Поэтому, в этой статье я постараюсь дать ответ, насколько это может быть полезным для работы и развития, и как может сказаться на карьере.

Читать далее
Всего голосов 51: ↑43 и ↓8+50
Комментарии182

Руководство по версиям и возможностям Java

Время на прочтение12 мин
Количество просмотров162K

Здесь есть все, что вам нужно знать о различных версиях и функциях Java.



Java 8, Java 11, Java 13 — какая разница?


Вы можете использовать это руководство, чтобы найти и установить последнюю версию Java, понять различия между дистрибутивами Java (AdoptOpenJdk, OpenJDK, OracleJDK и т.д.), А также получить обзор возможностей языка Java, включая версии Java 8-13.


Примечание переводчика
09 апреля 2020 г. Марко опубликовал новую версию Руководства, в которую добавлено описание Java 14.
Перевод новой версии Руководства предлагается Вашему вниманию.
Читать дальше →
Всего голосов 23: ↑22 и ↓1+29
Комментарии14

Как я несколько лет боролся с прокрастинацией и победил: полное практическое руководство

Время на прочтение8 мин
Количество просмотров298K

Постоянно откладываешь дела на потом и не видишь в этом проблемы? Мне это знакомо. Расскажу как не повторить моих ошибок и почему пора это прекращать. Не откладывай эту статью на потом!

Начать читать
Всего голосов 125: ↑100 и ↓25+95
Комментарии174

Польша: гайд для интересующихся

Время на прочтение13 мин
Количество просмотров27K

Здравствуйте, дорогие хабровчане! Недавно я прочитал исчерпывающий гайд по Германии, и захотел написать что-то подобное для Польши. В статье я постараюсь описать плюсы и минусы переезда (по крайней мере для айтишника), примерную стоимость жизнь и что стоит сделать в первую очередь после переезда. Конечно подобных статей уже написано немало, но большинство либо написаны агентствами по эмиграции и не отличаются объективностью, либо просто описывают историю успешного успеха и им не хватает цифр. Разумеется, и эта статья тоже не может быть максимально объективной, но я все же попробую.

Читать далее
Всего голосов 22: ↑19 и ↓3+21
Комментарии76

Как понять, что перед вами плохой разработчик

Время на прочтение12 мин
Количество просмотров179K

Мало просто сменить свою сферу работы на IT, желательно еще и стать хорошим разработчиком. Бывший тимлид и консультант Александр Усков рассказывает, как понять, что перед вами плохой разработчик и что с ним вообще можно делать

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

Читать далее
Всего голосов 263: ↑159 и ↓104+93
Комментарии403

Mockito и как его готовить

Время на прочтение21 мин
Количество просмотров308K

О статье


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


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

Читать дальше →
Всего голосов 16: ↑16 и ↓0+16
Комментарии11

Подготовка к Spring Professional Certification. Контейнер, IoC, бины

Время на прочтение10 мин
Количество просмотров108K

Доброго времени суток, Хабр.


Сегодня я решил представить вам перевод цикла статей для подготовки к Spring Professional Certification.


Это перевод только первой статьи, если он зайдет аудитории, я продолжу выпуск переводов.  


Зачем я это делаю, ведь уже есть куча профильных материалов?
  1. Часто в них информация не структурирована, не собрана, или не актуальна
  2. Молодые разработчики могут не знать английский. Этот цикл можно использовать не только для сертификации, но и для самообучения/повторения материалов.
  3. Этими материалами можно пользоваться при подготовке к собеседованию, т.к. они выстроены в виде вопросов и ответов.
  4. Важное, и самое главное преимущество — этот QA сделан из вопросов из  официального Study Guide от Pivotal. 

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

Оглавление
  1. Внедрение зависимостей, контейнер, IoC, бины
  2. AOP (аспектно-ориентированное программирование)
  3. JDBC, транзакции, JPA, Spring Data
  4. Spring Boot
  5. Spring MVC
  6. Spring Security
  7. REST
  8. Тестирование

Читать дальше →
Всего голосов 30: ↑29 и ↓1+28
Комментарии53

Мой опыт собеседования в Amazon

Время на прочтение6 мин
Количество просмотров62K

О чём эта статья

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

Это история о моем опыте собеседования в Амазоне, почему мне в целом не понравилось по сравнению с другими FAANG. Так же тут будут ответы на “а что конкретно спрашивали на интервью, какие были задачки, что на систем дизайне было”, потому что мне не дали подписать NDA, все с пруфами, скринами и прочее.

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

Начало, предложение от Amazon

В один прекрасный день 6 сентября, мне пришел такой сообщение в Линкедин.

Читать далее
Всего голосов 75: ↑72 и ↓3+87
Комментарии177

Дай мне зла, начальник

Время на прочтение2 мин
Количество просмотров7K

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

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

Чтобы как-то продвинуться в работе, нужно приложить усилия сверх привычного. Для этого нужна добавочная сила воли. Но её нет. И чё, как быть? Всё, ничего не получится?

Читать далее
Всего голосов 35: ↑19 и ↓16+7
Комментарии30

Почему DevOps и Agile не работают в России, часть первая, Enterprise

Время на прочтение5 мин
Количество просмотров35K

Пару лет назад, человек из Wrike написал серию статей про красную корпоративную культуру, причём во второй части буквально в 3 абзацах был весь смысл 4 статей. Было написано очень завуалировано и мягко, я же сегодня распишу, по сути, этот абзац в целую статью на примере крупных игроков российского рынка, в которых я поработал, сравню с малым бизнесом, в котором я работал ранее, а также с гос. структурами (спойлер, отличии с последними – минимальное).  

Я не буду таким добрым как автор там, и напишу про многие вещи прямо.

Читать далее
Всего голосов 59: ↑37 и ↓22+24
Комментарии100

Как войти в IT?

Время на прочтение8 мин
Количество просмотров121K

Цель статьи помочь желающим войти в IT, либо показать, что оно им не нужно.

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

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

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

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

Читать далее
Всего голосов 46: ↑35 и ↓11+35
Комментарии149

Настраиваем GitLab Container Registry

Время на прочтение3 мин
Количество просмотров28K

В этой статье мы рассмотрим, как настроить реестр образов GitLab Container Registry, находящийся за обратным прокси сервером NGINX. Предполагается, что у вас уже установлен GitLab с помощью пакета Omnibus. Согласно документации, Container Registry можно настроить на том же домене, на котором работает сам GitLab, но в случае работы GitLab за прокси сервером, необходимо завести отдельный домен для реестра образов, чтобы избежать конфликта доменных имен при настройке виртуальных хостов в GitLab Nginx.

Реестр образов будет доступен по адресу: registry.example.com. Добавляем А запись для домена реестра в DNS. Приводим конфиг виртуального хоста на сервере обратного прокси к следующему виду:

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии3

Мой опыт и советы по сдаче экзамена Certified Kubernetes Application Developer (CKAD)

Время на прочтение5 мин
Количество просмотров14K
Совсем недавно я успешно сдал экзамен Certified Kubernetes Application Developer (CKAD) и получил сертификат. Сегодня хочу рассказать о самой процедуре сертификации и о том, как я к ней готовился. Для меня это был интересный опыт сдачи экзамена онлайн под пристальным наблюдением экзаменатора. Тут не будет ценной технической информации, статья имеет сугубо повествовательный характер. Также у меня не было большого бэкграунда в работе с Kubernetes и не было совместной подготовки с коллегами, я учился и тренировался сам в свободное от работы время.

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

Если вы все еще думаете, что Kubernetes это слишком сложно и это не для вас, прошу под кат.
Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии2

7 правил от опытного тимлида, которые помогут добиться успеха не только в IT

Время на прочтение4 мин
Количество просмотров23K

Привет. Меня зовут Андрей Костылев. Я работаю в IT более 15 лет.  За это время вырос из рядового программиста в тимлида и CEO проектов. Сейчас наш основной стартап — система автоматизации X24:ERP, которая помогает довести производственные процессы до совершенства.

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

Читать далее
Всего голосов 9: ↑5 и ↓4+7
Комментарии10

Как служится в белорусской ИТ-роте: честный рассказ дембеля

Время на прочтение7 мин
Количество просмотров109K

В Беларуси вот уже больше трех лет у программистов, которых признали годными для службы в армии, есть шанс отдать долг Родине, сидя за клавиатурой и монитором. В Военной академии Минобороны Беларуси служит так называемая «ИТ-рота», в которую регулярно набирают призывников на конкурсной основе. Желающих променять суровые армейские будни на написание кода — очень много. Но мне повезло пройти строгий отбор и отслужить в самом необычном военном подразделении страны. Об этом я и хочу рассказать в этом посте.

Читать далее
Всего голосов 217: ↑157 и ↓60+142
Комментарии639

Минусы эмиграции: валить или не валить

Время на прочтение14 мин
Количество просмотров73K

Там у них пока что лучше бытово,
Так чтоб я не отчебучил не того —
Он мне дал прочесть брошюру как наказ,
Чтоб не вздумал жить там сдуру, как у нас.
(с) В. Высоцкий (Инструкция перед поездкой за рубеж)

Хорошо там, где нас нет, и у чужого барана яйца больше, и яблоки у соседа вкуснее.

Мне довелось пожить приличное время на Мальте, в Лондоне, Словении, а также попутешествовать. В основном будет про Словению и немного про другие страны. В новой стране придётся столкнуться с целом рядом особенностей, которых вы не ожидали. Что-то будет позитивное, но будет и много негативного.

Очень много статей написано про эмиграцию и как там здорово, и это правда. Но очень мало статей про минусы. Про плюсы эмиграции пишут статьи либо помогайки по ВНЖ либо люди в эйфории в первые год переезда пока они ещё не успели столкнуться с действительностью во многих аспектах жизни и у чужого барана яйца больше. А через 7-10 лет жизни как-то никто не пишет почти. Восполню этот пробел. 

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

Конечно, найдутся и те, которые скажут, что я всё вру и отрабатывают свои 15р. Уж не знаю почему они про 15, а не про 30 пишут. Очень много людей почему-то видит мир в двух цветах свой-чужой. Кто-то вполне вероятно видит иначе. Кто-то скажет, что в России ещё хуже. Может быть где-то в России и ещё хуже, но важно же знать при переезде, что где-то не сильно лучше. Замечания и конструктивные аргументы только приветствуются для более полной картины. 

Читать далее
Всего голосов 168: ↑99 и ↓69+56
Комментарии862
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Минск, Минская обл., Беларусь
Дата рождения
Зарегистрирован
Активность