Sign up to access all features of our service.
  • Job search
  • Favorites
  • Create a CV
    New
  • Salaries
  • Subscriptions

Software Engineer, Terminal Interface

Full-time

Normal Computing Corporation

Responsibilities

  • Own the terminal application’s information architecture and interaction patterns across commands, navigation, input, streamed output, progress, review, interruption, recovery, empty states, and errors.
  • Ensure reliable and responsive behavior across terminals, shells, multiplexers, remote sessions, macOS, Linux, Windows, WSL, non-English input, IMEs, and constrained customer environments.
  • Own the local session client and help define the structured event interface consumed by the application and broader product.
  • Define reusable command, picker, progress, output, and review patterns for research and product engineers.
  • Design for streaming, cancellation, concurrency, event-loop behavior, persistence, and recovery during long-running work.
  • Align terminology, state, authentication, and handoffs across the terminal, desktop workbench, web product, and agent orchestration surfaces.
  • Evolve the Textual application architecture, packaging, installation, self-update systems, snapshot coverage, and visual-regression testing.

Requirements

  • 4+ years of software engineering experience, including significant experience building and maintaining an interactive terminal application, TUI, or comparably rich local client.
  • Experience improving an existing codebase without breaking established functionality.
  • Familiarity with keyboard and text input, rendering performance, terminal capabilities, process and signal handling, and cross-platform differences.
  • Strong engineering fundamentals and experience with event-driven or asynchronous applications involving streaming data, local processes, cancellation, concurrency, persistence, or partial-failure recovery.
  • Experience testing interactive software and determining which behaviors should be pinned down.
  • Ability to debug across terminal emulators, the application, and the runtime, and to work effectively with researchers and domain experts.
  • Helpful experience includes Textual, Rich, prompt-toolkit, curses, Bubble Tea, Ratatui, Ink, terminal UI frameworks, PTYs, terminal emulation, multiplexers, remote shells, coding agents, cross-platform packaging, internationalization, IME support, visual regression testing, Electron, semiconductors, EDA, or hardware engineering workflows.
Vacancy posted more than 2 months ago

Do you want to receive more vacancies?

Subscribe and receive similar vacancies to Software Engineer, Terminal Interface. Be the first to apply!