Principal Software Engineer
On-siteBengaluru, Karnataka, India
Job Summary
Build reliable systems integrating large language models into products using Retrieval-Augmented Generation and vector databases. Develop and maintain full-stack web applications with .NET (C#, ASP.NET Core) and React.js, optimizing database solutions in MS-SQL, PostgreSQL, or NoSQL. Implement RESTful APIs, integrate third-party services, and leverage AI tools like Copilot to enhance engineering efficiency. Ensure high performance, scalability, and security while conducting code reviews, writing unit tests, and mentoring junior developers. Collaborate with cross-functional teams to define, design, and ship new features within an Agile environment.
Required Qualifications
- Bachelor's degree in computer science, Engineering, or a related field (or equivalent experience)
- 12+ years of experience in software development
- Hands-on experience building AI agents with Large Language Models (LLMs), including Retrieval-Augmented Generation (RAG), as well as tuning models
- Apt with GPTs, Llama, or any other LLM using frameworks such as LangChain, LangGraph
- Knowledge of vector databases, memory systems, and human-in-the-loop workflows
- Hands-on with AI-driven development tools, intelligent code assistance, and workflow automation
- Experience in working with product-based companies, contributing to the development, enhancement, and scaling of high-quality products (product lifecycle management)
- Strong proficiency in C#, ASP.NET Core/.NET 8+, Web API, Entity Framework Core
- Expertise in React.js, TypeScript, Redux, Next.js
- Experience with SQL Server, MS-SQL Server or NoSQL databases (MongoDB, Redis)
- Knowledge of RESTful API development and integration
- Search and analytics engine like Elastic Search
- Experience with unit testing (xUnit, Jest, Mog) and integration testing
- DevOps & CI/CD - Familiarity with Docker, Kubernetes, Azure DevOps
- Ensure high performance, scalability, and security of applications
- Conduct code reviews, write unit tests, and follow TDD and Agile development practices
- Mentor junior developers and collaborate with UX/UI designers and product teams
- Ensure application security, performance, and scalability
- Excellent problem-solving and analytical skills
- Strong communication and collaboration abilities
- Ability to work independently and take ownership of projects
- Experience with using LLMs using embeddings, RAG, VectorDB and prompt engineering building production grade applications
Desired Qualifications
- Expertise in React.js, TypeScript, Redux, Next.js (a plus)
- Knowledge of the following technologies is a plus: Experience with GraphQL, WebSocket, or SignalIR
- Knowledge of Microservices architecture
- Familiarity with Blazor or Angular
- Experience with Infrastructure as Code (Terraform, Bicep)
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.