Saltar al contenido principal

Senior Software Engineer – C# / .NET

Tecnología
Programming.com
Hace 2 díasHasta 4/1/2027
Profesional independientePresencial

Descripción del puesto

Position: Senior Software Engineer – C# / .NET / Distributed Systems

Employment Type: Full-Time/Contract

Experience: 7+ Years location:Remote

Job Overview seeking an experienced Senior Software Engineer to join its IT engineering team. This is a hands-on technical leadership role focused on designing, developing, maintaining, and enhancing business-critical applications, backend services, APIs, and distributed systems.

The ideal candidate will have strong expertise in C#, .NET, full-stack development, microservices, and distributed messaging architectures, with experience building scalable, reliable, and production-grade applications.

The engineer will work across frontend and backend technologies, asynchronous workflows, system integrations, databases, and cloud environments. The role also requires strong problem-solving skills, technical ownership, mentoring capabilities, and the ability to take responsibility for production systems.

Key Responsibilities

  • Design, develop, and maintain full-stack applications using C#, .NET, ASP.NET Core, Blazor, and .NET MAUI.
  • Build scalable backend services, REST APIs, microservices, and system integrations.
  • Develop message-driven and event-driven architectures using NServiceBus, service buses, queues, and asynchronous processing.
  • Implement distributed system patterns, including sagas, durable workflows, retries, idempotency, deduplication, and error handling.
  • Design and maintain database schemas, data models, service contracts, and message contracts.
  • Optimize database performance through query tuning, indexing, transactions, and caching.
  • Build background services, integration components, and asynchronous data workflows.
  • Work with Azure cloud environments, CI/CD pipelines, and modern software delivery practices.
  • Troubleshoot production issues, perform root cause analysis, and improve system reliability and performance.
  • Develop unit, integration, and automated regression tests.
  • Participate in architecture discussions, code reviews, agile ceremonies, and technical planning.
  • Mentor junior engineers and provide technical guidance to the development team.
  • Take ownership of assigned applications and services, including monitoring, maintenance, and production support.
  • Explore and responsibly implement AI-assisted development tools to improve engineering productivity and software quality.
Required Qualifications
  • Bachelor's degree in Computer Science, Engineering, Mathematics, or a related technical field, or equivalent professional experience.
  • 7+ years of professional software development experience.
  • Strong hands-on development experience with C# and .NET.
  • Proven experience developing and supporting production-grade full-stack applications.
  • Strong knowledge of distributed systems, service-oriented architecture, and asynchronous workflows.
  • Experience building APIs, microservices, background services, and system integrations.
  • Strong understanding of relational databases, SQL optimization, indexing, and transactions.
  • Experience working with Azure, cloud environments, CI/CD pipelines, and source control.
  • Experience with modern frontend development and component-based UI frameworks.
  • Strong debugging, troubleshooting, and production support capabilities.
  • Excellent communication, collaboration, and technical problem-solving skills.
Preferred Qualifications
  • Production experience with NServiceBus, including:
  • Sagas and durable workflows.
  • Message handlers and asynchronous processing.
  • Retries and error queues.
  • Message recovery and failure handling.
  • Experience with Blazor and .NET MAUI.
  • Experience deploying mobile applications to Apple App Store and Google Play.
  • Experience with authentication, authorization, dependency injection, and reusable UI components.
  • Familiarity with AI-assisted software development tools.
  • Previous experience providing technical leadership and mentoring engineers.
Keywords
c-sharpdot-netdistributed-computingtime-and-attendanceinformation-technologytraining-and-developmentmicroservicesmentoringcoaching-mentoringplanning-and-designvisual-art-designproduct-development-and-designapplication-service-providerasp-netasp-net-coredot-net-coreblazortrade-shows-eventsnservicebusdata-deduplication

¿Te interesa este puesto?