Sr/Lead C#/.NET Engineer
Location: Hamilton, NJ (On site)
Position Type: Contract
In Person Interview
*Deep expertise in C# and the .NET platform (.NET Framework and .NET Core / .NET 6/8+), including async programming, memory/performance optimization, and modern language features
*Expert-level Entity Framework / EF Core: entity modeling, Fluent API, migrations, query optimization, transactions, concurrency, provider-specific behavior
We are modernizing a large, mission-critical Honeywell Bull mainframe benefits system (FAMIS) converting ~1.5M lines of COBOL and ~160K lines of JCL to C#/.NET, migrating an IDS-II hierarchical database to PostgreSQL, and deploying on AWS. Converted code is delivered by an automated modernization vendor in an "as-is" state. This Lead/Principal role owns the refactoring of that converted code into clean, maintainable, high-performance, production-grade C#/.NET, defines the data-access architecture using Entity Framework Core against PostgreSQL, sets engineering standards for the team, and safeguards functional equivalence to the legacy system. This is a benefits system serving NJ families correctness, performance within the nightly batch window, and maintainability are paramount.
Job Description
We are looking for a C#/.NET Engineer to lead the modernization of a mission-critical legacy benefits system hosted on AWS Cloud. This position will be full-time and hybrid in Hamilton, NJ.
What You'll Do
- Refactor machine-converted, COBOL-derived C# into idiomatic, maintainable .NET meaningful naming, proper OO/domain design, separation of concerns, dependency injection
- Work in .NET (Core) / .NET (latest version); apply modern C# language features (LINQ, async/await, records, pattern matching, nullable reference types, generics)
- Design and implement service layers, domain models, and APIs (ASP.NET Core Web API) that back the Angular UI
- Refactor legacy batch/procedural logic (converted from COBOL/JCL) into maintainable, testable .NET; handle exact decimal/financial arithmetic (decimal, rounding rules) to preserve benefit-calculation correctness
- Optimize performance to meet the nightly batch window (profiling, memory management, async I/O, parallelism where safe)
- Entity Framework / Data Layer:
- Own the data-access architecture using Entity Framework Core against PostgreSQL (Npgsql provider)
- Refactor the auto-generated/converted data-access layer into a clean, performant EF Core model
- Design entity models, DbContext configuration, Fluent API mappings, relationships, keys, and indexes reflecting the IDS-II PostgreSQL schema (168 tables, 4,024+ fields)
- Optimize EF Core queries (eager/lazy/explicit loading, projection, AsNoTracking, compiled queries, batching) to avoid N+1 and meet performance SLAs on high-volume batch operations
- Manage EF Core migrations, concurrency handling, transactions, and connection resiliency
- Map legacy data types and semantics correctly (packed decimals, fixed-width, EBCDIC-origin data, condition codes) to PostgreSQL/EF types without behavioral drift
- Contribute to the COBOL-field PostgreSQL-column business-term data dictionary
- Technical Leadership:
- Define and enforce C#/.NET coding standards, architecture patterns, and refactoring guidelines for the engineering team
- Serve as senior technical authority on the converted codebase; make cross-cutting design decisions
- Mentor mid/junior C# developers; perform code reviews; drive engineering quality
- Partner with the Technical Manager/Architect on target architecture and the refactoring strategy
- Quality, Testing & Delivery:
- Ensure functional equivalence: build unit and regression tests (xUnit/NUnit, Moq) to validate refactored code against the legacy baseline; fix FET-surfaced defects
- Integrate with CI/CD (AWS CodeBuild/CodePipeline), enforce quality/security gates (SonarQube, static analysis, secure coding/OWASP)
- Collaborate with FAMIS SMEs to preserve business logic (eligibility, benefit calculation, payments, EBT)
- Deliver incrementally within Scrum; document design and decisions
What You'll Need
Required:
- 12-15 years of professional C#/.NET software engineering, including senior/lead responsibilities
- Deep expertise in C# and the .NET platform (.NET Framework and .NET Core / .NET 6/8+), including async programming, memory/performance optimization, and modern language features
- Expert-level Entity Framework / EF Core: entity modeling, Fluent API, migrations, query optimization, transactions, concurrency, provider-specific behavior
- Strong relational database skills; PostgreSQL strongly preferred (Oracle/SQL Server acceptable) schema design, indexing, query tuning, stored procedures
- ASP.NET Core Web API design (REST) for front-end integration
- Solid software design: SOLID, design patterns, domain modeling, layered/clean architecture, dependency injection
- Testing discipline: unit/integration/regression testing frameworks; TDD/mocking
- Git, CI/CD, and static code analysis (SonarQube)
- Proven ability to read, reason about, and safely refactor large, unfamiliar codebases
- Exceptional attention to correctness financial/benefit calculation accuracy
Preferred:
- Legacy modernization experience COBOL-to-C#/Java conversion, mainframe migration, or automated-transformation tooling
- Understanding of mainframe concepts (COBOL, JCL, batch processing, hierarchical/CODASYL databases like IDS-II/IMS) to reason about source behavior
- High-volume batch processing performance tuning
- AWS experience (ECS/EKS, Lambda, RDS for PostgreSQL, S3, CloudWatch, IaC/CloudFormation)
- Experience integrating with enterprise job schedulers (Stonebranch, Control-M, CA7)
- Government / benefits / healthcare or other regulated, high-correctness domains
- Npgsql specifics, EF Core performance internals, or ORM migration experience
Physical Demands
- Ability to safely and successfully perform the essential job functions consistent with the ADA and other federal, state, and local standards
- Sedentary work that involves sitting or remaining stationary most of the time with occasional need to move around the office to attend meetings, etc.
- Ability to conduct repetitive tasks on a computer, utilizing a mouse, keyboard, and monitor