Normal Computing

Software Engineer, Terminal Interface

Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.

Инженер, который возьмёт на себя терминальное приложение Normal CLI — продукт для AI-ассистированной верификации в полупроводниковой отрасли. Отвечает за информационную архитектуру, интерактивность и кроссплатформенное поведение TUI, а также за локальный session-клиент и его API.

Задачи

  • Владеть терминальным приложением: информационная архитектура и взаимодействие — команды, навигация, ввод и редактирование, потоковый вывод, прогресс, ревью, прерывание, восстановление, пустые состояния и ошибки
  • Обеспечивать корректное и быстрое поведение на разных платформах: терминалы, шеллы, мультиплексоры, удалённые сессии, macOS, Linux, Windows и WSL, неанглийский ввод и IME
  • Развивать локальный session-клиент и участвовать в формировании интерфейса структурированных событий, который он потребляет
  • Определять стандарты для контрибьюторов: паттерны команд, пикеров, прогресса, вывода и ревью
  • Обеспечивать отзывчивость под нагрузкой: стриминг, отмена, конкурентность и поведение event loop для длительных процессов
  • Поддерживать целостность продукта между поверхностями: общая терминология, состояние, аутентификация и переходы между терминалом и остальным EDA-продуктом
  • Развивать архитектуру большого Textual-приложения в сторону переиспользуемых компонентов и чёткого разделения UI, доменной логики и runtime
  • Обеспечивать покрытие snapshot- и visual-regression тестами, упаковку, установку, self-update и тесты для безопасного изменения интерактивного приложения

Требования

  • 4+ года опыта в software engineering, включая значительный опыт разработки и поддержки интерактивного терминального приложения, TUI или сопоставимо насыщенного локального клиента
  • Опыт работы с существующей кодовой базой и её улучшения без поломки работающего
  • Понимание сложностей терминального ПО: клавиатурный и текстовый ввод, производительность рендеринга, неоднородные возможности терминалов, обработка процессов и сигналов, различия между платформами
  • Сильные инженерные фундаментальные знания; приложение написано на Python и Textual, но глубина и инженерное суждение важнее опыта с ними
  • Опыт event-driven или асинхронных приложений: стриминг данных, локальные процессы, отмена, конкурентность, персистентность и восстановление после частичных сбоев
  • Высокая планка к деталям интерфейса: дефолты, сообщения об ошибках, пустые состояния, формулировки
  • Умение отлаживать сквозь границы — от нажатия клавиши в эмуляторе терминала через приложение до runtime
  • Опыт тестирования интерактивного ПО и понимание, какое поведение стоит фиксировать
  • Комфорт в работе с исследователями и доменными экспертами, способность освоить незнакомую техническую область
  • Прагматичное суждение о том, когда инвестировать в долговечную абстракцию, а когда выпустить простое решение

Условия

  • Работа в applied AI компании, создающей фундаментальные hardware и software решения для полупроводниковой индустрии и AI-инфраструктуры
  • Команда распределена между New York City, San Francisco, London, Copenhagen и Pangyo
  • Позиция в product engineering команде, которая также строит desktop workbench, web-продукт и agent orchestration
  • Equal Opportunity Employer: инклюзивная среда для всех сотрудников
  • Возможность запросить разумные accommodations для людей с инвалидностью

Навыки

  • Python
  • Textual
  • Rich
  • prompt-toolkit
  • curses
  • Bubble Tea
  • Ratatui
  • Ink
  • PTY
  • terminal emulation
  • multiplexers
  • SSH
  • tmux
  • WSL
  • Electron
  • visual regression testing
  • IME
  • internationalization
  • self-update systems
  • EDA

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

Senior Manager / Senior Software Engineer – Distribution Analytics, Data Products & AI
Ameriprise Financial Services, LLCSeniorBostonОфис
131,700 – 181,000 USD в год
13 окт.
Senior .NET Software Developer
State of North CarolinaSeniorОфис
87,617 – 109,522 USD в год
13 окт.
Senior Software Engineer - WGU Labs
Western Governors UniversitySeniorRaleighОфис
143,700 – 222,700 USD в год
13 окт.
Lead Software Enigineer (Oracle Essbase Data Engineer)
Wells Fargo & Company - Institutional Retirement & Trust businessLeadCharlotteГибрид
13 окт.
Software Design Engineer
Censis TechnologiesMiddleEverettОфисРелокация
101,200 – 169,050 USD в год
12 окт.
Software Engineer, Terminal Interface — Normal Computing, 200,000 – 400,000 USD в год, New York | itrelocate