Software Engineer - III
Job Description
Kval Inc. is hiring a Software Engineer - III to take end-to-end ownership of components in KvalCAM, working primarily in a C# WPF application with database, testing, and debugging responsibilities.
Responsibilities
- Own defined components of KvalCAM from specification through tested, shipped production code
- Write clean, testable C# that follows existing codebase patterns
- Build and maintain automated tests, including regression tests
- Work in the WPF application layer built on Prism and ReactiveUI
- Contribute to PostgreSQL work including schema changes, queries, and migrations
- Debug and troubleshoot across the application, with gradual expansion into the machine control layer
- Document what you build
- Learn Kval’s controls environment and machine-specific edge cases
- Participate in iterative development and team planning
- Use approved AI-assisted development tools (for example, IDE integrations) for coding tasks under engineer supervision
- Follow all safety protocols and PPE requirements
Requirements
- Bachelor’s degree in Computer Science, Software Engineering, or related field (or equivalent practical experience)
- 4 to 7 years of professional software development experience
- Strong production C# background with automated testing and demonstrated ownership of non-trivial components
- Experience building desktop applications in C#
- Strong relational database and SQL skills, including schema design and migrations
- Experience contributing to a large, long-lived codebase by extending established patterns rather than replacing them
- Experience carrying work through testing and release personally rather than handing off to another group
- Clear written and verbal communication; ability to work independently without close supervision
- Ability to commute daily to the facility by the start date (company does not cover relocation or interview travel costs)
Preferred Qualifications
- Experience on a small engineering team where engineers own work across the full lifecycle
- Experience with industrial automation, machine controls, CAD/CAM, or embedded systems
- Computational geometry or tool-path generation background
- Production experience with WPF and MVVM, including view model design, data binding, and dependency injection
- Production experience with Prism (or a comparable composite application framework)
- Production experience with ReactiveUI, Rx.NET, or another reactive framework
- Rust experience welcome but not required (tool-path engine is written in Rust)
- F# experience or functional programming background in another language
- Production experience with PostgreSQL
- Experience with systems that operate offline or with intermittent connectivity
- Build and release scripting experience, including automated builds, packaging, and installers
Tech Stack
- C#, WPF, Prism, ReactiveUI, Rx.NET, MVVM
- PostgreSQL, SQL
- Rust, F#
- CAD/CAM
Benefits
- 401(k) 4% match
- Employee assistance program
- Health insurance
- Paid time off
- Referral program
Compensation & Location
- Location: Petaluma, CA (onsite)
- Pay: USD $100,000 - $150,000 per year
- Work style: In person