Pull to refresh
27
0
Ильдар @Ildar92

Джавист, понаех в Германию

Send message

Настройка и мониторинг Java приложений

Level of difficultyMedium
Reading time18 min
Views8.4K

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

Речь пойдет о бизнес-приложениях с одним сервером Java-приложения и одним сервером базы данных PostgreSQL, в каждом из которых одновременно работают от 500 до 2000 сотрудников компании. Приложения разработаны на базе открытой и бесплатной платформы lsFusion (пример приложения), но все описанные проблемы и настройки не являются специфическими именно для нее.

Читать далее
Total votes 23: ↑21 and ↓2+22
Comments3

Как вести бизнес в Боснии: налоги, банкинг, рабочая виза (и маленькие хитрости)

Level of difficultyEasy
Reading time7 min
Views2.8K

На связи Саша Хрущев, технический директор IT-компании WINFOX. Примерно полгода назад мы открыли филиал в Боснии и Герцеговине, а теперь учимся жить и работать в этой стране. Рассказываю, как вести там бизнес: налоги, банкинг, косвенные затраты, рабочая виза и другие особенности работы местной компании. 

Читать далее
Total votes 6: ↑3 and ↓30
Comments4

Внутренний мир: Project Reactor

Reading time20 min
Views14K

У многих из нас, при использовании какого-либо инструмента программирования, возникал вопрос: “Как? Как это работает?”. Часто при возникновении подобных вопросов я обращаюсь к гуглу, который популярным образом рассказывает общие принципы работы того или иного механизма. Но наверняка среди читателей есть те, которые, прочитав несколько статей, подумали: "Да, это интересно и, вроде, понятно. Но все таки, как оно работает?".

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments13

Разбираемся в Apache Kafka: подборка полезных статей и кейсов

Reading time3 min
Views16K

Разрабатываете приложения с применением Apache Kafka? Мы собрали для вас статьи, которые помогут освоить инструмент, познакомят с рабочими кейсами с использованием ПО. Делимся пользой и свежими идеями, подборками книг и реализованными задумками.

Читать далее
Total votes 12: ↑11 and ↓1+11
Comments1

Java, реактивное программирование, Reactor, Spring Cloud Function, Streams, etc…

Reading time23 min
Views18K


Реактивное программирование в Java — полезный инструмент со множеством применений. Его суть в асинхронной обработке поступающих сообщений, и есть несколько вариантов реализации этого механизма.


И Java в целом, и Spring Framework в частности подразумевают несколько аспектов реактивного программирования. Это касается Spring WebFlux в качестве замены Spring MVC. Также можно использовать Project Reactor в Java непосредственно, без Spring Framework. Однако Spring предоставляет средства декларативного определения функции Spring Cloud Function и средства интеграции приложений с использованием внешних очередей в рамках проекта Spring Cloud Stream. В комплексе эти средства позволяют широко использовать реактивное программирование, упрощая создание, размещение, масштабирование и обслуживание приложений.


Помимо создания новых приложений, Spring Cloud Function/Stream позволяют модифицировать и существующие приложения, облегчая жизнь разработчикам в реализации горизонально масштабируемых сервисов.


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

Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments2

Переезд в США от визы О-1 до гринкарты: стоимость эмиграции, сроки, ошибки и советы

Reading time10 min
Views27K

Пять лет назад, в июле 2017 я впервые рассказал на Хабре свою историю переезда в США по визе для талантливых специалистов. В июле уже этого года эта история, наконец, завершилась получением гринкарты. Поскольку первая статья вызвала достаточно большой интерес, было много вопросов, я решил опубликовать новый материал по итогам всего этого опыта со всеми его этапами, ошибками, подводными камнями и плюсами. Поехали!

Disclaimer: вся статья лишь суммирует мой личный опыт, мысли об ошибках и правильных ходах – это ни в коем случае не legal advice, но мне в свое время не хватало и такой информации.

Читать далее
Total votes 40: ↑32 and ↓8+35
Comments101

Как стать цифровым кочевником

Reading time12 min
Views37K

Подготовка к цифровому кочевничеству

Кочевническая жизнь

Я цифровой кочевник. Это значит, что я могу работать из любой точки мира. В этой статье представлены советы о том, как стать цифровым кочевником и длительно путешествовать.
Читать дальше →
Total votes 13: ↑10 and ↓3+8
Comments26

Мои вопросы работодателю, когда подаюсь на разработчика

Reading time9 min
Views87K

За последние 10 лет я поменял 3 работы, прособеседовался с 10+ компаний на позицию разработчика (software engineer) и вел переписку с HR/рекрутерами из нескольких десятков фирм. По ходу дела заметил, что вопросы, которые я задаю на собеседовании с менеджером/командой или с HR, повторяются, и решил их структурировать. Некоторые из них являются общими, и их может задать кандидат на почти любую вакансию; другие касаются только вакансий для программистов. В этой статье поделюсь с вами наиболее типичными и важными вопросами, которые, на мой взгляд, может задать соискатель потенциальному работодателю.

Читать далее
Total votes 72: ↑66 and ↓6+78
Comments70

Как руководить IT-специалистами, даже если они лучше вас разбираются в своей работе

Reading time7 min
Views20K

Привет, Хабр!

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

Возьмём для примера ситуацию. Есть команда data-аналитики: инженеры, аналитики, разработчики, каждый из которых уже собаку съел в своём деле и связал свитер из собственной бороды. Есть вновь назначенный руководитель этой команды. Он знает азы в каждой зоне (сбор данных, аналитика, разработка), но не глубоко погружён в детали и нюансы, особенно если пришёл из смежной сферы. 

Как в такой ситуации не сломать уже построенную систему? И одновременно принести дополнительную ценность для компании и подчинённых? Разбираемся под катом.

Читать далее
Total votes 17: ↑10 and ↓7+11
Comments12

Как писать код, чтобы тебя не уволили?

Reading time12 min
Views31K

Это несерьёзная статья на серьёзную тему. Есть такое понятие, как JSDD - Job Safety (Security) Driven Development, мы часто видим его в крупных компаниях. От этого не избавлены и небольшие компании, особенно когда в штате всего несколько программистов. Разработчики пишут свой код столь изысканным способом, что, несмотря на очень низкую скорость разработки, их страшно уволить, потому что, кроме них, этот код никто понять не сможет. Давайте попробуем разобрать, почему и как такое происходит.

Читать далее
Total votes 26: ↑23 and ↓3+22
Comments29

Руководство по Java 8 Optional

Reading time16 min
Views20K

В этом учебном пособии мы рассмотрим класс Optional, который был представлен в Java 8.

Цель класса — предоставить решение на уровне типа для представления опциональных значений вместо null (нулевых) ссылок.

Для более глубокого понимания того, почему мы должны обратить внимание на класс Optional, ознакомьтесь с официальной статьей Oracle.

Читать далее
Total votes 16: ↑10 and ↓6+5
Comments5

Sheldon: бот для автоматизации командной рутины

Reading time3 min
Views5.8K

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

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

Читать далее
Total votes 7: ↑7 and ↓0+7
Comments8

Как мы построили корпоративную шину данных на Kafka, которая обрабатывает до 3 млн сообщений в секунду

Reading time10 min
Views28K

Привет! Меня зовут Иван Гаас, я руковожу автоматизацией процессов разработки в Почтатехе — компании, создающей цифровые продукты для Почты России.

Среднее количество сообщений, которые мы обрабатываем в Почте — от 500 тысяч до миллиона в секунду. В пики, когда наша big data прогоняет свои 25 петабайт данных — до 3 миллионов. При этом кластер Kafka состоит всего из 12 серверов в каждом из 3 дата-центров и справляется с этим.

C 2016 года мы в три раза увеличили количество новых цифровых сервисов. Корпоративная шина на Kafka помогла быстро масштабироваться: количество интеграций за последнее время упало с 1000 до 300 и теперь растёт незначительно. Если раньше интеграция сервиса растягивалась на месяцы, то теперь достаточно нескольких дней.

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

Читать дальше
Total votes 30: ↑29 and ↓1+35
Comments14

Большая статья о переезде на остров Пенанг, Малайзия. Часть 2

Reading time8 min
Views10K

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

Читать далее
Total votes 14: ↑12 and ↓2+15
Comments7

Большая статья о переезде на остров Пенанг, Малайзия. Часть 1

Reading time6 min
Views12K

2019-й год я встретил, работая в отделе визуализации медицинских данных в медицинской госкомпании. На тот момент я имел небольшой опыт работы непосредственно разработчиком на C++ (около 1,5 лет) и заполненный на английском языке профиль в LinkedIn. Я придерживаюсь мнения, что нужно и стоит иметь опубликованное резюме и периодически проходить собеседования, чтобы быть в курсе, что происходит на рынке и что и как спрашивают на собеседованиях.

Где-то с января 2019-го года я стал получать сообщения в LI с предложениями пообщаться. Было достаточно много сообщений от разных рекрутинговых и не только компаний, которые, как я понял, набивают периодически собственные базы и поэтому обзванивают людей. Но среди предложений были и достаточно интересные в локациях от Москвы и Финляндии до Германии и юга Франции. Правда, ни одно предложение не дошло на тот момент до предложения о работе.

Жизнь продолжалась, работа тоже, надвигалось лето с длинным запланированным отпуском. За неделю до отпуска мне пришло сообщение с предложением о собеседовании от HR компании Люксофт. Времени перед отпуском не было, поэтому сообщение было злостно проигнорировано (спойлер: всегда отвечайте HR!, они хорошие!). Но перед самым отпуском жена говорит: «А чего это ты не ответил? Напиши им, что уезжаешь в отпуск и сможешь говорить после него». Так я и сделал, но в ответ мне сказали, что позиция достаточно срочная и если у меня вдруг есть возможность, то были бы рады пообщаться раньше. Ну хорошо, давайте. Договорились о первом собеседовании.

Читать далее
Total votes 18: ↑14 and ↓4+20
Comments19

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

Reading time12 min
Views36K

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

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

Нелегко применять софты: быть открытым, уверенным, проявлять эмпатию.

Тяжело даются one-on-one, фидбек и общение, особенно когда надо поговорить не про работу, а про что-то еще.

То есть многие просто не знают, что делать, когда становятся тимлидами: сначала им сложно и некомфортно, у них не получается или получается не то, а ожидания бизнеса и команды не очень понятны. А потом им непонятно, как можно те самые sotf skills развивать, если каждый one-on-one отнимает массу сил. 

Меня зовут Сандра Урядова, и сегодня я хочу рассказать, как на этом пути тимлиду может помочь его собственная уязвимость, в которой, как ни парадоксально, лежит сила быть человеком. Да, иногда это очень сложно сделать, но эта сила позволит вам не только выйти из стрессового состояния, но и создать благоприятный фон в команде — вы покажете другим, что так можно: быть человеком, а не машиной.

Читать далее
Total votes 28: ↑25 and ↓3+26
Comments29

Гетерогенные транзакции на примере Kafka vs. RDBMS

Reading time8 min
Views9.5K

Данный текст описывает общесистемные подходы, используемые при работе с брокером сообщений Kafka, и общие архитектурные подходы, применяемые при работе с системами, имеющими несовместимые транзакционные модели.

Читать далее
Total votes 7: ↑6 and ↓1+8
Comments14

Разработка системы заметок с нуля. Часть 1: проектирование микросервисной архитектуры

Reading time4 min
Views13K

Данный проект рассматривается как pet-project. Любую критику и советы готов увидеть в комментариях.

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

Репозиторий с исходным кодом: https://github.com/theartofdevel/notes_system

Видео версия: https://www.youtube.com/watch?v=Txi95RQPRP0

Под катом текстовая расшифровка.

Читать далее
Total votes 11: ↑8 and ↓3+6
Comments7

Хотели как в FAANG, а вышло как всегда или Опыт собеседования в Тинькофф в 3 актах

Reading time9 min
Views135K

Предисловие Около года назад я задался целью получить оффер от FAANG. Как следствие, постоянной частью моей жизни стали тематические форумы, площадки и вся сопутствующая атрибутика. Спустя какое-то время я попробовал себя на собеседованиях в околоFAANGoвые компании: Lyft, Spotify, Booking и т. д, где-то успешно, где-то не очень. В это же время мне порекомендовали попробовать пройти собеседование в Тинькофф банк, который внедрил схожий процесс. После стандартного общения с HR менеджером была получена ссылка на описание процесса собеседования. “Хм, почти что FAANG + тех. интервью по Primary Skill”, - подумал я и сказал, что готов приступать. В тот же час было назначено 2 интервью: техническое и coding, а вот 3 этап, system design, нужно было заслужить успешным прохождением первых двух. Почему именно эти 2 части являлись основополагающими, осталось неясным.

Акт первый, технический

В назначенный час я встретился со своим интервьюером. Собеседование выглядело “добротным” и стандартным в заданной проф. области, оттого местами скучным. Было много задач на ревью кода и обсуждения специфики языка, в частности...

Читать далее
Total votes 150: ↑134 and ↓16+151
Comments226
1
23 ...

Information

Rating
Does not participate
Registered
Activity