Senior AI Software Engineer (.NET)
At a glance
Senior AI Engineering role at Cargoo. Yerevan.
Pay not stated AI Software Engineer salary
aimlroles summary, based on the employer's posting.
What you'll do
- Build LLM and agent capabilities into .NET services, including tool use, structured responses and operational-data retrieval
- Set clear boundaries between model decisions and fixed business rules, with checks, fallback paths and human review
- Track AI quality and reliability through evaluations, test sets, monitoring and safeguards
- Take features from problem definition with product through launch and ongoing production ownership
What you bring
- Senior-level .NET engineering ability
- Sound judgment across complex systems, including knowing when AI is not the right choice
- A focus on outcomes, ownership and navigating unclear problems
Who this fits
This role suits a senior engineer comfortable owning production work amid uncertainty and changing requirements. You’ll use coding agents regularly and are accountable for reviewing, testing and understanding the code they produce. The role is based in Yerevan, Armenia.
From the employer
Problem Space
Logistics operations today are still largely:
- manual
- reactive
- fragmented across tools
- running on incomplete or late data
- full of conflicting constraints
- under real-time decision pressure
- driven by evolving business rules
- a mix of legacy and new systems
Much of this is unstructured: emails, documents, free-text updates, exceptions nobody modelled. That is where AI changes the game.
We’re building a system that:
- ingests real-time operational data, structured and unstructured
- supports planning and execution decisions, with AI agents that act where it’s safe and hand over to humans where it isn’t
- adapts to constantly changing constraints
What You’ll Work On
- AI in production. Building LLM- and agent-powered features into production .NET services: tool calling, structured outputs, retrieval over operational data, document and message understanding.
- The seams. Designing the boundaries between deterministic business logic and probabilistic AI: validation, fallbacks, human-in-the-loop.
- Trust. Making AI measurable and trustworthy: evals, test sets, observability, guardrails and cost/latency budgets.
- Ownership. Owning features end to end, from problem framing with product to running them in production.
Design Principles
- keep things simple before scalable
- prefer explicit logic over magic abstractions, and that includes AI: deterministic where you can, model where you must
- optimize for change, not perfection (models, prompts and providers will change)
- measure AI behaviour, don’t trust vibes
- avoid “framework-driven architecture”
- accept that some parts will be ugly, temporarily
Tech Stack
.NET · Vue.js · service-oriented architecture · relational + operational data storage · cloud-based infrastructure · LLM APIs and agent tooling (e.g. Semantic Kernel / Microsoft.Extensions.AI, MCP) · vector/semantic search · eval and tracing tools
How We Build
- AI-native development is the default. You use coding agents (e.g. Claude Code, Copilot) every day.
- You own what you ship, whoever typed it: you review AI-generated code critically, test it and understand it.
What We Expect
- Strong, senior-level .NET engineering
- Ability to navigate uncertainty and work in ambiguity
- Willingness to challenge decisions
- Focus on outcomes, not just code
- Understanding of trade-offs and complex systems, including when not to use AI
- Preferring ownership over comfort
Strong Plus
- Having shipped LLM/AI features to production and kept them running
- Experience with evals, prompt/version management or AI observability
- Python for prototyping and data work
- Logistics or other real-time operations domain experience
What You Won’t Find Here
- over-engineering everything upfront
- unnecessary microservices
- “clean architecture” for the sake of it
- process-heavy development
- AI demos that never reach production
- wrapping a chatbot around a problem and calling it solved