улица Николаева 11
«Нанософт разработка» создаёт отечественную САПР-платформу nanoCAD - инструмент проектирования, который помогает российским компаниям обеспечить независимость от зарубежных решений в критичных сферах: BIM, САПР и ERP.
Мы делаем то, что ещё несколько лет назад казалось невозможным: создаём российский BIM-инструмент, реальный продукт, которым пользуются компании по всей стране - от небольших проектных бюро до крупных холдингов.
Мы в поиске middle C# разработчика в команду, которая разрабатывает ядро новой BIM-системы для проектирования инженерных сетей в гражданском и промышленном строительстве - высоконагруженной, многопользовательской, асинхронной. Мы не делаем «ещё один редактор чертежей». Мы строим архитектуру, которая позволит инженерным компаниям работать с огромными моделями, параллельно, в одной среде. И всё это нельзя «раздуть железом». Нужна инженерия, а не просто масштабирование.
Сотрудника ищем исключительно в Новосибирске, так как команда находится в этом городе, и мы предпочитаем работать в офисе (удаленки нет, гибрид доступен после испытательного). Мы считаем, что очная работа ускоряет сложную инженерку.
Мы хотим видеть инженера, который будет брать самостоятельные блоки и доводить их до продакшена: от проработки подхода до релиза и наблюдения в бою, в том числе с фокусом на производительность и предсказуемость выполнения.
Чем предстоит заниматься
- Разрабатывать подсистемы с активным использованием многопоточности и синхронизации.
- Проектировать и внедрять кеширование, экономное потребление памяти, работа с большими объёмами данных.
- Профилировать узкие места, предлагать и реализовывать улучшения.
- Уточнять границы задач по мере развития продукта — у нас ещё формируется «карта местности».
Основной стек
- C# / .NET 6
- C++ для интеграции с CAD платформой
- WPF
- nUnit
- CI/CD на Teamcity
- Mercurial(HG) для версионирования исходников
Подробнее про техническую команду
- У нас царит зрелая инженерная культура, включая Code Inspections - оформления, статический анализ кода, Codereview для всех изменений с минимум двумя одобрениями, Unit тесты с контролем покрытия. У нас открытое и уважительное общение внутри команды.
- У нас есть четкое видение того, какую проблему мы решаем, и мы контролируем качество продукта - тестируем в ветках, только после этого код попадает в основную ветку разработки. Сборка дистрибутива проходит автоматически по кнопке или по расписанию, на тестирование уходит полностью собранный дистрибутив продукта (такой же как для пользователей).
- Мы работаем на рынке с явной конкуренцией, где отрасль требует постоянного совершенствования и оттачивания имеющихся навыков, поэтому мы готовы выделять время и ресурсы на обучение и развитие наших сотрудников.
Этапы отбора
Нам важно понять границы компетенций: где вы уверенно решаете задачи самостоятельно, где вам нужна поддержка и какие зоны хотите усилить. Для этого мы используем два формата - практическое тестовое задание и техническое интервью.
Мы нормально относимся к использованию ИИ при выполнении тестового задания. На интервью попросим объяснить решения, внести правки «на лету», разобрать trade-off’ы - так мы убеждаемся, что за результатом стоит ваша экспертиза.
Если вы любите писать сопровождаемый код, для вас важен контроль над аллокациями и алгоритмами, и хочется быть в команде, где архитектура имеет значение - нам по пути. Откликайтесь, давайте пообщаемся и обсудим лично!