NCR Corporation logo

Senior Software Engineer

NCR Corporation
NewPosted yesterday

LOCATION

CHENNAI · Onsite

EXPERIENCE

7 - 10 Years

TYPE

FullTime

SKILLS REQUIRED

C#.NET CoreSoftware ArchitectureDebuggingUnit TestingObservabilityPerformance Optimization

Job description

Overview

NCR Voyix is seeking a Senior Software Engineer with strong C# and .NET expertise to build, modernize, and operate mission-critical payment and commerce platforms, owning complex technical capabilities from design through production support across legacy and modern technology stacks.

What you'll do

  • Design, develop, test, deploy, and support secure, reliable applications using C#, .NET Framework, modern .NET, ASP.NET, ASP.NET Core, and Web APIs.
  • Maintain and modernize legacy applications built with ASP.NET Web Forms and .NET Framework 4.7.2.
  • Lead or contribute to service rewrites, platform modernization, system integrations, and complex data migrations.
  • Build scalable, low-latency, event-driven services using messaging platforms such as RabbitMQ, Kafka, Azure Service Bus, or NATS JetStream.
  • Design distributed caching and state-management solutions using Redis or Valkey.
  • Build and operate containerized workloads using Docker, Kubernetes, and Azure Kubernetes Service.
  • Design secure integrations involving Azure Key Vault, HSMs, encryption services, certificates, TLS, and mutual TLS.
  • Apply asynchronous programming, concurrency, parallel processing, and multithreading techniques safely in high-throughput systems.
  • Troubleshoot application, database, networking, performance, and production issues.
  • Improve throughput, latency, reliability, scalability, and resource utilization through profiling, testing, and optimization.
  • Build automation and operational tooling using PowerShell or similar scripting technologies.
  • Build and maintain CI/CD workflows using GitHub Actions and Git-based source control.
  • Contribute to database design, optimization, migration, and troubleshooting, including MySQL-based systems.
  • Implement observability using structured logging, metrics, distributed tracing, dashboards, and actionable alerts.
  • Use tools such as Splunk, AppDynamics, Jaeger, Grafana, Prometheus, Datadog, Elastic, or Kibana to monitor applications and investigate production behavior.
  • Write architecture and design documentation, including sequence diagrams, flow diagrams, interface contracts, runbooks, and Architecture Decision Records.
  • Apply sound software design principles including OOP, SOLID, DRY, Clean Architecture, dependency injection, and appropriate design patterns.
  • Develop automated unit, integration, component, contract, and performance tests.
  • Participate in code reviews and ensure quality, security, reliability, and operational readiness.
  • Use AI coding tools and agentic workflows to improve design, development, testing, debugging, review, troubleshooting, documentation, and automation.
  • Mentor junior and mid-level engineers through pairing, design discussions, technical guidance, and code reviews.
  • Participate in on-call support, incident response, and post-incident reviews.
  • Collaborate with product managers, architects, engineers, and stakeholders to convert ambiguous goals into reliable production systems.

What you'll need

  • 7 to 10 years of professional software engineering experience.
  • Strong production experience with C# and the .NET ecosystem.
  • Experience with ASP.NET or ASP.NET Web Forms, .NET Framework 4.7.2 or later, modern .NET preferably .NET 8 or later, ASP.NET Core, and Web API development.
  • Strong knowledge of software design and architecture principles including OOP, SOLID, DRY, Clean Architecture, dependency injection, and maintainable design patterns.
  • Experience designing and supporting backend APIs, distributed services, or integration platforms.
  • Demonstrated ownership of technical capabilities from design through production support.
  • Experience writing automated tests and building operationally supportable software.
  • Strong troubleshooting, debugging, root-cause analysis, and performance-improvement skills.
  • Practical knowledge of asynchronous programming, concurrency, and multithreading.
  • Working knowledge of HTTP and TCP-based communication.
  • Experience with GitHub or another Git-based source-control and code-review platform.
  • Ability to clearly explain architectural decisions and engineering trade-offs.
  • Experience creating design documents, sequence diagrams, and data-flow diagrams.
  • Experience mentoring engineers and conducting high-quality code reviews.
  • Experience using logs, metrics, traces, dashboards, and alerts to diagnose production systems.
  • Experience using AI coding tools such as GitHub Copilot, Claude, Claude Code, or equivalent tools.
  • Hands-on experience or strong working knowledge of AI agents, automation agents, AI-assisted internal tooling, or multi-step agentic workflows.

Nice to have

  • React or another modern front-end framework.
  • Entity Framework Core in high-volume production systems.
  • xUnit, NUnit, or comparable .NET testing frameworks.
  • PowerShell or another scripting and automation language.
  • Experience modernizing legacy .NET applications into modern .NET services.
  • Experience with RabbitMQ, Kafka, Azure Service Bus, or NATS JetStream.
  • Knowledge of event-driven architecture, asynchronous messaging patterns, message ordering, idempotency, retries, dead-letter handling, backpressure, and eventual consistency.
  • Experience with Azure, AWS, AKS, Docker, Kubernetes, Terraform, and GitHub Actions.
  • Experience with Redis, Valkey, MySQL, distributed caching, database optimization, and complex data migrations.
  • Knowledge of HSMs, encryption, tokenization, key management, TLS, mTLS, certificates, and PCI-DSS or other regulated environments.
  • Experience with observability tools such as Splunk, AppDynamics, Jaeger, Grafana, Prometheus, Datadog, Elastic, Kibana, OpsGenie, or OpenTelemetry.
  • Knowledge of Retrieval-Augmented Generation, Model Context Protocol, multi-agent orchestration frameworks, prompt engineering, and AI-assisted internal tooling.
  • Experience in payment processing, financial transaction platforms, retail commerce, hospitality commerce, e-commerce, marketplace platforms, real-time decisioning, or high-availability regulated systems.

Details

  • Offers of employment are conditional upon passage of screening criteria applicable to the job.

Read the full description and apply on the company’s own careers page.

Stay safe

Hiring on Abekus is free for applicants

We never charge a fee, and employers are prohibited from doing so. If a recruiter asks for payment, please report them right away.

Senior Software Engineer