Size: a a a

2021 July 24
middlejava
#apache #kafka #pulsar #messaging #broker #kip #opensource

Еще 5 причин выбрать Apache Pulsar вместо Apache Kafka

Apache Kafka
- крайне популярное в настоящий момент решение для обмена сообщениями. Тем более интересно посмотреть какие альтернативы для нее существуют. Особенно декларируемые, как более интересные по ряду параметров.

Перевел статью-сравнение Apache Pulsar и Apache Kafka. Статья в некоторой степени рекламная, т.к. написана заинтересованным лицом, но как минимум, возбуждает интерес копнуть глубже. Поехали.

https://habr.com/ru/post/569406/

@middle_java
t.me/middle_java
источник
middlejava
#junior #developer #job

В комментах был задан вопрос:

Подскажите, пожалуйста, что попрактиковать java разработчику, работал с Spring, а то выставляю резюме и не берут никуда (начинаю сферу в it)

Предлагаю обсудить.

В 17-м году у меня стоял такой же вопрос.
Я прошел в 16м году несколько курсов и решил что сразу после окончания пойду работать джава джуном.
Был полный игнор моего резюме.
Даже предлагал компаниям чтобы я им платил, чтобы они взяли меня стажером (сейчас понимаю что это было бредовое предложение😄)
Причина - стажер - это убытки для компании. На него нужно тратить ресурсы старших разработчиков.
Отсюда первый вывод: искать работу джуном нужно в крупных компаниях в которых процессы позволяют выделять часть времени старших разработчиков на внепродуктовые задачи, например в крупных банках.

Разработка ПО это не только программирование. Само программирование занимает дай бог 40% от всей деятельности. Вокруг этого куча других активностей: код стайл, пайплайны, работа с контейнерами, отладка, сниффинг траффика, чтение логов, работа с операционными системами, тесты, написание заявок, получение доступов, кубернетис, конфиги и многое многое другое.
Вот именно этого нет у джуна.

Не найдя работу джуном, я пошел на курсы нагрузочного тестирования.
После чего стал инженером нагрузочного тестирования.
Но максимально старался использовать программирование в этой работе: писал заглушки, мониторинги, автоматизаторы создания профилей НТ и др. А уже через 1,5 года стал джуном разрабом.
Отсюда следующий вывод: не берут в джуниор девелоперы - попробуй в смежные отрасли, потом можно водить носом, общаться с людьми, использовать программы горизонтального роста, принятые в текущей компании.
И еще один вывод: пройти курс на котором будет не только разработка но и все смежные активности.
Например у Гриши Кислина есть очень неплохой и при этом недорогой практический курс с бэком, фронтом и деплоем.
Про Отус вроде как неплохие отзывы, но я не могу подтвердить, не сталкивался. И вроде дороже.

Еще одно возможное направление: сделать резюме на ЛинкедИне, добавиться к кому-нибудь с большим количеством контактов (можно ко мне) и заддосить своим *хорошо сделанным* резюме сеть контактов.
Мне регулярно попадаются там вакансии в которых хотят джунов. Правда требования совсем не джунские.
Следующий вывод: не надо строго ориентироваться на требования вакансии. Поиск работы для джуна - это всегда элемент удачи. А удача - это награда для смелых 🙂 Видишь что-то более менее похожее на твои навыки (не обязательно на 100% - в работе изучишь) - пишешь красивую сопроводиловку и засылаешь.
Из сопроводиловки должно быть понятно что ты супер-мотивирован, что у тебя есть глубокая база, у тебя есть проекты на гитхабе которые ты можешь показать, что работодатель не потратит на тебя много ресурсов, обучая тебя, и что ты не сбежишь сразу как только наберешь определенный уровень компетенций.

@middle_java
t.me/middle_java
источник
2021 August 13
middlejava
Необычное мероприятие

<Природа кода>
Бесплатный кемпинг-уикенд в Переславль-Залесский вместе с Х5 Tech

Х5 Tech - это цифровая команда Х5 Group, которая разрабатывает технологичные и инновационные  продукты для улучшения качества жизни миллионов покупателей.
Мы цифровизируем ритейл - одну из самых динамичных отраслей в мире, и прежде чем сделать новый прорыв, хотим замедлиться, поделиться нашим опытом и услышать вас.

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

Для кого IT-фанаты, энтузиасты и визионеры по стекам Java/JavaScript/Python, уровня middle&senior

❗️Трансфер, питание, проживание и активити - все бесплатно для участников слета.

➖➖➖

🗓 11-12 сентября

📍 AZIMUT Отель Переславль 4*

✅ Регистрация на мероприятие
источник
2021 August 23
middlejava
#jug #java #bigdata #meetup #flink #kafka

26 августа в 18:00​ компания IT_One вместе с JUG Ru Group проведет​ бесплатный онлайн митап по Big Data и Java.

На «IT_One Meet Up: Java and Big Data» эксперты будут говорить о технологиях, инструментах, методах и многом другом, чем живут дата-специалисты.

В программе:
— Максим Стаценко, «Обзор технологий хранения больших данных. Плюсы, минусы, кому подойдет»;
— Вадим Опольский, «Apache Flink vs Свой Java Код. Для приземления данных из Kafka»;
— Круглый стол c Максимом Юнусовым, Вадимом Опольским и Максимом Стаценко, на котором спикеры обсудят системы хранения данных, архитектуры и разные подходы к работе с Big Data.

А еще вас будет ждать дискуссионная зона и розыгрыш подарков среди участников​.

Участие бесплатное.
Регистрация

@middle_java
t.me/middle_java
источник
2021 August 27
middlejava
#java #meetup #offline

#6: OOP without DTO

1. Элегантный REST: избавляемся от DTO в Spring MVC - Emil Fataliev
Как устроен Spring MVC, как выполняется сериализация ответов и десериализация параметров запроса. Как избавиться от DTO слоя и сделать проект на Spring’e более объектно ориентированным, рассмотрим несколько возможных вариантов и их плюсы/минусы. Посмотрим ближе на объектно ориентированный фреймворк takes и на то, как там решается эта проблема.

2. Veil Objects - Yegor Bugayenko
DTO зло, но они неизбежны, особенно в web приложениях. Однако, зачастую трудно избавиться от них совсем. Я предложу решение, которое создал несколько месяцев назад и уже внедрил в двух продуктах.

Будет вкусный ужин, но количество мест ограничено, регистрируйтесь поскорее.

➖➖➖

🗓 30 сентября, 18:30-20:40 мск, Четверг

🌐 ОНЛАЙН
📍 ОФЛАЙН Москва, Мясницкая улица, 24/7с2, Creative Diaspora

✅ Регистрация на мероприятие

@middle_java
t.me/middle_java
источник
2021 September 05
middlejava
#systemdesign #interview #education

Нашел шикарный бесплатный курс по проектированию систем.
Основной путь курса достаточно краткий, но для каждой темы дается ссылка для углубленного изучения.
Последнее обновление от 9-го мая 2021 года.
Есть русский перевод, но от 2017-го года. Изучать базовые вещи можно начать с него, потом перейти к английскому варианту, если есть проблемы с английским.
В составе курса разобраны примеры реализации архитектур Pastebin.com, ленты и поиска Facebook, поискового робота, Mint.com и многих других.
Среди тем: балансировка нагрузки, масштабируемость, реверс-прокси, работа баз данных, вопросы для интервью и т.д. и т.п.
В-общем, крайне рекомендую.

The System Design Primer
https://github.com/donnemartin/system-design-primer

Русский перевод:
https://docs.google.com/document/d/1w3qb6SS1Hycyce5Fg5mVMdzkGYXTRskSf57IoD98ZQw/edit

@middle_java
t.me/middle_java
источник
2021 September 10
middlejava
#joker2021 #java #conference #online #techtrain

Java-конференция Joker 2021
25-28 октября
Онлайн

Четыре дня выступлений самых известных специалистов из мира Java, дискуссии, общение с коллегами со всего мира, и многое другое.

На конференции выступят: Josh Long, Алексей Шипилёв, Matt Raible, Дмитрий Константинов, Александр Нозик, Павел Финкельштейн и другие.

Для нашего канала организаторы сделали промокод на Personal Standard билет: middlejava2021JRGpc

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

А еще у вас есть возможность протестировать платформу, на которой будет проходить Joker.

Приходите на бесплатный онлайн-фестиваль TechTrain, который пройдет 18 сентября.
На нем вы сможете увидеть 8 докладов по разным направлениям. Будет и про Java, и про Kotlin, и про многое другое.
Участие бесплатное, регистрация по ссылке.

@middle_java
t.me/middle_java
источник
2021 September 13
middlejava
💥С Днём Программиста!💥

Друзья, поздравляю с нашим праздником!
Пусть работа приносит удовольствие, а в своём труде вы видели смысл и полезность!
💻🥂🎉🔥

@middle_java
t.me/middle_java

#programmersday
источник
2021 September 15
middlejava
#java17 #lts #jep

Вышел очередной LTS-релиз Java: Java 17

Release notes:
https://jdk.java.net/17/release-notes

Release notes с подробным описанием:
https://builds.shipilev.net/backports-monitor/release-notes-17.html

Дифы в API по сравнению с 16-й версией:
https://javaalmanac.io/jdk/17/apidiff/16

18.09.2021 Тагир расскажет об изменениях с Java 11 по Java 17 включительно:
https://techtrain.ru/2021/autumn/talks/4qzithrklltim6fzu97vkk/

Главный архитектор Java Platform Group в Oracle размышляет о том, чтобы сократить релизный цикл LTS до двух лет:
https://mreinhold.org/blog/forward-even-faster

Список JEP'ов начиная с версии 11:
https://openjdk.java.net/projects/jdk/17/jeps-since-jdk-11

Документация:
https://docs.oracle.com/en/java/javase/17/index.html

@middle_java
t.me/middle_java
источник
2021 September 18
middlejava
источник
middlejava
#coroutines #webflux #java #kotlin #spring

Kotlin coroutine, Spring WebFlux

Доклад senior-разработчика Raiffeisen банка Роберта Мирзаханяна с конференции <code/R>

Содержание доклада - на картинке.
Особенно интересно тем, кто владеет Java и щупает Kotlin: можно увидеть реализацию одной задачи на обоих языках.

Видео кропнуто по размеру код-окна, поэтому ведущего и Роберта видно по частям, простите ребята)

@middle_java
t.me/middle_java
источник
2021 September 24
middlejava
#kubernetes #slurm #education #free

Бесплатный трехмесячный курс
Kubernetes для разработчиков

Ну просто шикарная новость:
01.10.2021 начнётся бесплатная Вечерняя Школа Kubernetes для разработчиков.
24 онлайн-лекции и 22 практические работы в кластере MCS.

Обещают научить использовать преимущества и учитывать ограничения Kubernetes, поднимать инфраструктуру для тестирования и экспериментов, выкатывать и эксплуатировать сервис, не дожидаясь команды DevOps. Сможете быстро спасти продакшн и влиять на успешность сервиса, уменьшая time-to-market.

Программа курса:

Урок 1  (1 октября):  Введение в Kubernetes
Урок 2  (5 октября):  Создание своего кластера в MCS. Абстракции приложения
Урок 3  (7 октября):  Абстракции приложения (продолжение)
Урок 4  (12 октября): Хранение конфигураций
Урок 5  (14 октября): Хранение данных
Урок 6  (19 октября): Kubernetes и работа с данными
Урок 7  (21 октября): Сетевые абстракции
Урок 8  (26 октября): Устройство кластера
Урок 9  (28 октября): Oneshot задачи
Урок 10 (2 ноября):   Альтернативы Deployment
Урок 11 (4 ноября):   Повышаем удобство работы разработчика с помощью OneAPI
Урок 12 (9 ноября):   Авторизация в кластере
Урок 13 (11 ноября):  Особенности ЯП в Kubernetes
Урок 14 (16 ноября):  Локальная разработка в Kubernetes
Урок 15 (18 ноября):  Дебаг приложений в кластере
Урок 16 (23 ноября):  Решения для Deep & Machine Learning
Урок 17 (25 ноября):  Автоскейлинг в кластере Kubernetes
Урок 18 (30 ноября):  Темплейтирование приложений
Урок 19 (2 декабря):  Использование возможностей Kubernetes в своих приложениях
Урок 20 (7 декабря):  Архитектура современных процессоров и как устроен ЦОД
Урок 21 (9 декабря):  CI/CD. Часть 1
Урок 22 (14 декабря): CI/CD. Часть 2
Урок 23 (16 декабря): Device-plugins для Kubernetes
Урок 24 (21 декабря): Подведение итогов

Каждое занятие начинается с 30 минут теории. Потом практика, во время которой студент повторяет за преподавателем операции в кластере с заданными параметрами в личном кабинете MCS.  После занятия выкладывают запись урока, презентации и текст задания, чтобы самые усердные студенты могли закрепить тему и повторить пройденный материал.

Регистрация здесь:
https://slurm.io/kubernetes-for-developers-school

@middle_java
t.me/middle_java
источник
2021 September 25
middlejava
#java #spring #springone #conference

В открытом доступе опубликовали все видео докладов с конференции Spring One

https://youtube.com/playlist?list=PLgGXSWYM2FpMzzVF9m_puuVD3a16mElO8

@middle_java
t.me/middle_java
источник
2021 September 27
middlejava
#interview #ithumor

Итак, вас послали провести техническое и не очень интервью, но опыта у вас в этом деле мало?

Не беда, здесь мы расскажем что обсудить на интервью и провести его удачно!

Итак.

https://twitter.com/aarexer/status/1440588929640525835?s=09

@middle_java
t.me/middle_java
источник
2021 September 30
middlejava
#linux #performance #clocksource

При переводе СУБД Cassandra c CentOS на Ubuntu в окружениях, выполняемых в облаке Amazon EC2 на базе Xen, компания Netflix столкнулась с проблемами производительности. После миграции нагрузка на CPU увеличилась на 30% и примерно на столько же возросли задержки при выполнении операций записи. Как оказалось, производительность приложений, интенсивно запрашивающих информацию о времени, очень сильно зависит от выбранного в системе источника точного времени.

Подробнее

Source

@middle_java
t.me/middle_java
источник
middlejava
#meetup #objectthinking #offline

Сорри за короткую паузу между сообщениями, но сегодня вечером, в 19:00 по адресу Москва, Мясницкая 24/7, стр. 3 (метро Чистые Пруды) проводится очередной Object Thinking митап. После перерыва в полтора года решили продолжить! Два доклада (Эмиль Фаталиев и Егор Бугаенко), вкусный ужин, книги и футболки с кактусом в подарок, и общение с сотней фанатов и хейтеров ООП. Вход свободный, но нужно зарегистрироваться здесь.
Осталось 29 свободных мест.

@middle_java
t.me/middle_java
источник
2021 October 20
middlejava
#cloud #infrastructure #security #yandex

Пару месяцев назад Яндекс запушил на ГитХаб репозиторий Yandex.Cloud Security Solution Library - набор примеров и рекомендаций, призванных помочь компаниям, которые хотят построить безопасную инфраструктуру в Облаке и соответствовать требованиям различных регуляторов и стандартов.
Команда Yandex.Cloud проработала самые распространённые задачи, которые возникают при построении безопасности в облаке, протестировала и подробно описала необходимые сценарии.
Часть примеров и рекомендаций  касается Yandex.Cloud, часть имеет общий характер.

На данный момент рассмотрены следующие темы:
- Сетевая безопасность
- Аутентификация и управление доступом
- Защита от вредоносного кода
- Управление уязвимостями
- Шифрование данных и управление ключами/секретами
- Сбор, мониторинг и анализ аудит логов
- Безопасная конфигурация
- Безопасность Kubernetes

Репозиторий здесь:
https://github.com/yandex-cloud/yc-solution-library-for-security

@middle_java
t.me/middle_java
источник
2021 October 22
middlejava
#intellij #plugin #jpa #jugru #meetup #online

Привет!
Завтра сообщество JUG.ru проводит бесплатный онлайн-митап.

«JUG.ru: JPA Buddy – краткая история одного плагина для IntelliJ IDEA»

JUG.ru: JPA Buddy – краткая история одного плагина для IntelliJ IDEA»

Дата и время проведения:
23.10.2021, 15:00 (MSK, GMT+3)

Алексей Стукалов и Андрей Оганесян выступят с большим докладом о проекте, над которым они работают в HAULMONT - плагине JPA Buddy. Они расскажут, как дошли до создания JPA Buddy и какие принципы берут за основу при создании инструментов для широкой аудитории. Плюс, Алексей и Андрей покажут, что у них получилось и даже анонсируют еще одного Buddy-ка.

Митап бесплатный, регистрация по ссылке:
https://jpa-buddy.jugru.org

@middle_java
t.me/middle_java
источник
2021 October 24
middlejava
#redis #highload

Тут в чатике "Вечерней школы Kubernetes для разработчиков" состоялся интересный диалог:

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

Alexey Shumkin
[В ответ на Maxim]
мне показалось, он имел в виду, что моветон юзать Redis как MQ, а не вообще юзать его

Lucky SB
Редис однопоточный. До сих пор.
На больших нагрузках ломается.
Пока сохраняет свой бекапа - не обслуживает входящие запросы. До сих пор.
Использование редис - моветон. Если конечно, у вас не проект школьный

Yerzhan Aktanov
[В ответ на Lucky SB]
Лучше тогда кафку?

Владислав Субботин
[В ответ на Lucky SB]
Как толсто. Большие нагрузки в вакууме. Можно точных чисел? А то на редисе до сих пор куча нешкольных проектов отлично себя чувствуют

Владислав Субботин
Щас молодёжь наслушается и побежит "передовых" инстурментов пихать на проект, которые им и нафиг не сдались ) Ну и огребёт заодно )

Alec
У меня тоже на редисе жил большой проект, в кубере, сессии пользвательские хранил, все было ок. Хм.

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

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

=============================

Не могу обоснованно сказать за или против Redis, у меня в частности был в проде проект на нем, правда слабонагруженный, проблем с ним не было.
Но интересно разобраться, как на самом деле обстоят дела на нагрузке и в разных кейсах.
В этом же обсуждении Владислав Субботин дал ссылку на доклад с конфы Highload "Успехи и провалы с Redis":

https://www.highload.ru/moscow/2019/abstracts/5486

Вот и разберемся что к чему)

@middle_java
t.me/middle_java
источник
2021 October 28
middlejava
#joker2021 #free

Сегодня на конфе Joker 2021 - Community Day - т.е. сегодняшние доклады можно смотреть бесплатно.

На страничке ниже надо выбрать Community Day -> Free
https://jokerconf.com/registration/personal

@middle_java
t.me/middle_java
источник