Software Engineer (Python / C++) — ML Platform & Production Integration
Regular, Salaried, Full-TimeJob Overview
Position Overview:
We are seeking a Software Engineer to help bridge the gap between machine learning research and production deployment. In this role, you will work closely with Machine Learning Engineers developing algorithms for defect detection and in-situ process monitoring in laser powder bed fusion additive manufacturing.
Your primary focus will be production software: translating validated Python prototypes into high-performance C++ implementations, integrating algorithms into the printer software stack, developing robust testing and validation frameworks, and building the infrastructure needed to support reliable and efficient machine learning workflows. This position is ideal for engineers who enjoy transforming innovative ideas into production-ready systems that deliver measurable impact. This is a hands-on engineering role for someone who enjoys turning working prototypes into maintainable production code, cares about correctness and test coverage, and can build practical tools for data management, batch processing, and pipeline automation.Position Overview:
We are seeking a Software Engineer to help bridge the gap between machine learning research and production deployment. In this role, you will work closely with Machine Learning Engineers developing algorithms for defect detection and in-situ process monitoring in laser powder bed fusion additive manufacturing.
Your primary focus will be production software: translating validated Python prototypes into high-performance C++ implementations, integrating algorithms into the printer software stack, developing robust testing and validation frameworks, and building the infrastructure needed to support reliable and efficient machine learning workflows. This position is ideal for engineers who enjoy transforming innovative ideas into production-ready systems that deliver measurable impact. This is a hands-on engineering role for someone who enjoys turning working prototypes into maintainable production code, cares about correctness and test coverage, and can build practical tools for data management, batch processing, and pipeline automation.Responsibilities
- Productionize ML algorithms: Take validated Python prototypes from MLEs and implement equivalent, performant C++ modules suitable for integration into production printer software.
- Integration and release support: Work with print software and embedded teams to integrate new algorithms, resolve build and runtime issues, and support release validation on hardware or representative test environments.
- Testing and quality assurance: Design, implement, and execute test plans (unit, integration, and regression) to verify numerical correctness, edge cases, and parity between Python reference implementations and C++ production code.
- Build ML infrastructure and tooling: Develop and maintain Python-based utilities and services that support MLE work—e.g., data download and cataloging, batch preprocessing, dataset versioning, pipeline orchestration, and operational scripts.
- Improve data management workflows: Help structure how build sensor data is stored, indexed, retrieved (including from archival storage), and made available for training and evaluation.
- Reduce engineering toil: Identify repetitive tasks in the ML workflow (data movement, labeling prep, evaluation runs) and automate them with well-documented, reliable tooling.
- Partner with MLEs on specifications: Clarify interfaces, performance requirements, and acceptance criteria so prototypes can be handed off cleanly and integrated without ambiguity.
Requirements
- Bachelor's degree in Computer Science, Software Engineering, or a related field.
- 3+ years of professional software development experience.
- Strong proficiency in Python for scripting, tooling, and data processing.
- Strong proficiency in C++ for production software development.
- Experience writing automated tests and executing structured test plans.
- Experience with version control, code review, and working in a shared production codebase.
- Ability to read and reason about ML or image-processing code written by others, even if model design is not your primary focus.
- Clear written and verbal communication; comfortable working across ML and platform/software teams.
Nice to Haves
- Experience porting algorithms from Python (NumPy, OpenCV, PyTorch) to optimized C++.
- Familiarity with computer vision, image processing, or numerical computing libraries.
- Experience with additive manufacturing, industrial IoT, or sensor data pipelines.
- Experience with AWS or similar cloud storage and batch data workflows.
- Familiarity with CMake, cross-platform builds, or embedded/edge deployment constraints.
- Experience building internal developer tools, data catalogs, or ETL-style pipelines.
- Exposure to CI/CD, static analysis, or performance profiling in C++ codebases.
Make Your Resume Now