👀 Дизайнеры, какая команда подходит вам по вайбам? Проверяйте на Вайб-чеке→ vibe.habr.com

Team lead / Lead .NET developer

Местоположение и тип занятости

МоскваПолный рабочий день

Компания

Российский стартап, специализирующийся на разработке технологических решений для автобизнеса

Описание вакансии

Условия работы

Основные требуемые знания и навыки:

  • C#, MS .Net. Понимание разработки self-hosted и IIS-hosted приложений, многопоточной разработки (применимость и преимущества потоков и асинхронного выполнения, принципы и примитивы синхронизации, tasks).
  • Базовые принципы современной разработки ПО, какие преимущества дают и какие ограничения накладывают:IoC/DI, слабая связанность, разделение по слоям и компонентам, логгирование, пригодность кода для юнит-тестирования. Умение писать модульные и интеграционные тесты.
  • Умение объяснить на примере хотя бы по одному паттерну из каждого раздела GoF (имеется ввиду не заученность, а понимание практической применимости).
  • Веб-фреймворки для MS .Net: ASP.Net MVC и WebAPI. Понимание разработки генерируемых сервером HTML-страниц (Razor) и REST API.
  • Разработка БД SQL (MS SQL предпочтителен), понимание принципов построения и оптимизации на уровне программиста: нормализация/денормализация таблиц, представления, индексы, хранимые процедуры, принципы и виды транзакционных операций, понимание проблем и преимуществ «грязного» чтения.
  • Организация доступа к БД SQL из кода MS.Net: Entity Framework, Dapper, низкоуровневые объекты доступа, преимущества и ограничения ORM.
  • Особенности высоконагруженных и масштабируемых сервисов: распараллеливание вычислений, доступ к данным, кэширование (в т.ч. распределенное) и т.д.
  • Распространенные форматы, алгоритмы и протоколы, их преимущества и ограничения:
  • Обмен данными: TCP/IP, HTTP, HTTPS, WebSockets. Понимание IoT-специфичных протоколов будет преимуществом.
  • Сериализации данных: XML, JSON. Знание специфических форматов (Google Protobuf, Apache Avro) будет преимуществом.
  • Шифрование: AES, RSA.
  • Аутентификация: X.509, OAuth 2.0, OpenID Connect.
  • Опыт работы с Git, issue tracking системами (у нас Jira), системами ведения техдокументации (у нас Confluence), системами CI/CD (у нас TeamCity и Octopus).

Будет преимуществом:

  • Опыт кроссплатформенной разработки с использованиемMS.Net Standard/Core 2.x, разработки на .net сервисов с хостингом под Linux/Docker/k8s.
  • Опыт использования Microsoft Azure и разработки для ее PaaS решений: IoT Hub, Service Bus, Event Hub, Redis Cache,Storage Services, Notification Hub.
  • Применение NoSQL и key/value хранилищ данных (в первую очередь Azure Tables).
  • Использование транспорта на базе месседжинга (Azure Service Bus, RabbitMQ), понимание его преимуществ и ограничений.
  • Опыт разработки с использованием технологий BigData и ИИ.
  • Понимание особенностей взаимодействия с физическими устройствами (сбор больших объемов телеметрии, выполнение команд, обработка сбоев).
  • Опыт разработки back-end-а для мобильных приложений (особенности реализации API, отправка push и SMS, in-app purchases и т.д.).

Условия:

  • Достойная оплата труда, величина которой зависит от уровня кандидата
  • Гибкое начало рабочего дня (с 09:00 до 11:30), по вторникам и четвергам возможность работать удаленно (после соогласования с РМ-ом)
  • Хороший соц. пакет после испытательного срока
  • Компенсация затрат на получение сертификатов Microsoft
  • Возможность прохождения внешнего обучения (курсы, конференции, мастер-классы)
  • Соблюдение ТК (мы "белые")
  • Интересные проекты на стыке передовых технологий.