Overview:
We are seeking a highly skilled and experienced Principal Software Engineer to lead and mentor our development team in designing, developing, and deploying cutting-edge software solutions. The ideal candidate will have extensive experience with the Microsoft technology stack, including .NET Core, ASP.NET, C#, SQL Server, and Azure. They will be responsible for overseeing the technical aspects of projects, ensuring best practices in software engineering, and driving continuous integration/continuous deployment (CI/CD) processes.
Key Responsibilities:
- Technical Leadership: Provide technical leadership and mentorship to a team of software engineers, guiding them through complex technical challenges and architectural decisions.
- Software Development: Design, develop, and maintain high-quality software applications using .NET Core, ASP.NET, C#, and SQL Server.
- Cloud Integration: Architect, implement, and manage cloud-based solutions on Microsoft Azure, ensuring scalability, performance, and security.
- CI/CD Pipeline Management: Develop and manage CI/CD pipelines, automating deployment processes to ensure seamless integration and delivery of software products.
- Code Quality: Establish and enforce coding standards, perform code reviews, and ensure the implementation of best practices in software development.
- Project Management: Collaborate with project managers, product owners, and other stakeholders to define technical requirements, estimate effort, and prioritize tasks.
- Innovation: Stay up-to-date with emerging technologies and industry trends, evaluating their applicability to our products and services.
- Collaboration: Work closely with cross-functional teams, including QA, DevOps, and UX/UI designers, to deliver comprehensive and robust software solutions.
Qualifications:
- Bachelor’s or Master’s degree in Computer Science, Engineering, or a related field.
- 10+ years of experience in software development with a strong focus on the Microsoft technology stack.
- Extensive experience with .NET Core, ASP.NET, C#, and SQL Server.
- Proven expertise in designing and implementing cloud solutions using Microsoft Azure.
- Strong experience with CI/CD practices and tools such as Azure DevOps, Jenkins, or similar.
- Deep understanding of software architecture, design patterns, and best practices.
- Experience in leading and mentoring engineering teams.
- Excellent problem-solving skills and the ability to work in a fast-paced environment.
- Strong communication skills, both written and verbal, with the ability to convey complex technical concepts to non-technical stakeholders.
Preferred Skills:
- Experience with microservices architecture.
- Knowledge of containerization technologies such as Docker and Kubernetes.
- Familiarity with frontend technologies like Angular, React, or Vue.js.
- Experience with automated testing frameworks and tools.