Senior Software Engineer
Salary: $115,000 – $140,000 per year + annual bonus
Your code won't just live in a cluster somewhere: it will run inside smart cameras on factory floors and distribution centers around the world. You'll join a team developing software that powers Cognex machine vision systems used across global manufacturing, logistics, and industrial automation. Having built applications in .NET, C++, and Python over the years, the team has recently added Rust.
We're looking for a Senior Software Engineer who enjoys shipping meaningful features, solving complex technical problems, and improving a long-lived production platform. You'll remain deeply hands-on with software deployed on our smart camera devices in customer environments, working as part of a small, 10-person team that collaborates with engineering teams around the world, primarily in the US. This isn't embedded firmware development, but it calls for the same mindset: valuing reliability, performance, and thoughtful use of resources over typical cloud-native trade-offs.
Responsibilities
Design, develop, and support production software using .NET and Python, with occasional Angular work and growing use of Rust (including an existing Rust library consumed by C++ products) as part of a growing ecosystem
Translate ambiguous requirements into clear designs, leading them through implementation, testing, and release as reliable features
Investigate and resolve complex technical issues across a mature platform
Make pragmatic technical decisions accounting for product, system, and cross-team dependencies
Enhance engineering practices, code quality, documentation, testability, system stability, and operational confidence
Contribute through code reviews, documentation, and clear technical communication
Collaborate with local and global engineering teams to align dependencies and deliver cohesive solutions
Required Skills
5+ years of software engineering experience delivering multi-release production systems
Strong .NET, OOP Python, Java, or comparable experience, with adaptability for new languages
Experience with production software deployed on physical device hardware (not purely cloud-native or Kubernetes-based)
Comfortable working in Linux environments
Strong analytical, debugging, troubleshooting, and communication skills
Working Knowledge
Experience with backend systems and frontend frameworks (Angular, React, Vue, etc.)
Resource-conscious design for constrained or operational environments
Understanding of memory, performance, and reliability (no firmware/embedded required)
What You Can Learn in the Role
Cognex products and the industrial automation domain
Angular specifically
Rust and its role in our longer-term platform direction
Ways of Working
Auckland-based hybrid (3 days office, 2 WFH)
Close collaboration with US engineering, with occasional early starts
Requires scheduling flexibility to support global customers
Occasional on-call support (~1 week in 6), not a core duty