Как стать автором
Обновить
1
0

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

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

Достижения, которые ценят работодатели: как инженеру по разработке добиться повышения на работе или премии

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

Всем привет! Меня зовут Станислав Тюленев, я технический лидер команды по разработке в одной из продуктовых команд Домклик.

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

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

Читать далее
Всего голосов 28: ↑19 и ↓9+18
Комментарии8

Не дай мозгу себя обмануть: 5 когнитивных искажений, распространённых в IT

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

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

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

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

Кстати, ранее в блоге мы уже рассказывали про искажения мышления, связанные со знанием и компетенциями. Теперь настало время раскрыть тему искажений подробнее.

Читать далее
Всего голосов 32: ↑30 и ↓2+39
Комментарии13

Фреймворки для работа с данными на Rust. Часть 1

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

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

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

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

Вычислительные выражения: Добавляем ленивость

Уровень сложностиСложный
Время на прочтение7 мин
Количество просмотров664

Скотт Влащин продолжает рассказ о вычислительных выражениях в F#.

Сегодня мы узнаем, как создавать ленивые вычислительные выражения.

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

Вычислительные выражения: Оставшиеся стандартные методы

Уровень сложностиСложный
Время на прочтение8 мин
Количество просмотров390

Скотт Влащин завершает рассказ о вычислительных выражениях в F#.

Сегодня поговорим про методы класса-построителя, с которыми мы ещё не сталкивались.

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

Вычислительные выражения в F#

Уровень сложностиСложный
Время на прочтение1 мин
Количество просмотров718

Цикл из одиннадцати статей Скотта Влащина, посвящённый вычислительным выражениям (computation expressions) в F#.

Читать далее
Всего голосов 5: ↑4 и ↓1+8
Комментарии3

6 Современных шаблонов проектирования архитектуры в области ПО

Время на прочтение7 мин
Количество просмотров27K
Привет, Хабр! Представляю вашему вниманию перевод статьи "Modern-Day Architecture Design Patterns for Software Professionals" автора Tanmay Deshpande.

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

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

Вот список шаблонов, которые я буду обсуждать в этой статье:

  1. Circuit Breaker
  2. Command and Query Responsibility Segregation (CQRS)
  3. Event Sourcing
  4. Sidecar
  5. Backend-for-Frontend
  6. Strangler

Итак, давайте начнем.
Читать дальше →
Всего голосов 8: ↑5 и ↓3+5
Комментарии2

Самые важные архитектурные шаблоны, которые нужно знать

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

Рассказываем о самых распространенных шаблонах в архитектуре ПО. Разбираемся с контекстом и решаемыми задачами, обсуждаем достоинства и недостатки.

- Многоуровневая архитектура

- Каналы и фильтры

- Клиент — сервер

- Модель — представление — контроллер

- Управляемая событиями архитектура

- Архитектура на основе микросервисов

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

Systemd за пять минут

Время на прочтение4 мин
Количество просмотров647K
Наша компания занимается администрированием веб-серверов на базе CentOS. Довольно часто наши клиенты используют веб-приложения на базе python, ruby или java. Для автозапуска подобных приложений есть готовые шаблоны для написания стартап-скриптов. Но прогресс не стоит на месте, вышел уже второй релиз CentOS 7 и, следуя старой традиции «не ставить dot-zero релизы на продакшен», мы начинаем предлагать клиентам сервера на базе CentOS 7.1 (1503).

В CentOS7, так же как и в его родителе RHEL7, используется systemd — менеджер системы и служб для Linux, совместимый со скриптами инициализации SysV и LSB. systemd обеспечивает возможности агрессивной параллелизации и много всего прочего.

image

Огромный монстр с множеством возможностей, гибкими настройками и мегабайтами документации…

Но что делать, если стоит задача быстро-быстро, вот прямо вчера, сделать автозапуск некоего сервиса?
Давайте выжмем из документации минимально необходимый набор информации для создания простых старт-стоп скриптов.
Знакомство с systemd
Всего голосов 70: ↑66 и ↓4+62
Комментарии58

Памятка РП. Микросервисная архитектура

Уровень сложностиСредний
Время на прочтение75 мин
Количество просмотров18K

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

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

Собираем данные из сотни микросервисов, или Как мы разобрали Ozon на кубики, а потом собрали заново

Уровень сложностиСредний
Время на прочтение21 мин
Количество просмотров15K

Всем привет! Меня зовут Саша, я руковожу группой разработки Composer Core в Ozon Tech. В этой статье я расскажу о том, как устроена пользовательская часть одного из ведущих российских маркетплейсов, в развитии которой на момент написания статьи участвуют сотни специалистов из десятков команд. При наличии такого количества людей разрабатывать новую функциональность, не рискуя сломать уже существующую, является достаточно сложной задачей.

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

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

Читать далее
Всего голосов 36: ↑34 и ↓2+36
Комментарии9

OpenTelemetry на практике

Время на прочтение11 мин
Количество просмотров64K
Совсем недавно два стандарта – OpenTracing и OpenCensus – окончательно объединились в один. Появился новый стандарт распределенного трейсинга и мониторинга – OpenTelemetry. Но несмотря на то, что разработка библиотек идет полным ходом, реального опыта его использования пока не слишком много.

Илья Казначеев color, который занимается разработкой восемь лет и работает backend-разработчиком в МТС, готов поделиться тем, как применять OpenTelemetry в Golang-проектах. На конференции Golang Live 2020 он рассказал о том, как настроить использование нового стандарта для трейсинга и мониторинга и подружить его с уже существующей в проекте инфраструктурой.
Читать дальше →
Всего голосов 8: ↑7 и ↓1+9
Комментарии5

Продолжаем работать с Actix Web (часть 1)

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

Продолжим работу с Actix Web и сделаем реальный пример мессенджера

В этой статье также покроются темы jwt и raw sql в rust

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

Начало работы с Actix Web

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

Actix Web или как влиться в производительность.

В этой статье есть все необходимое, чтобы начать писать на actix web

Читать далее
Всего голосов 8: ↑7 и ↓1+9
Комментарии11

Простой способ развернуть локальный LLM

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

Большие языковые модели (LLM, Large Language Models) стали незаменимыми инструментами для разработчиков и исследователей. С их помощью можно решать разнообразные задачи.. Однако использование таких моделей часто связано с зависимостью от внешних сервисов, что накладывает определённые ограничения. Локальное развертывание LLM позволяет сохранить контроль над данными и гибко настроить модель под конкретные нужды, используя при этом преимущества локальной инфраструктуры.

В этой статье я бы хотел рассказать о преимуществах локального развертывания LLM и рассмотрим несколько open-source решений, которые можно использовать для этой цели.

Читать далее
Всего голосов 13: ↑12 и ↓1+16
Комментарии11

Алхимики, ведьмы и инквизиция. Как я пишу фэнтези, в котором всегда побеждает добро

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

Привет, Хабр! Меня зовут Юра Байков, я ведущий инженер в МТС Диджитал: работаю на проекте «Оператор рекламных данных», пишу тесты на C# и TS. А еще у меня есть хобби — писать книги. Что-то я пишу в стол, а что-то — издаю. Две мои фэнтезийные книги — «Инквизитор» и «Инквизитор. Чужое море» — в 2018-м полгода занимали первое и второе места по популярности в Mybook от ЛитРес, у них около 100 тысяч читателей. В этом посте мне захотелось поделиться, как я пишу книги и зачем мне это нужно. Ну и, конечно, вы немного узнаете о магическом мире, который я создаю. Надеюсь, вам будет интересно!

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

Кроссплатформенный мультиплеер на Godot без боли

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

Недавно я начала заниматься разработкой игр на Godot и столкнулась с проблемой - мне понадобилась возможность реализовать мультиплеер с независимым сервером, при этом ещё и с возможностью игры из браузера. В Godot уже есть разные варианты реализации мультиплеера - но для ускорения разработки и во избежание ошибок при ручной сериализации/десериализации я решила попробовать связать клиент на Godot и сервер на Kotlin через вебсокеты и описывать их взаимодействие в формате protobuf.

Всех, кому интересна эта тема, прошу под кат.

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

Как без боли сделать мультиплеер на Godot, который будет работать в браузере

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

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

К счастью, эта проблема легко решается!

Вам может сказочно повезти, если поисковик выдаст этот пост на Reddit. Мне вот повезло, поэтому спешу рассказать и другим. Моя статья будет не столько переводом этого поста (и материалов, на которые она ссылается) на русский язык, сколько пересказом от моего лица с имеющимся опытом разработки + дополнительно поведаю о некоторых вещах, что не были упомянуты в посте.

Поехали!
Всего голосов 7: ↑6 и ↓1+6
Комментарии2

Система инвентаря на Godot. Костыль первый

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

Годот, немного костылей и прямые руки (по желанию).

Самый подробный гайд о создании системы инвентаря, без воды, по факту и с кодом!

Начать гайд
Всего голосов 19: ↑19 и ↓0+19
Комментарии9

Вороной, Манхэттен, рандом

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

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

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

Осторожно, очень много картинок!

Читать далее
Всего голосов 160: ↑160 и ↓0+160
Комментарии53
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность