Principal Software Engineer
Posted Updated
Description
Required:
- 8+ years of software engineering experience, with a strong portfolio of production systems you architected and shipped.
- Expert-level Python — application development, async patterns, type-checking, testing frameworks (pytest), performance profiling.
- Strong C#/.NET — OOP design, .NET Core / .NET 8, REST APIs, background services. Candidates without C# experience will not be considered.
- Production experience with Generative AI: Azure OpenAI, LangChain, Semantic Kernel, RAG architectures, embeddings, structured output extraction, evaluation harnesses.
- Hands-on experience with agentic AI frameworks in shipped production systems — LangGraph, AutoGen, CrewAI, or equivalents. This is not optional: we need someone who has built agentic systems, not just read about them.
- Azure platform depth: AKS, Azure Functions, CosmosDB, Postgres, Azure OpenAI, Azure DevOps, Terraform.
- Distributed system design: microservices, event-driven architecture, API design, multi-tenant data isolation, observability.
- Enterprise engineering discipline: TDD, CI/CD, RBAC/IAM, secure coding, SQL performance tuning.
- Ability to communicate architecture decisions in writing and in technical reviews; comfort with client-facing technical interaction.
Preferred:
- TypeScript/React production experience for full-stack coverage.
- Document understanding: vision LLMs (GPT-4o Vision), OCR, multi-modal extraction pipelines from PDF/DOCX.
- Familiarity with contract management, procurement, or invoice processing domains.
- Experience contributing to or consuming open-source AI frameworks.
Skills
- Agentic AI
- AI
- AKS
- API
- Api Design
- AutoGen
- Azure
- Azure DevOps
- Azure Functions
- CI/CD
- Cosmos Db
- CrewAI
- C#
- DevOps
- .NET
- Embeddings
- Event Driven Architecture
- Generative AI
- IAM
- LangChain
- LangGraph
- LLM
- Microservices
- Observability
- OOP
- OpenAI
- PostgreSQL
- pytest
- Python
- RBAC
- React
- REST
- Secure Coding
- Semantic Kernel
- SQL
- TDD
- Terraform
- TypeScript