Обновить
19
0.1
Максим@SabMakc

Пользователь

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

Гайд по архитектуре приложений для Android. Часть 1: обзор

Время на прочтение7 мин
Охват и читатели69K

Перевод обновлённого гайда Android по архитектуре приложений. Это — первая часть из пяти: обзор рекомендаций по архитектуре.

Читать далее

Как заходить в чужой монастырь

Время на прочтение18 мин
Охват и читатели21K

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

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

Эта статья может быть интересна ребятам, которые переходят в новые компании на руководящие должности техлидов и тимлидов, либо разработчикам, которым выпало неожиданно возглавить не их «родные» команды.

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

Читать далее

Европейские альтернативы американским интернет-сервисам

Время на прочтение8 мин
Охват и читатели17K

Зашифрованное хранилище файлов CryptDrive.cz (Чехия)

Судя по последним событиям, Евросоюз начал по-взрослому давить на Google, Facebook и другие американские компании, которые собирают персональные данные европейских граждан и отправляют в США.

Например, в начале 2022 года популярный инструмент Google Analytics уже запретили к использованию в трёх странах Евросоюза. Чего нам ожидать дальше? Простая экстраполяция:

  • Во-первых, остальные страны ЕС запретят Google Analytics.
  • Во-вторых, они запретят другие американские сервисы.
  • В-третьих, действия ЕС скопируют некоторые государства «догоняющего развития» вроде РФ. Хотя необязательно эти государства думают о правах граждан. Просто считают их (граждан) своей собственностью по праву владения.
Читать дальше →

План самостоятельного обучения DDD, CQRS, EventSourcing

Время на прочтение7 мин
Охват и читатели69K

Если вы собрались плотно погрузиться в тему Doman Driven Design (DDD), о том как его применять, как использовать, для чего он нужен, и как с ним связаны Command and Query Responsibility Segregation (CQRS), Event Sourcing и другие термины из мира DDD то можно воспользоваться планом обучения, который последовательно погрузит вас в эти темы и поможет сориентироваться. Часть информации на русском, часть на английском языке, так как русскоязычных аналогов я не смог найти.

Погрузиться в DDD

Как незаметно стать антиваксером (возможно, это про вас) — ликбез для взрослых

Время на прочтение18 мин
Охват и читатели37K


Как показала недавняя практика, в вакцинах в России разбираются в среднем никак.

Во-первых, их надо обновлять. Если вы не обновляли «детские» прививки, поздравляю, вы пассивный антиваксер и потенциально представляете опасность для общества.

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

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

Давайте проговорим ещё раз, от каких болезней можно и нужно привиться взрослым, когда и как.
Читать дальше →

Чистые транзакции в гексагональном Go

Время на прочтение9 мин
Охват и читатели22K

В современной микросервисной разработке очень популярна чистая архитектура (она же луковая). Этот подход ясно отвечает на много архитектурных вопросов, а также хорошо подходит для сервисов с небольшой кодовой базой. Другая приятная особенность чистой архитектуры состоит в том, что она отлично сочетается с Domain Driven Development — они отлично дополняют друг друга.


Одной из прикладных реализаций чистой архитектуры является гексагональная архитектура — подход, явно выделяющей слои, адаптеры и прочее. Данный подход заслуженно сыскал любовь среди разработчиков на Go — он не требует сложных абстракций или зубодробительных паттернов, а также почти ни в чем не противоречит сложной идиоматике языка — так называемому Go way.


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


Читать дальше →

Грамотное составление и продвижение вашего резюме

Время на прочтение9 мин
Охват и читатели27K
image

Для многих процесс составления резюме муторный и затягивается. Казалось бы, состряпать 1 – 2 листа своей карьеры (если есть что туда вписать) – лёгкое дело. Но это, зачастую, заблуждение.

Данная статья-гайд будет универсальной и больше направлена на не ИТ-специалистов. Я прекрасно понимаю, что львиную долю хабра составляют именно разработчики (очень хочу в это верить), но явно есть и люди других специальностей. Уделим время всем, никого не обидим.

В статье я расскажу о наблюдениях из личной практики (опыт работы в сфере HR более 15 лет, начиная от рекрутёра до HR в Parallels), все тонкости составления, продвижения вашего резюме. Обсудим взгляд с двух сторон – работодатель/соискатель. Разберём на молекулярном уровне все основные моменты.

Лайфхаки для разработчиков вынесу отдельным разделом, ибо там своя специфика.
Читать дальше →

GTD за 15 минут: прагматическое руководство

Время на прочтение14 мин
Охват и читатели63K

GTD (Getting Things Done, Доведение дел до завершения) — это методика организации и отслеживания задач и проектов. Но эта методика, правда, ориентирована на нечто большее, чем только на «доведение дел до завершения». (Ей стоило бы называться «Доведение дел до завершения гораздо лучшим способом, чем просто позволяя чему-то идти своим чередом, что часто получается не так, чтобы очень уж хорошо»). Цель GTD — сделать так, чтобы человек полностью доверял бы системе сбора задач, идей и проектов. Это относится и к туманным задачам, вроде «сделать самое великое изобретение», и к конкретным делам, вроде «позвонить Аде 25 августа чтобы обсудить программу конференции». Речь идёт абсолютно обо всём!

Читать далее

Как инженеру выбрать работу

Время на прочтение18 мин
Охват и читатели15K

Даже на текущем рынке кандидата, каждая смена работы — это серьезное решение, инвестиция нескольких лет жизни или — неприятная строчка в резюме, причина для неудобных вопросов вроде «А почему вы ушли из компании X, проработав там немногим более года?».

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

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

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

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

Читать далее

Сборка 90% механической клавиатуры XD96

Время на прочтение5 мин
Охват и читатели26K

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

Собирать мы будем 90% механическую клавиатуру XD96 на плате от KPREPUBLIC.

Читать далее

Как мы избавились от 80% своего кода, повысив скорость разработки и уменьшив количество ошибок

Время на прочтение12 мин
Охват и читатели65K


Оптимизация кода и развитие микросервисной архитектуры занимает значительную часть жизни команды разработчиков МВидео-Эльдорадо. Тем любопытней изучить опыт коллег за рубежом. Предлагаем вашему вниманию очередной пост на тему: «А как там у них».
Читать дальше →

Как построить четкие модели классов и получить реальные преимущества от UML

Время на прочтение10 мин
Охват и читатели16K

Мне показался близким подход Леона Старра к объяснению чётких моделей классов и описанию их преимуществ. Настолько, что мы в Retail Rocket решили сделать перевод его большой статьи "How To Build Articulated UML Class Models". Будем выкладывать по частям, под катом — первая из трёх.

Читать далее

LJV: Чему нас может научить визуализация структур данных в Java

Время на прочтение26 мин
Охват и читатели31K

Эта статья является пересказом моего доклада на Java-конференции SnowOne 2021 года. LJV — проект, созданный в 2004 году как инструмент для преподавания языка Java студентам. Он позволяет визуализировать внутреннее устройство структур данных. В этом докладе я запускаю LJV на разных структурах (от String до ConcurrentSkipListMap) в разных версиях Java и разбираю, что там внутри, как оно менялось от версии к версии, и как это всё работает.


image

Читать дальше →

Хабр для взрослых: готовим статью к бою

Время на прочтение17 мин
Охват и читатели22K

Нас было трое: я, @Boomburum и @denis-19 У нас было 3 микрофона, 2 часа времени, отличная платформа для трансляции, много идей для разговора, чат с вопросами пользователей, 1400 зрителей в пике. Не то чтобы это был самый первый опыт, но если начинаешь рассказывать про Хабр, становится трудно остановиться. Единственное, что вызывало у меня опасение — это эфир. Ничто в мире не бывает более беспомощным, безответственным и порочным, чем эфирная лажа, когда виснет звук и падает картинка. Я знала, что рано или поздно мы столкнёмся и с этой дрянью, но это случилось на третьем вебинаре. 

А пока — не расшифровка первого, а полноценный лонгрид на его основе. 

Читать далее

Пишем за выходные блокчейн-игру на смарт-контрактах Rust

Время на прочтение10 мин
Охват и читатели26K

Сейчас регулярно выходят анонсы про NFT-metaverse-блокчейн-игры, которые привлекали инвестиции в миллионы долларов по оценке в миллиарды, но при изучении проектов там оказываются либо плашки Coming Soon, либо продажа JPG-картинок на аукционах NFT-токенов, либо централизованные проекты с гомеопатическими дозами блокчейна. Перед тем, как окрестить это всё пузырем хайпа, но я решил разобраться в технологическом стеке самостоятельно и сделать свою блокчейн-игру с NFT, потратив минимум ресурсов. Читайте под катом как у меня это получилось всего за 2 дня, а также покупайте мои NFT (нет).

Читать далее

Разрабатываем шаблон React + Express + TypeScript приложения

Время на прочтение13 мин
Охват и читатели18K


Привет, друзья!


В этой статье я хочу показать вам, как создать шаблон React.js + Express.js + TypeScript приложения.


Обоснование используемых технологий (сугубо личное мнение, которое не обязательно должно совпадать с вашим):


  • React — далеко не идеальный, но лучший на сегодняшний день фреймворк для фронтенда (или, согласно официальной документации, "для создания пользовательских интерфейсов");
  • Express — несмотря на наличие большого количества альтернативных решений, по-прежнему лучший Node.js-фреймворк для разработки веб-серверов;
  • TypeScript — система типов для JavaScript (и еще кое-что), фактический стандарт современной веб-разработки.

Исходный код проекта.


Если вам это интересно, прошу под кат.

Читать дальше →

[В закладки] Базовая карта законодательства РФ по защите информации и как ей пользоваться

Время на прочтение5 мин
Охват и читатели22K

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

Она сбережет время и поможет найти документы, в которых прописаны те или иные требования по защите информации, инструкции по работе с различными видами данных, состав проектной документации и так далее.

Читать далее

Программный архитектор. Кто этот человек?

Время на прочтение8 мин
Охват и читатели11K

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

Что меня сподвигло написать эту статью? Определенный опыт взаимодействия с разного уровня руководителями. Рассмотрим такую ситуацию. У нас есть вакансия, звучит она как Архитектор. И, вроде бы, понимание есть, что должен делать этот человек, но по факту оказывается, ждут “эникейщика”. 

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

И последнее, думаю надо представится. Меня зовут Владимир Воловиков. Работаю в ИТ сфере я уже почти 20-ть лет. В должности Системного архитектора и Программного архитектора, в общей сложности, более пяти лет. Имею четыре международных сертификата. Текущее место моей работы Системный архитектор, Банк ВТБ. 

Читать далее

Создаем приложение на Node.JS, Express и Typescript с Jest, Swagger, log4js и Routing-controllers

Время на прочтение7 мин
Охват и читатели72K
Это пошаговая инструкция создания приложение на Node.JS, с использованием typescript и express. Новое приложение создается не часто, отсюда забываются шаги по его созданию. И я решил написать некую шпаргалку, в помощь самому себе и другим разработчикам. Помимо шагов, я так же снял небольшие видео ролики для наглядности. Существуют уже готовые фреймворки для Node.JS, которые уже содержат в себе все необходимые пакеты и можно работать с ними, но это уже другой путь. Идея была в том, чтобы не зависить целиком от какого-то фреймворка и в случае необходимости менять одни пакеты на другие.
Читать дальше →

Кошелек с нуля в 2020 году: технологии, вызовы, решения

Время на прочтение16 мин
Охват и читатели11K

Большую часть своей рабочей биографии я занимаюсь различными финтех продуктами – Яндекс.Деньги, 1ЦУПИС и так далее. Последние два года я разрабатываю очередное платежное решение и хочу рассказать о некоторых задачах, с которыми мы встретились. Но мне интересно рассказать не только про появившиеся решения, но и, в первую очередь, про то, как вообще можно думать про архитектуру сложных систем.

Читать далее

Информация

В рейтинге
3 687-й
Откуда
Россия
Зарегистрирован
Активность