EPAM Systems is a leading global provider of digital platform engineering and development services. They are seeking a Lead Software Engineer with deep expertise in .NET to optimize and troubleshoot complex SQL logic, ensure the stability of legacy systems, and drive modernization through the design and development of new microservices and cloud-native solutions.
Responsibilities:
- Optimize and troubleshoot complex SQL stored procedures and database logic
- Ensure stability and performance of mission-critical legacy systems
- Refactor and modernize legacy code incrementally while maintaining backward compatibility
- Design and develop new microservices using ASP.NET Core and C#
- Implement Event Sourcing patterns and CQRS architecture
- Build RESTful APIs and integrate with modern frontend frameworks
- Apply Domain-Driven Design (DDD) principles to new features
- Implement cloud-native solutions using Azure
- Utilize containerization with Docker
- Apply modern development practices including CI/CD pipelines
Requirements:
- 5+ years of professional .NET development experience
- Strong proficiency in C# and ASP.NET Core
- Deep understanding of SQL Server including stored procedures, functions and query optimization
- Hands-on experience with WCF services (maintenance and troubleshooting)
- Solid knowledge of RESTful API design and development
- Strong understanding of OOP, SOLID principles and design patterns
- Proficiency in Entity Framework Core or similar ORMs
- Experience with Git and modern version control workflows
- Strong problem-solving and analytical abilities
- Good communication skills for both technical and non-technical audiences
- Ability to balance maintaining legacy systems with driving modernization
- Adaptability to changing priorities and technologies
- Containerization with Docker and orchestration with Kubernetes
- CQRS (Command Query Responsibility Segregation) pattern implementation
- Event Sourcing architecture and implementation
- Domain-Driven Design (DDD) principles and tactical patterns
- Experience migrating WCF services to modern alternatives (gRPC, REST)
- Experience with message brokers (RabbitMQ, Azure Service Bus, Kafka)
- Familiarity with microservices architecture
- Knowledge of Event-Driven Architecture
- DevOps practices and CI/CD pipeline implementation