About Auror
At Auror, we’re empowering the retail industry to tackle theft and Organised Retail Crime, a $150 Billion problem globally. It’s high volume crime that’s increasingly organised in nature and is putting people, retailers, and communities at risk every day.
Founded in New Zealand 13 years ago, we’re working with some of the best and largest retailers in the world across the US, Canada, Australia, New Zealand, and the UK.
Auror is connecting people and intelligence to reduce crime. We’re using technology for good.
In partnership with our leading retail partners, we need people with the passion, determination, and innovation required to overcome one of the world's largest problems. If you’re looking to make a difference with and for the people dedicated to stopping crime, for good, then we want you on our team.
We're also embracing the potential of AI to supercharge our impact—whether that's enhancing the way we detect trends, support our customers, or improve internal workflows. As a company, we're committed to responsibly incorporating AI into how we work and what we build, and we encourage all Aurors to be curious about how AI can elevate their work, regardless of role or function.
The Role
Auror Subject Recognition (ASR) is one of Auror’s most exciting product areas, bringing together software, hardware, AI/ML, design, and customer insights to reshape how retailers prevent crime and create safer stores.
As a Senior Software Engineer in the ASR stream, you’ll help build a next-generation, real-time facial recognition system operating across both edge devices and the cloud. You’ll work with modern computer vision and machine learning technologies to build market-leading solutions that operate reliably in complex, real-world retail environments.
This is a hands-on individual contributor role. You’ll tackle complex technical challenges directly through the code you write, taking ownership of problems from idea through to production. You’ll work closely alongside the Staff Engineer in the team, partnering on technical direction and complex engineering decisions while continuing to build your own influence and technical leadership. You’ll make sound technical decisions, help others around you succeed, and contribute to the engineering practices of the team.
A key part of the role is solving the unique challenges involved in building and delivering software that runs on physical devices at the edge, where compute resources, connectivity, reliability, security, and deployment constraints all matter.
Location
For Senior level and above, we are also open to considering fully remote candidates within New Zealand.
About Auror Engineering
Collaboration is at the heart of the Engineering team at Auror. We believe that we can only build the very best software by working with each other and seeking different perspectives to solve problems. We’re a team that:
Ship code to production constantly: Our product team ships code to production on average at least 10-15 times a day prioritising small releases and short feedback cycles and we do this with a minimal defect rate.
Work on cloud native architecture: We focus on delivering business value to customers, without the burden of maintaining complex infrastructure
Work on innovative and up to date tech stacks: We are constantly evolving our technology stack inline with the needs of our business, leveraging React and Typescript for front-end and C# / Dotnet for back end. We host our services in Azure and utilise a wide range of cloud-native services with an evolving service-oriented architecture.
Contribute to our product: We work with Product Management and Product Design from the very beginning to make sure we’re delivering value to our customers and making a meaningful impact.
Supports a coaching culture: Together, we support one another to level up
Continuously improve: We are relentless about getting better and improving our processes, tooling and tech stack.
What you’ll do
Design, build, and evolve high-performance software for Auror’s real-time subject recognition platform, spanning edge devices and cloud services.
Take ownership of complex technical problems from idea through to production, making sound trade-offs around scaling, reliability, maintainability, quality, and delivery.
Solve challenging performance and reliability problems in resource-constrained environments with strict CPU and memory budgets.
Build and optimise modern .NET and C# applications, with particular attention to memory allocation, garbage collection, throughput, and latency.
Develop and operate containerised workloads on Linux-based edge devices across ARM64 and AMD64 architectures.
Integrate third-party computer vision models, native libraries, hardware components, and device drivers.
Design systems that remain reliable when connectivity is intermittent or unavailable, maintaining data integrity and recovering gracefully.
Contribute to safe deployment and update mechanisms for a fleet of physical devices, including rollback and recovery strategies.
Profile and diagnose production systems to identify memory leaks, CPU bottlenecks, resource contention, and other performance issues.
Make pragmatic technical decisions, balancing performance, reliability, security, maintainability, customer outcomes, and delivery.
Break complex problems into incremental deliverables, using production data, telemetry, logs, and other signals to inform technical decisions.
Proactively identify technical debt and opportunities to improve the reliability, quality, and maintainability of the systems you work with.
Contribute to design discussions, code reviews, and technical decision-making, clearly communicating alternatives and trade-offs.
Help engineers around you grow through thoughtful feedback, collaboration, and sharing your expertise.
About you
High-performance modern .NET and C# - Deep experience building production software in C#, including performance and memory optimisation. You understand how to minimise allocations, manage garbage collection impacts, and investigate performance at runtime.
Containers at the edge - Strong Docker and containerisation experience, ideally deploying containers onto physical edge devices. You’re comfortable with multi-architecture builds across ARM64 and AMD64, reducing image footprints using approaches such as Alpine or Distroless, and managing container lifecycles without relying on an orchestrator such as Kubernetes.
Linux systems engineering - You’ve moved beyond simply developing applications that happen to run on Linux. You understand relevant Linux internals and concepts such as processes, file descriptors, sockets, memory management, signals, and resource constraints.
Third-party and native integrations - You’re comfortable integrating software with third-party libraries, APIs, native components, hardware drivers, or similar dependencies. Experience integrating computer vision or ML inference systems would be particularly valuable.
We are looking for people who demonstrate a strong alignment to our Guiding Principles (you can find these on our Careers page).
You’ll also bring experience in one or more of these areas:
Resource-constrained engineering: Designing software for environments with strict CPU and RAM budgets, including profiling and troubleshooting memory leaks and CPU bottlenecks.
ARM architecture: Understanding the practical differences between deploying software to ARM-based compute and traditional x86/AMD64 servers.
Fleet management and OTA: Designing robust over-the-air update mechanisms for physical devices, including safe rollback, recovery, and A/B partitioning strategies.
Edge connectivity and resilience: Building offline-first or connectivity-tolerant systems that behave predictably during network interruptions and preserve data integrity when devices cannot reach the cloud.
Security at the edge: Designing and deploying secure systems on physical devices and understanding the additional security considerations that come with hardware operating outside a traditional data centre.
Computer vision and ML: Experience working with computer vision pipelines, inference runtimes, ML models, cameras, or similar real-time systems would be advantageous.
Auror is committed to providing an inclusive and accessible application process to all candidates and we are actively working to improve diversity within the tech industry. We celebrate diversity and inclusiveness at Auror, regardless of (but not limited to) race, gender, sexual orientation, family status, religion, ethnicity, national origin, physical disability, veteran status, or age.
If you need adjustments to any part of our recruitment process because of accessibility reasons, please do not hesitate to let us know during the application process. We will work with you to identify adjustments that will allow you to perform at your best.
What are the benefits like?
Competitive salary range: Depending on level of experience a starting salary of $120,000 - 150,000 (IC3).
Annual bonus: Eligibility for a NZD$3,300 (IC3) bonus at the end of the financial year if we’ve hit our revenue goals together.
Employee share scheme: You’ll own part of a company making a real difference!
Flexibility: We are hard-working and outcome focused, but recognise there is more to life than work. We promote a healthy work/life blend.
Shorter work weeks (at full pay): Everyone gets Friday afternoons off, so you can start your weekend early, and do more of whatever it is that makes you happy.
Focus on mental and physical health: We understand how vital our health is and have policies to support your wellness, including Wellness Days, and up to $750 NZD for expert sessions every year.
Health Care Plan: We prioritise looking after your health by offering cover under our premier health business insurance plan through nib health insurance - with Auror covering 100% of your premium.
Family-friendly: We offer comprehensive paid parental leave - 12 weeks for birth parents and 6 weeks for non-birth parents following birth, adoption, or surrogacy, available to all Aurors from day one.
Personal growth: We support our team to participate in courses, conferences, or events that will help them develop their skills.
Team love: We have regular team lunches and social events where most (if not all) activities are during work hours.
What are the next steps?
If you’re excited about our mission and you have the experience and a passion for this role, please hit “Apply”.
If you’re not sure that you tick all the boxes but feel you’re close to what we’re looking for, please apply anyway! We’re proud that Auror is a place where everyone can learn and grow so we’d love to hear from you.
You'll be asked to submit a cover letter as part of your application. While this is optional we do encourage it, as we find cover letters can tell a story that resumes alone often cannot. Our hiring team love to understand what attracted you to this role and why you are excited about the opportunity to join Auror.
Once you apply, you’ll hear from us to acknowledge your application. If you have questions about any of the above, or if you have any accessibility requirements, we’ll be able to help you from there.
Similar Jobs
What you need to know about the NYC Tech Scene
Key Facts About NYC Tech
- Number of Tech Workers: 549,200; 6% of overall workforce (2024 CompTIA survey)
- Major Tech Employers: Capgemini, Bloomberg, IBM, Spotify
- Key Industries: Artificial intelligence, Fintech
- Funding Landscape: $25.5 billion in venture capital funding in 2024 (Pitchbook)
- Notable Investors: Greycroft, Thrive Capital, Union Square Ventures, FirstMark Capital, Tiger Global Management, Tribeca Venture Partners, Insight Partners, Two Sigma Ventures
- Research Centers and Universities: Columbia University, New York University, Fordham University, CUNY, AI Now Institute, Flatiron Institute, C.N. Yang Institute for Theoretical Physics, NASA Space Radiation Laboratory
