Как стать автором
Обновить
41.07
Рейтинг
Сначала показывать

SMM для бизнеса в 2022

Блог компании Karuna Управление сообществом *Копирайт Социальные сети и сообщества

Привет! Меня зовут Ксения Потапова, и я – SMM & Community Team Lead в одном из проектов, над которым работает Каруна. Моя команда занимается развитием брендовых сообществ. Мы выбрали не самый типичный фокус для SMM – это retention. Для нас, безусловно, важно, чтобы аудитория бренда расширялась и знакомилась с ним через каналы,но сделали ключевой задачей социальных сетей удержание и вовлечение текущей клиентской базы ещё до того, как COVID сделал это трендом бизнеса.

Social media  сейчас буквально везде: сделать покупку чего угодно из любой точки мира, заказать услуги и найти специалистов, пройти мастер-класс по игре на укулеле, узнать о марафонах желаний и тут же о них забыть. Пандемия только усилила запросы аудитории на эти площадки и их возможности. В соцсетях сидят более 53% населения всего мира (We are social&Hootsuite report), поэтому свою ЦА в них точно найти сможет любой бизнес.

Вспомните, сколько ваших знакомых стали вести TilTok в первую волну карантина, и как активно в нем стали развиваться бренды? 

Мы в Каруне, как и многие тогда, ушли на удалёнку и прошли все стадии принятия: от онлайн-квизов и кулинарных мастер-классов до Нового года в онлайне. Потом ситуация волнами менялась, мы частично возобновили работы в офисе. И когда поняли, что не можем больше держать в себе, как у нас весело живётся, несмотря ни на что — пошли покорять TikTok. Если вы ещё не знаете, как правильно посвящать новичков в IT-шники, что с ними делается, когда они переходят в Senior-ы и почему спальня в офисе — это прям must have, очень рекомендую посмотреть. 

Читать далее
Всего голосов 14: ↑5 и ↓9 -4
Просмотры 1.2K
Комментарии 5

Трудности перехода: каков Elixir на вкус после Ruby

Блог компании Karuna Ruby *Ruby on Rails *Elixir/Phoenix *

Привет! Меня зовут Наталья. В Каруне я пишу в команде высоконагруженные сервисы на Elixir.

Это третья компания, в которой я работаю на Elixir. До этого я писала на Ruby. Если посмотреть свежее исследование Хабр Карьеры по зарплатам, можно увидеть — зарплаты рубистов растут, а Elixir там нет. Более того, есть истории о том, как люди возвращались с Elixir обратно на Ruby. Я считаю, что на это сильно влияет вход в язык. Elixir классный, но в первые месяцы знакомства с ним мне самой так не казалось. Настолько классный, что я не хочу назад. В этой статье я расскажу про трудности перевода перехода.

Читать далее
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 3.8K
Комментарии 4

GO приложение в кластере k8s

Блог компании Karuna Go *Kubernetes *

Golang приложение в кластере kubernetes


Привет! Я — golang разработчик в Каруне. Kubernetes сегодня — звезда среди систем оркестровки и контейнеризации приложений. Важно понимать, как с ним работать. Поделюсь примером демонстрационного api приложения, которое написано на golang, и покажу способы взаимодействия с ним.

Читать дальше →
Всего голосов 15: ↑9 и ↓6 +3
Просмотры 4.7K
Комментарии 6

Angular Libs как монорепозиторий 2: tree shaking и сборка клонов

Блог компании Karuna Angular *TypeScript *
Tutorial

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

В этом посте хочу продолжить тему разделения функционала на библиотеки и, как апофеоз, рассказать о сборке двух, похожих визуально, но разных по функциональности приложений из одного набора библиотек. А так же осветить механизм работы tree shaking при использовании Angular Libs.

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

SAGA на golang

Блог компании Karuna Программирование *Go *Микросервисы *

После того, как я написал статью про паттерн CQRS, мне захотелось описать ещё один интересный шаблон для микросервисной архитектуры, а именно saga (он же повествование).

Читать далее
Всего голосов 9: ↑7 и ↓2 +5
Просмотры 5.1K
Комментарии 15

Дело об исчезнувшем покрытии кода

Блог компании Karuna Разработка мобильных приложений *Разработка под Android *

Однажды, после штатного обновления версий библиотек, когда-то достаточно популярный плагин JaCoCo перестал считать покрытие кода тестами на одном из наших проектов в Каруне. Усердный поиск хоть как-то похожих проблем не принёс результатов. Помощи ждать было неоткуда, поэтому нам пришлось погрузиться в вопрос. Как же мы смогли вернуть покрытие? Расскажу под катом.

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

Angular Libs как монорепозиторий: начало, настройка, работа с assets

Блог компании Karuna Angular *
Tutorial

Всем привет! Меня зовут Илья и я хочу рассказать вам как можно подробнее про Angular Libs. В частности, то, как можно использовать его в качестве монорепозитория для сборки нескольких приложений с tree-shaking и переиспользуемостью различных модулей в разных библиотеках и частях системы.

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

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

Блог компании Karuna Управление разработкой *Управление проектами *Agile *Управление продуктом *

Возможно, вы сталкивались с классической историей: поговорили с заказчиком о задаче, всем всё понятно. Начали работать — и началось: "А я думал, это и так ясно" или "Я ожидал, что ты это опишешь точнее". 

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

Как с этим бороться?

Расскажу!
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 928
Комментарии 0

CQRS на golang

Блог компании Karuna Программирование *Go *Микросервисы *

Сегодня рассмотрю архитектурный паттерн CQRS и его возможное место в вашей архитектуре. Также осуществим его реализацию на языке golang.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 7K
Комментарии 8

Инструменты практического изучения сетей

Блог компании Karuna Сетевые технологии *
Привет! Я — golang разработчик в Каруне. Часто в работе сталкиваюсь с тем, что нужно понять, как функционирует та или иная сетевая система. Как правило, современные компьютерные системы объединены в сеть, и взаимодействие между узлами этой сети можно рассматривать через теоретическую призму модели OSI. 
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 4.2K
Комментарии 0

Что происходит, когда вводишь url, или как работает интернет

Блог компании Karuna Программирование *IT-инфраструктура *Сетевые технологии *Стандарты связи

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

Хочу представить краткую выжимку о работе протоколов. А если тема окажется интересной, могу продолжить работать с ней более детально. Рассмотрим простейший пример: вы ввели некоторый url в адресную строку. Поехали.

Читать далее
Всего голосов 12: ↑9 и ↓3 +6
Просмотры 26K
Комментарии 21

Работаем с индексами при высокой нагрузке в rails с psql: как добавить/удалить индекс и при этом не умереть

Блог компании Karuna Ruby *PostgreSQL *Ruby on Rails *

Всё, что кладёт прод, делает тебя умнее. © программист, положивший прод

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

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

Integration hell: путеводитель

Блог компании Karuna Программирование *.NET *Проектирование и рефакторинг *

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

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

Как сделать alter table в высоконагруженной таблице

Блог компании Karuna PostgreSQL *Программирование *Go *Микросервисы *

Ещё лет 5 назад на собеседованиях с backend-разработчиками был популярен вопрос: как переименовать колонку в высоконагруженной таблице (возможны вариации: как сделать любой другой alter table)?

Вопрос всё ещё часто звучит на собесах. И актуальность его выросла, так как за последние 5 лет стало намного больше масштабных проектов с высокой нагрузкой.

Читать далее
Всего голосов 27: ↑25 и ↓2 +23
Просмотры 12K
Комментарии 29

Real-time мониторинг тормозящих запросов PostgreSQL своими руками за полчаса

Блог компании Karuna Разработка веб-сайтов *PostgreSQL *Программирование *Go *

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


Ключевое слово — в конкретный момент времени. Например, база непонятно от чего напряглась на 5 минут, потом всё само рассосалось, и очень хочется знать, почему. Отчёты за сутки, присылаемые dba на основе pg_stats_statements, не всегда проясняют ситуацию. Другие графики и логи могут помочь. Но всё же хочется не гадать на кофейной гуще, а конкретно посмотреть, что такому-то запросу в такое-то время было плохо, или его было много.


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


На удивление, сделать такой мониторинг самому занимает всего полчаса времени, буквально с помощью нескольких строк Go-кода и палок.

Читать дальше →
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 9K
Комментарии 8

Когнитивные искажения с примерами для айтишников

Блог компании Karuna Программирование *Научно-популярное Мозг

Про когнитивные искажения много пишут и много говорят.


Однако всегда не хватало более чёткого понимания, как именно это влияет на профессиональную деятельность, мою и моих коллег. Какие решения я как тимлид и программист принимаю неправильно. Что мне подправить, на что обратить внимание.


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


Если вам интересно, добро пожаловать под кат.


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

Читать дальше →
Всего голосов 59: ↑56 и ↓3 +53
Просмотры 26K
Комментарии 56

Как мы делали инструмент для QA, а сделали для всего техотдела

Блог компании Karuna PHP *Go *Тестирование веб-сервисов *Kubernetes *

Как-то очень давно наш отдел автоматизации внутренних процессов посетил админ (ops) с идеей помочь нашим тестировщикам. Основная идея был упростить деплой т.к. было очень неудобно писать ручные curl запросы к gitlab'у с кучей меняющихся параметров. Так заставили нас наша команда решила помочь дружественному отделу и сделать их работу более приятной.

В статье я постараюсь поделиться тем, как мы разрабатывали GUI для curl'a, а сделали очень крутой сервис автоматизации. А также с какими проблемами столкнулись и как их решили (или нет).

Читать далее
Всего голосов 8: ↑6 и ↓2 +4
Просмотры 3.3K
Комментарии 5

Стреляем себе в ногу с помощью GenServer'а, или как мы фиксили неуловимый баг в Elixir проекте

Блог компании Karuna Erlang/OTP *Elixir/Phoenix *

Привет, Хабр! Меня зовут Иван, я — техлид в Каруне.

В команде мы активно используем Elixir в одном из самых нагруженных проектов.

Мы уделяем особое внимание тому, что за код выполняется в коллбеках GenServer'а, особенно если это код третьесторонних библиотек.

В этой статье я расскажу, почему это настолько важно, и продемонстрирую, как с помощью простейших механизмов, которые предоставляют нам Elixir и Erlang, мы можем сломать поведение GenServer'a и породить трудноуловимые баги. Ещё расскажу, как мы боролись с таким багом в реальной жизни.

Поехали!

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 2K
Комментарии 6

Опыт хранения IP-адресов в PostgreSQL

Блог компании Karuna PostgreSQL *Программирование *SQL *Администрирование баз данных *

Не раз наша команда сталкивались с задачей, связанной с хранением и использованием IP-адресов в базе данных. Предположим, что есть типичная задача: необходимо парсить огромное количество диапазонов адресов (~300k) с известного ресурса, а далее определять страну по IP-адресу клиента. Кажется, ничего особенного. Это довольно просто решается любым ниже описанным способом при малых нагрузках. Но если у нас тысячи пользователей или наш сервис является прокси перед всеми остальными? В этом случае не хочется быть бутылочным горлышком и приходится бороться за каждую долю секунды.

Читать далее
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 8.2K
Комментарии 10

Дженерики в языке Go

Блог компании Karuna Программирование *Go *
✏️ Технотекст 2021
func Map[F, T any](s []F, f func(F) T) []T {
    r := make([]T, len(s))
    for i, v := range s {
        r[i] = f(v)
    }
    return r
}

Как вы уже наверняка знаете, proposal по дженерикам в Golang принят (официально это называется type parameters) и будет имплементирован в go 1.18. Бета будет доступна уже в конце этого года. А это значит, что пора разобраться, на чём в итоге остановились разработчики языка — ведь черновик type parameters постоянно менялся в течение последних лет.


Технология новая, на практике толком никто не использовал. Поэтому если увидите какую-то неточность в статье, не стесняйтесь указать это в комментариях.


Самостоятельно поиграться с дженериками можно здесь


Итак, поехали.

Читать дальше →
Всего голосов 43: ↑43 и ↓0 +43
Просмотры 25K
Комментарии 49

Информация

Дата основания
Местоположение
Россия
Сайт
karuna.group
Численность
201–500 человек
Дата регистрации