Обновить
80
0
True Engineering @true_engineering

Создаем цифровые продукты

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

О чем не пишут в документации, или тонкости рефакторинга на .Net Core

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

Всем привет! Этим материалом мы открываем цикл из нескольких статей, посвященных длинной истории о том, как мы пришли с одной стороны к CD, а с другой — к high availability, основанной на избыточности.


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


И первым шагом мы переводим его на .NET Core и делимся с вами тонкостями, которые встретились нам на этом пути.


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

Как мы адаптировали стек ELK для мониторинга и анализа ошибок на Java и .NET проектах

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

Пациент приходит к врачу и жалуется на боль в животе. «Срочно на операцию! — отвечает врач. — Сейчас мы вас разрежем, покопаемся и постараемся зашить как было».


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


В этой статье мы расскажем, как адаптируем и применяем стек ELK на Java и .Net-проектах и находим ошибки в онлайн режиме без вскрытия или малоинвазивными методами. Да, мы разобрались и поняли, что не очень важно, Microsoft ли сделал это решение или Open Source — всё одинаково можно настроить под свои нужды.


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

Как мы настроили поиск с помощью Elasticsearch и Logstash по данным MSSQL

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

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


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


Критерий хорошего поиска для нас звучит так: даже если пользователь ввел запрос с опечаткой или неточно указал название группы, то всё равно нашёл её.


Также на перспективу нам нужно было продумать поиск по хэштегам как по раздельным словам, поиск по синонимам, ранжирование результатов и выдачу промежуточных результатов на лету.


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

Библиотека Reamp: обезболивающее для ваших Android-приложений

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

Однажды мы в компании EastBanc Technologies устали бороться с теми архитектурными проблемами, которые возникают в Android-разработке и решили все исправить:). Мы хотели найти решение, которое удовлетворит всем нашим требованиям.


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


Какие проблемы решали:


  • Уйти от жизненного цикла экранов, будь то Activity, Fragment или View
  • Уйти от необходимости писать код для сохранения и восстановления состояния для каждого экрана
  • Повысить стабильность: защититься от досадных крешей и утечек памяти
  • Повысить переиспользуемость кода между телефонным UI и планшетным UI

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

Как тренироваться в беге максимально эффективно

Время на прочтение6 мин
Количество просмотров13K
Мы в EastBanc Technologies задумали пробежать полумарафон. Наняли тренеров, составили планы тренировок. И, конечно, все сразу закупились гаджетами и накачали красивых мобильных приложений.

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

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

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

B2P: как за 5 лет набрать 3 000 новостей для корпоративного издания в ИТ-компании численностью >100 человек

Время на прочтение8 мин
Количество просмотров2.2K
Интернет не дает ответа на вопрос «Как собирать корпоративные новости в ИТ-компании для Business to Personal издания?». А между тем, он очень интересует пиарщиков и эйчаров. Всем очевидно: сотрудников нужно информировать о происходящем в компании, рассказывать им новости с соседних проектов, планы развития, транслировать как-то ожидания начальства насчет корпоративной культуры, целей… Но как собирать эту информацию? У кого спрашивать? Как ее преподносить?

За 5 лет мы в ИТ-компании EastBanc Technologies написали 3 108 новостей в нашем корпоративном настенном издании под названием «Сводка». Примерно 2,5 новости каждый день. В этой статье мы расскажем, как и зачем делаем это. По ходу повествования будем показывать результаты опроса, посвященного сводке, в котором поучаствовали 54% сотрудников.

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

Создание дизайн-экосистемы для десятков связанных ИТ-решений: слово дизайнерам

Время на прочтение6 мин
Количество просмотров10K
Сегодня расскажем, как пришли к необходимости создания единой UI/UX-системы для разных приложений одного из наших заказчиков. О том, какие принципы в нее заложили и как технологично дизайн-экосистему упаковали.

image

Надеемся, наш опыт будет интересен UI/UX дизайнерам, фронтэндерам, а также бренд-менеджерам, которые на собственном опыте сталкиваются с подобными задачами.
Читать дальше →

Рецепты под Android: Scroll-To-Dismiss Activity

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

Привет! Сегодня мы расскажем, как за минимальное количество времени добавить в свою Activity поведение Scroll-To-Dismiss. Scroll-To-Dismiss – это популярный в современном мире жест, позволяющий закрыть текущий экран и вернуться в предыдущую Activity.



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

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

Когда нужен корпоративный магазин приложений

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

Тема корпоративных приложений не первый год активно обсуждается на конференциях и в статьях. Все рисуют "бочку мёда": быстро, всегда под рукой, из дома и офиса… В общем, перспективный, удобный инструмент для оперативного решения бизнес-задач.


Но давайте остановимся на одной "ложке дёгтя". Идиллическую картину может испортить вопрос распространения и обновления приложений среди сотрудников. Как показывает опыт, мало написать корпоративное приложение. Нужно ещё найти удобный способ доставить его до целевой аудитории, а затем делать обновления.


Мы в EastВanc Technologies написали некоторое количество корпоративных мобильных приложений, и всегда вопрос с установкой и обновлением вставал остро. Среди всех вариантов один нам кажется достаточно технологичным и интересным – свой магазин приложений. В посте поделимся деталями, как мы реализовали магазин под Android для пользователей корпоративных приложений.


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

Пишем чат-бот викторину с помощью Microsoft Bot Framework

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

У нас есть традиция – каждой весной мы участвуем в Днях карьеры любимого Новосибирского госуниверситета, главной кузницы наших кадров. И каждый год мы придумываем для студентов что-нибудь любопытное. В этом году сделали мастер-класс о том, как написать чат-бота. Для регистрации на мастер-класс запустили в Telegram собственного бота «Академик» @academic_quiz_bot. Его же все вместе и собирали на мастер-классе.


image


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


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

Как автоматически создать отчет о релизе

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

Сегодня расскажем, как автоматизировать создание отчетной документации по релизу (release notes) на основе импорта данных из трекинговых систем TFS, Redmine и JIRA и из системы управления проектами Microsoft Project Server.


image


Статья будет интересна в первую очередь менеджерам IT-проектов.


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

Интеграция Android-приложения с фискальным принтером и кардридером

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

Всем привет! Сегодня мы хотим поделиться нашим опытом работы с периферийными устройствами на платформе Android.


Представим себе...


Вы пришли в горнолыжный прокат за лыжами и вам нужно рассчитаться картой и получить договор-оферту об оказании услуги и чек. Казалось бы, что может быть проще?
image


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

Как мы делали экосистему – единый «язык» дизайна для front end десятков связанных систем

Время на прочтение10 мин
Количество просмотров9.9K
В этом посте мы расскажем о том, как учились разговаривать с пользователем на «языке» дизайна UI/UX и пришли к необходимости создания единой экосистемы для разных приложений одного заказчика. А также о том, какие технологии в этом помогли.

Что мы подразумеваем под единой экосистемой? Это комплекс разных IT-решений, веб- и мобильных приложений, объединенных единым «языком», на котором они разговаривают с пользователем. Такой язык есть, например, у всех продуктов Microsoft или у всех устройств Apple. Какое бы приложение одного и того же производителя вы не открыли, оно будет повторять логику своих «сородичей», показывать вам знакомые иконки.
Для компаний, создающих цифровые продукты, единая экосистема – ключевое конкурентное преимущество. Для нецифровых компаний, которые переходят «в цифру», создание аналогичных единых экосистем становится необходимостью, поскольку дает много преимуществ. В первую очередь, конечно, обеспечивает пользователям однородный UX и UI во всех системах, облегчает поддержку и обновление систем, повышает конверсию и удовлетворенность клиентов.
Разработка такой экосистемы стала для нас итогом длинного пути, о котором мы и расскажем.
Читать дальше →

Непридуманные истории об EastBanc Technologies в фотографиях

Время на прочтение8 мин
Количество просмотров4.2K
Каждый год мы придумываем новую концепцию для корпоративного календаря. Как и обещали год назад, наш календарь 2017 мы сделали совсем не похожим на предыдущий. Он получился, кажется, самым теплым и очень настоящим. Вся правда об EastBanc Technologies в нашем сегодняшнем посте.



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

Как заполнить 100 таймшитов за 2 минуты

Время на прочтение12 мин
Количество просмотров25K
Пост о том, почему наши программисты теперь заполняют таймшит не 32, а только 2 минуты и о том, как можно наладить автоматический учет рабочего времени за счет импорта данных из трекинговых систем TFS, Redmine и Jira на Microsoft Project Server.



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

Проблема — бардак в заполнении таймшитов


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

100% онлайн-авиапроездной или Как укротить систему бронирования

Время на прочтение8 мин
Количество просмотров8K
Путешествие между Петербургом и Москвой за последние годы из события превратилось в рутинную задачу. Кто-то еженедельно мотается из Питера в Москву или наоборот на работу, по работе. У кого-то там девушка, родители, друзья… Перелет на самолете занимает чуть больше часа. Между двумя столицами в день летают более 40 рейсов.

Да и не только Москва и Питер генерируют постоянный трафик. Появляются и другие экономические и культурные центры. В Казань летает свыше 10 рейсов в день. В Краснодар – более 20.

Вслед за изменением поведения людей, меняется и такая консервативная область, как авиация. Гибкие тарифы, билеты с открытой датой, а теперь и проездные билеты.



Сегодня расскажем, как реализовали онлайн-покупку, оформление и изменение билетов в рамках авиапроездного или multipass. И дали активно путешествующим возможность курсировать между городами максимально легко. Если вам интересны технические аспекты укрощения систем бронирования, или вы один из путешественников – наша статья для вас.
Читать дальше →

Практики успешной монетизации API на базе Azure API Management

Время на прочтение6 мин
Количество просмотров9.6K
Всем привет!
Сегодня хотим обсудить тему управления API. Когда имеет смысл открывать свой API, кто имеет возможность монетизировать свой API и как внедрить систему API менеджмента, чтобы затраты, как на начальное внедрение, так и на его эксплуатацию были минимальны.



Мы хотим поделиться своим опытом разработки системы управления API на базе Azure API Management. Давайте начнем с самого начала.
Читать дальше →

На пути к полной типизации с TypeScript, Swashbuckle и AutoRest

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

Введение


В данной статье рассматривается вопрос о том, как реализовать обмен типизированными сообщениями между Back-End на основе ASP.NET Web API и Front-End, созданного с использованием TypeScript. Это приобретает особенное значение при работе над объёмными проектами, и тем-более важно, если команда является распределенной. Например, когда Back-End и Front-End разработчики работают из разных мест, в разных часовых поясах, и не всегда имеют возможность проконтактировать и обсудить что-либо. В этом случае отслеживание изменений представляет кропотливую работу, которая может быть чревата множеством трудноуловимых ошибок.

Для автора статьи, как для человека, который пришел к разработке Front-End со стороны WPF и Silverlight, большой проблемой, стало отсутствие статической типизации. Сколько раз вместо того чтобы сложить “2” и “2” складывал “2” и “Функцию возвращающую 2”, или передавал DOM объект вместо его jQuery обертки. Появление статических анализаторов кода, таких как JSLint, несколько облегчило проблему, но настоящим прорывом, особенно в командной разработке, для нас стал TypeScript.


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

Мобильное приложение против мошенников и бумажной волокиты в автостраховании

Время на прочтение10 мин
Количество просмотров8.6K
Сегодня хотим поделиться нашим опытом в разборе автомобилей. Нет, мы не планируем устраивать выпуск Top Gear. У нас для вас другая тема – как с помощью мобильного приложения перевести в цифровой формат бумажную волокиту вокруг добровольного автострахования – всем известного КАСКО.

Тема будет интересна в первую очередь тем, кто занимается разработкой мобильных бизнес-приложений и автоматизацией бизнес-процессов. Интересные технические моменты будем рассказывать на примере разработки под iOS.

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

IoT-решение за 1,5 часа

Время на прочтение13 мин
Количество просмотров29K
Или как мы зажгли лампочку со смартфона через облачную службу на глазах изумленных студентов НГУ.

Полное техническое описание решения мы приводим внизу, а начнем с лирическо-философского пролога.

Глава 1. Лирическая


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

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

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность