As a Developer Advocate, you will bridge engineering and developer relations by creating impactful content, engaging with the developer community, and driving adoption of Fireworks' AI platform.
Runtime Engineer
π Description
- Design and implement runtime components for device management, memory allocation and transfers, executable loading, and command submission.
- Abstract simulators, FPGA prototypes, silicon, and future hardware generations behind a stable interface.
- Manage persistent device state, including resident model weights, for serving workloads.
- Optimize runtime overhead against end-to-end LLM inference latency and throughput.
- Define interfaces with compiler, serving, driver, and firmware teams.
- Set technical direction, review dependent designs, and collaborate with compiler and serving engineers.
π οΈ Requirements
- Experience with open runtime designs such as IREE's HAL, or with CUDA or ROCm runtime internals
- Experience with in-memory compute or other non-von-Neumann hardware
- Experience integrating a runtime with an inference server such as vLLM
- Contributions to open-source runtime or systems infrastructure
Full job description
Normal Computing | Build with Us
Normal is an applied AI company solving the hardest problems in AI and silicon. We build foundational hardware and software for the semiconductor industry, critical AI infrastructure, and the broader systems that power our world, in partnership with the world's most advanced institutions. We work as one team across New York City, Silicon Valley (Mountain View), London, Copenhagen, and Seoul.
The Role
Normal's hardware runs the most memory-bound parts of large-model inference inside memory itself, rather than shuttling weights to a processor. The software that makes this programmable doesn't exist yet in any standard form. The runtime is the layer the rest of that software runs through: it is how compiled programs get loaded, scheduled, and executed on our hardware. You will own its design and much of its implementation, and set its technical direction.
This is a senior, hands-on role. Our chip is pre-silicon, so you will build the runtime against our simulators and FPGA prototypes first, behind one interface, so that software above the runtime doesn't change when silicon arrives.
What You Will Own
Runtime Architecture: Own the design of the runtime: device management, memory allocation and host-device transfer, executable loading, and command submission. Success means the compiler and serving layers program our hardware through one stable interface.
Hardware Abstraction: Hide the differences between simulators, FPGA prototypes, silicon, and later hardware generations behind that interface.
Device State: Manage the state that lives on our hardware between requests, such as resident model weights, so the serving layer can rely on it.
Performance: Keep runtime overhead off the critical path for LLM inference, measured by end-to-end latency and throughput.
Cross-Team Interfaces: Define the boundary with the compiler above the runtime, and with the driver and firmware below it, which our hardware team owns.
Technical Leadership: Set the runtime's technical direction, review designs that depend on it, and work with compiler and serving engineers so the interface serves them.
What Makes You a Great Fit
Experience building runtimes, drivers, or hardware abstraction layers for accelerators or other non-standard hardware
Strong systems programming in C++ or Rust: memory management, concurrency, and low-level performance
Track record of owning a complex systems component end to end, from design through production, and driving technical decisions across teams
Understanding of LLM inference workloads and what they demand of a runtime
Comfort building software for hardware that is still evolving, from simulation through bring-up
Bonus Points
Experience with open runtime designs such as IREE's HAL, or with CUDA or ROCm runtime internals
Experience with in-memory compute or other non-von-Neumann hardware
Experience integrating a runtime with an inference server such as vLLM
Contributions to open-source runtime or systems infrastructure
Equal Employment Opportunity Statement
Normal Computing is an Equal Opportunity Employer. We celebrate diversity and are committed to creating an inclusive environment for all employees. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, veteran status, or any other legally protected status.
Accessibility Accommodations
Normal Computing is committed to providing reasonable accommodations to individuals with disabilities. If you need assistance or an accommodation due to a disability, please let us know at accommodations@normalcomputing.com.
Privacy Notice
By submitting your application, you agree that Normal Computing may collect, use, and store your personal information for employment-related purposes in accordance with our Applicant Privacy Notice.
Similar jobs
Search more Software Engineer jobsArchitect and scale the platformβs core systems for ingesting and processing social data, powering AI agents and real-time analytics while shaping technical direction, reliability, and engineering practices.
Senior Software Engineer - Alerting Platform Automation
Build and scale automation for Datadogβs Alerting platform, creating fast test environments and improving infrastructure, CI/CD, deployment, and developer tooling to strengthen reliability and feedback loops.
Develop firmware for an embedded processor on an SoC, bridging higher-level software to AI acceleration hardware while collaborating across hardware and software teams and verifying production-quality performance.
Senior .NET Engineer - Partner Integrations
Lead technical execution and full lifecycle ownership for partner integrations, collaborating with external partners and guiding the engineering team to deliver high-performance REST APIs.
