Senior Software Engineer position at Client, leading the design and implementation of complex software systems using.NET and Azure, requiring expertise in object-oriented programming, software design principles, and cloud-native solutions.
Requirements
- Lead the design and implementation of complex software systems using design patterns and architectural principles with a focus on scalability, performance, and security
- Contribute to architectural designs and provide input into technical solutions
- Mentor junior engineers
- Promote a quality-first mindset by enforcing QA standards, improving testing processes, and encouraging automation and CI/CD practices
- Stay up to date with the latest technologies and industry trends
- Exhibit proficiency in object-oriented programming using C# and.NET
- Have extensive experience in designing and architecting software systems with performance, scalability, and security in mind
- Possess excellent leadership, communication, and collaboration skills
- Demonstrate deep expertise in RESTful and asynchronous APIs
- Apply test-driven development, acceptance test-driven development, and pair programming techniques
- Design and implement microservices and event-driven architectures using tools like Azure Service Bus, Azure Functions, and Azure Web Apps
- Show strong understanding of modern front-end frameworks such as Angular 2+
- Have experience building cloud-native solutions in Azure
- Understand and work with CI/CD pipelines, especially with Azure DevOps and YAML
- Be experienced in containerization technologies like Docker and Kubernetes
- Demonstrate deep knowledge of both SQL and NoSQL databases, including Azure SQL and Cosmos DB, and optimization techniques