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!
Related searches
- associate software developer New York, NY
- software engineer part time New York, NY
- software developer intern New York, NY
- summer intern software engineer New York, NY
- software developer fintech New York, NY
- software support engineer New York, NY
- ngo software engineer New York, NY
- software engineer - web development New York, NY
- intel software engineer New York, NY
- IT software engineer New York, NY
