C#/.NET Engineer
Listed on 2026-10-17
-
Software Development
.NET Developer, Backend Developer, SQL Developer, Software Engineer
Location:
Hamilton, NJ - Will start 100% on site for 30 days & move to hybrid 3 days onsite 2 days remote Duration: 12 months from candidate’s start date
- 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.
We are looking for a C#/.NET Engineer to lead the modernization of a mission-critical legacy benefits system hosted on AWS Cloud.
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, As No Tracking , 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…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).