.NET разработчик

до 180 000 руб. до вычета налогов

Требуемый опыт работы: не требуется

Полная занятость, полный день

В Nord Clan мы занимаемся разработкой решений и алгоритмов машинного зрения, создаем высоконагруженные интеграционные проекты, личные кабинеты, системы дистанционного обслуживания для лидеров рынка. Нам доверяют ЦИАН, Банки.ру, Dostaевский, Wildberries, Naumen, Ренессанс, TuTu.ru и др.

Мы ищем:

  • Разработчика с опытом коммерческой разработки на C# от 2 лет, знанием технологического стека Microsoft, включая C#, MS SQL, ASP.NET, MVC/ASP.NET Core и тд, знакомого с базами данных и web-разработкой.

  • Будет плюсом, если вы сталкивались с распределенными системами, докером и микросервисами.

  • Если вы не знаете C#, но имеете обширный опыт разработки на других языках (Python, php, Java) - пишите, мы поможем Вам влиться в команду.

Что нужно делать?

Разрабатывать новые фичи - 65%, фиксить баги - 25% и рефакторить код - 10%.

Нам важно в человеке:

  • Умение доводить работу до рабочего результата с первого раза.

  • Умение работать в команде.

Мы предлагаем:

  • Оформление и оплата по ТК РФ в штат, также сотрудничаем с самозанятыми или ИП

  • Уютный офис в центре города

    • Своя баскетбольная площадка

    • ЗОЖ-уголок

    • Гитара, ковёр, кинотеатр и безлимитный бар

    • Кофе, чай, сладости

    • Собственная парковка и ништяки для велосипедистов

  • Возможность работать удаленно

  • Гибкий график не в ущерб командной работе

  • Учитываем ваши предпочтения при выборе проекта

  • There is also our English club for you to have fun, communicate, and improve. Plenty of topics: your awkward date, Trump chances for the second presidency, does alien life matter? - we got you covered, boys and girls

FAQ:

В каких проектах я приму участие:

Наши типичные проекты можно посмотреть на сайте https://nordclan.com/projects

Нужен ли английский, и на каком уровне?

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

Овертаймы, как часто бывают, какой подход к оплате?

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

Количество дней отпуска?

28 дней в году оплачиваемого отпуска с разбивкой по 14 дней.

В офисе открытая или закрытая планировка?

Смотрите - https://nordclan.com/blog/office_life

А также: https://www.youtube.com/watch?v=49Ygq8lBNEo

Кто ревьюит мое резюме и принимает решение о найме?

TeamLead

Реальные примеры задач из бэклога:

[Feature] Рейтинг врача

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

Изменения в БД

1) В БД сервиса Rate добавить в таблицу Rates новый столбец

DoctorId — uniqueidentifier — Идентификатор врача

2) В БД сервиса Doctor в таблицу Doctor столбы

AverageRate — decimal — Средняя оценка врача в данной специальности

RatesCount — int — Количество оценок, участвовавших в расчёте средней оценки

Логика обновления оценки

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

При вызове клиентом метода оценки /api/v1/Rate: необходимо отправлять в exchange rate.event.v1.direct с RoutingKey "newrate" сообщение вида:

{

"ActivityId" : "<ActivityIdGuid>",

"Score": <ScoreValue>,

"Comment": <CommentString>,

"ActivityType": "<ActivityTypeName>"

}

Метод recalcAverageRating вычитывать сообщения и пересчитать среднюю оценку врачу и новое количество, для чего производит следующие действия:

Рассчитать по данным таблицы, сгруппировав их по DoctorId, среднее значение и общее число оценок, участвовавших в расчёте.

Отправить в exchange rate.event.v1.direct с RoutingKey "newdoctoravgrate" сообщение вида:

{

"DoctorId" : "<DoctorIdGuid>",

"AverageRate": <AverageRateValue>,

"RatesCount": <RatesCountValue>

}

Метод setAverageRating вычитывает сообщение из очереди "newdoctoravgrate.doctor.v1.queue с RoutingKey "newdoctoravgrate" и обновляет данные в таблице Doctor в полях AverageRate и RatesCount соответственно.

[Bug] [Medcard] Дубли записей в мед карте по одной консультации

Причина: есть по 2 записи в медкарте по нескольким консультациям, см. запросы на прод-базе.

Источник - 2 параллельных запроса с фронта на создание записи в медкарте: запросы

Предложения по исправлению:

1. поправить фронт - не делать новый запрос на создание записи в медкарте, пока не завершился предыдущий

2. поправить бэк - добавить уникальный индекс на колонки RecordTypeId + ExternalId (когда не null) на таблице MedCardRecords. Предварительно вычистить дубликаты из БД, желательно миграцией. Оставить те записи, у которых есть ConclusionFileId (при наличии таковых, иначе - любую).

PS: по варианту 1 Web сказал, что дубли исключает. Нужно исключить дубли на сервере

Ключевые навыки

SQL
C#
Английский язык
Java
MS SQL
.NET Framework
.net core

Адрес

Ульяновск, улица Федерации, 97
Показать на большой карте

Вакансия опубликована 12 февраля 2021 в Ульяновске

Похожие вакансии