Senior .NET Developer
Apply on
Title: Senior .NET Developer.
Location: Chicago, IL (Need Onsite, Hybrid 3 days from office).
Duration: 12 Months Contract.
We are seeking a highly skilled and experienced Senior .NET Developer to join our team and play a crucial role in modernizing our legacy platform to ASP.NET Core 8. This role requires a hands-on developer with deep expertise in microservices, ASP.NET Core, clean architecture, asynchronous processing (e.g., Kafka, EventHub), and data synchronization between legacy and modern systems. The ideal candidate will have a strong foundation in building and testing scalable services, performance optimization, and domain-driven design (DDD). Experience with Azure services, observability tools, and modern search solutions is essential.
Key Responsibilities:
- Platform Modernization: Work on transitioning our existing platform from legacy technologies to ASP.NET Core 8, leveraging modern development techniques, architecture, and best practices.
- Microservices Development: Design, develop, and maintain microservices using ASP.NET Core, ensuring scalability, modularity, and clean architecture principles.
- Asynchronous Processing: Implement asynchronous processing solutions such as Kafka, Azure EventHub, or orchestrations to support real-time data flow and event-driven architectures.
- Data Synchronization: Handle complex data synchronization between the legacy platform and new systems in both directions, ensuring data integrity and performance.
- Performance Optimization: Identify bottlenecks and optimize performance across services, databases, and system interactions, including efficient use of ORMs like Entity Framework (EF) or Dapper.
- Domain-Driven Design: Create and implement domain models that accurately reflect business requirements, with practical experience beyond just theoretical knowledge of DDD.
- RESTful API Development: Design and implement APIs following REST guidelines, ensuring proper authentication and authorization using Azure AD/Entra ID.
- Observability: ability write traces, logs and exception that can be monitored with observability solutions using tools like Splunk, APM, Datadog, Azure App Insights, and ELK Stack for monitoring, logging,
Performance analysis.
- Search Tools: Integrate and work with search technologies such as ELK, Azure Cognitive Search, Redis Search, or Solr to improve data access and retrieval.
- REST, GraphQL and gRPC: Develop and maintain services using REST, GraphQL, gRPC, WebSocket, and SignalR to provide real-time capabilities and efficient data handling.
- Data Sharding & Partitioning: knowledge of various techniques for sharding and partitioning to scale databases and improve system performance.
- DevOps & CI/CD: Work closely with DevOps teams and use tools like GitLab, GitHub, and Azure DevOps for source control, CI/CD pipelines, and automated testing.
- Technical Documentation: Write and maintain technical documentation, including low-level design documents using tools like Word, Visio, Confluence, and internal wikis.
- Testing & Quality Assurance: Ensure the quality of your work by writing unit and integration tests, participating in load and stress testing, and contributing to continuous testing efforts.
- Coding Standards: Produce high-quality, clean, and maintainable code, adhering to coding standards and best practices.
Required Skills and Experience:
- NET Core 10+ (preferably 2-3 years of experience with ASP.NET Core 5, 6,7, 8): Proven experience developing enterprise-grade applications using ASP.NET Core.
- Microservices Architecture: Hands-on experience in building microservices following clean architecture principles.
- ORM (EF or Dapper): Strong experience with Object-Relational Mapping tools for data access and performance tuning.
- Asynchronous Programming: Deep understanding of asynchronous programming (async/await, TPL) and non-blocking programming techniques.
- AuthN and AuthZ: Experience implementing authentication and authorization mechanisms, preferably with Azure AD/EntraID.
- Observability: Familiarity with observability practices and tools like Splunk, Datadog, Azure App Insights, ELK Stack, and APM.
- Search Tools: Hands-on experience with search technologies like Elasticsearch (ELK), Azure AI Search, Redis Search, or Solr.
- Query Languages: Proficient in multiple query languages including SQL, KSQL, and similar.
- GraphQL, gRPC, WebSocket, SignalR: Experience with modern API and communication technologies, particularly in building scalable and real-time applications.
- Sharding and Partitioning: Understanding of sharding and partitioning for scalable data solutions.
- OOPs and Design Patterns: Strong command of Object-Oriented Programming principles and commonly used design patterns.
- DevOps Tools: Working experience with GitLab, GitHub, and Azure DevOps in building CI/CD pipelines.
- Documentation: Proficiency in creating technical documentation, including design specs, system diagrams, and technical articles in Word, Visio, and Confluence.
- Testing: Strong experience with unit testing, integration testing, and involvement in performance, load, and stress testing.
Preferred Qualifications:
- Azure Services: Deep understanding of Azure cloud services, including App Services, Azure Functions, EventHub, Service Bus, and other PaaS offerings.
- API Design: Practical experience in designing APIs that follow best practices, including security, scalability, and maintainability.
- Experience in Modernization Projects: Prior experience working on large-scale modernization or digital transformation initiatives.
- Problem Solving: Excellent analytical and problem-solving skills, with a strong focus on delivering practical solutions.
- Agile Methodologies: Experience working in Agile environments, familiar with Scrum, Kanban, or other Agile methodologies.
Education:
Bachelor s degree in Computer Science, Engineering, or related field (or equivalent experience).