Remote
Applied Research - Software Engineering
About this role
Senior/Principal, Applied Research Software Engineer Remote ABOUT THE JOB Company Intro: TurbineOne is the frontline perception company. We deliver decision advantage, better situational awareness, and stronger force protection. Our customers love how we automate the right portions of the military intelligence cycle while keeping them in the loop. The company is a small, fast-moving, and high-performance startup that is backed by the best DefenseTech venture capitalists.
Job Title: Senior/Principal, Applied Research Software Engineer Reporting directly to: The Director of Applied Research Location: Geographically flexible for home-office The Applied Research team identifies promising research and turns it into effective, edge-focused capabilities that people can use without a background in machine learning. This is not a pure research organization: success means shipping timely, reliable product features around rapidly evolving models and algorithms.
Primary Responsibilities Turn state-of-the-art research implementations into product features that deliver useful machine learning capabilities to operators at the edge. Scope and own initial product integrations from end to end: evaluate a research implementation, define an incremental path to delivery, adapt and productionize the core capability, build the required APIs and data flows, and update the product UI so users can access it.
Build in-product integrations into the Frontline Perception System and other TurbineOne artifacts, working across Python model services, Golang application services, and the Vue 3 client as the feature requires. Collaborate with Research, Product, Design, Mission, Field Engineering, and external technical partners to understand the operational problem and match it to a set of possible solutions based on state-of-the-art algorithms and machine learning processes.
Develop reliable software around imperfect and rapidly evolving models, including tests, observability, failure handling, and clear technical documentation. Validate solutions work against real customer data. Design for disconnected, resource-constrained environments by considering latency, compute, memory, bandwidth, hardware architecture, and model packaging from the beginning. Contribute actively to technical design and code reviews, help teammates navigate unfamiliar parts of the stack, and improve the shared frameworks that make future integrations faster.