C# .NET Tech Lead

Posted by Virtusa

  • IT
  • job type Full time
  • job location Colombo

Job description

Key Responsibilities and Accountabilities


Lead the design and development of complex software products, applying software design patterns and architectural principles with a focus on scalability, performance, and security. Develop clean, efficient, high-quality, well-tested, maintainable, and documented code in line with specifications.


Collaborate on architectural designs and technical solutions alongside product managers, scrum masters, and senior engineers to translate requirements into technical specifications and deliver new features.


Conduct code reviews and provide constructive feedback to peers.


Mentor and coach junior software engineers, guiding them through technical challenges, architectural decisions, coding standards, and pairing sessions.


Promote a quality-first software development culture by enforcing standards, processes, testing methodologies, and driving initiatives to improve team efficiency such as automation and CI/CD.


Continuously update knowledge of emerging technologies and industry trends, actively participate in communities of practice, and encourage knowledge sharing.


Skills and Abilities


Proven ability to deliver high-quality software solutions on time.


Proficient in object-oriented programming with C# (.NET) and deep understanding of software design principles and patterns.


Extensive experience designing and architecting complex software systems focusing on scalability, performance, and security. Strong leadership skills with excellent communication and collaboration abilities.


Experienced in designing and implementing complex web (RESTful) and asynchronous APIs.


Strong commitment to quality-driven development practices including TDD, ATDD, and pair programming.


Experienced in microservices and event-driven architectures, utilizing Azure Service Bus, Azure Functions, and Azure Web Apps.


Solid knowledge of component-based frontend frameworks such as Angular 2+.


Skilled in cloud-native development, preferably using Azure.


Experienced in CI/CD pipelines, ideally using Azure DevOps with YAML.


Familiar with containerization technologies including Docker and Kubernetes.


Deep understanding of SQL and NoSQL databases and their optimization, including Azure SQL and Cosmos DB.


Expertise in logical domain and physical data model design.


Desirable skills include familiarity with collaboration tools such as Azure DevOps, Miro, and Confluence; consumer-driven contract testing methodologies like PACT; Infrastructure as Code practices preferably with Terraform; and experience in code hardening and security practices.


Knowledge and Experience


Over 5 years of progressive experience in software development.


Proven track record of leading and delivering complex software projects.


In-depth knowledge of software architecture, design patterns, and system integration.


Strong expertise in debugging, performance optimization, and scalability considerations.


Demonstrated ability to mentor junior developers and provide effective technical guidance.


Excellent communication and teamwork skills.

Qualification

  • High-Quality Delivery: Proven track record of delivering robust, scalable software solutions on time.

  • Backend Expertise: Proficient in object-oriented programming with C# (.NET) and a strong grasp of software design principles and patterns.

  • Architecture & Design: Extensive experience in architecting complex systems with a focus on scalability, performance, and security.

  • API Development: Skilled in building complex RESTful and asynchronous APIs.

  • Frontend Development: Solid knowledge of Angular 2+ and component-based frontend frameworks.

  • Cloud-Native Development: Strong Azure experience, including Azure Web Apps, Azure Functions, and Azure Service Bus.

  • Microservices & Event-Driven Architectures: Hands-on experience building distributed systems and event-driven workflows.

  • DevOps & CI/CD: Proficient in CI/CD practices using Azure DevOps (YAML pipelines).

  • Quality Engineering: Committed to TDD, ATDD, and pair programming for high-quality code.

  • Containerization: Familiar with Docker and Kubernetes for deploying scalable applications.

  • Database Design: Deep understanding of both SQL (e.g., Azure SQL) and NoSQL (e.g., Cosmos DB) databases; expertise in data modeling and query optimization.

  • Collaboration tools: Azure DevOps, Miro, Confluence.

  • Testing practices: Familiarity with consumer-driven contract testing using PACT.

  • Infrastructure as Code: Experience with Terraform.

  • Security: Understanding of code hardening and secure coding practices.

  • 5+ years of progressive experience in software development.

  • Proven ability to lead and deliver complex projects across diverse teams.

  • Deep expertise in software architecture, system integration, and design patterns.

  • Strong problem-solving skills in debugging, performance tuning, and scalability.

  • Experienced in mentoring junior developers and providing technical leadership.

  • Excellent communication and team collaboration skills.


Tell your friends about this:

Similar Jobs
    Available Categories
      Similar Jobs