
Senior Software Engineer
Responsibilities
Qualifications & Requirements
Experience Level: Senior Level
Full Job Description
Senior Software Engineer - Bengaluru
Diligent Corporation seeks a seasoned Senior Software Engineer in Bengaluru to champion technical excellence and architectural innovation within our engineering team. This role is pivotal in driving critical technical decisions, leading major projects from inception to completion, and establishing high standards for engineering quality across our product portfolio. You will primarily focus on our .NET application suite, leveraging AWS and Windows infrastructure.
Key Responsibilities:
- Lead the design, architecture, and ongoing enhancement of .NET applications and Windows-based systems.
- Spearhead technical initiatives, managing them from initial requirements gathering through to production deployment on both on-premise and cloud environments.
- Make crucial architectural decisions, carefully balancing performance, scalability, cost-effectiveness, and long-term maintainability.
- Optimize and maintain ASP.NET applications, Windows Server environments, and enterprise-level databases.
- Diagnose and resolve complex production issues across the entire application stack.
- Develop and enforce engineering best practices, robust security patterns, and quality standards for enterprise applications.
- Explore and integrate AI capabilities (e.g., MCP servers, RAG systems, agentic workflows) where they can demonstrably enhance existing applications.
Technical Stack:
Core:
.NET MVC, ASP.NET, C#, Windows Server, MSSQL, PostgreSQL, React, TypeScript, Docker, AWS
Good to Have:
Node.js, Python, AI/ML frameworks (MCP, AWS Bedrock, LangGraph/Semantic Kernel, Vector Databases)
Required Qualifications:
Core Technical Skills:
- A minimum of 5 years of professional development experience, with a proven history of successfully delivering complex enterprise systems.
- Exceptional .NET (C#) development and architecture expertise is critical for this role.
- Deep experience in Windows Server administration, IIS, and on-premise application deployment.
- Expert-level knowledge of ASP.NET (Web Forms, MVC) and the .NET Framework.
- Advanced skills in React and frontend architecture.
- Extensive experience in MSSQL and PostgreSQL database design, optimization, and performance tuning.
- A strong understanding of microservices, distributed systems, and API design principles.
- Mastery of software design patterns, clean code practices, and refactoring techniques.
- Strong AWS architecture experience.
- Good to have: Node.js experience.
AI/ML Knowledge (Good to Have):
- 1+ years of hands-on experience building and deploying production AI/ML features.
- Proficiency in Python development with AI/ML framework expertise.
- Experience with AWS Bedrock, MCP servers, or AI integration architectures.
- Understanding of prompt engineering, RAG systems, or agentic AI workflows.
- Familiarity with AI evaluation frameworks, monitoring, and security considerations.
Technical Leadership:
- Lead technical design discussions and foster consensus among team members.
- Proactively identify systemic issues across application systems.
- Exercise sound judgment and decision-making capabilities, even under uncertainty.
- Mentor junior engineers, guiding them on .NET best practices and architectural patterns.
- Champion modernization and improvement initiatives while ensuring the stability of production systems.
Note: This position primarily focuses on the maintenance and evolution of our .NET application portfolio. AI/ML experience is considered a significant advantage, but we are primarily seeking highly skilled .NET engineers capable of managing complex enterprise systems and exploring AI integration opportunities as they emerge.