Sr. Software Engineer, Platform Modernization

Innovation Associates, Inc.• US,
•$116,000 - $185,000

About The Position

The Sr. Software Engineer, Platform Modernization will incrementally modernize iA’s NEXiA pharmacy fulfillment software using a strangler fig approach. The role moves individual capabilities out of the legacy system into well-defined bounded contexts, routes traffic to new implementations, and provides a rollback path while preserving familiar workflows for pharmacists and operators. The work focuses on the boundary between legacy and modern systems: isolating legacy coupling, maintaining compatibility across customer versions, and modeling software around real pharmacy workflows. The engineer will work with pharmacists, operators, support staff, and cross-functional teams to validate domain models and align modernization priorities with customer impact. The role includes full-stack development with .NET Core / ASP.NET Core and modern front-end frameworks; systems design across module boundaries; testing domain behavior across old and new components; and contributions to CI/CD, containerized deployments, and observability. The engineer is expected to use AI-assisted development tools and help mentor teammates on domain-driven design, migration patterns, and systems thinking.

Requirements

  • At least 6 years of software development experience, including meaningful experience modernizing or migrating existing systems rather than working exclusively on greenfield projects.
  • Demonstrated ability to model software around business domains, such as through domain-driven design, bounded context identification, or equivalent domain modeling practices.
  • Experience working at the boundary between legacy and modern systems, including anti-corruption layers, facade patterns, incremental migration, or feature flags for gradual cutover.
  • Strong proficiency in a statically typed object-oriented language; C#/.NET is strongly preferred, with Java or a similar language accepted if willing to ramp up.
  • Experience with modern front-end frameworks such as Angular, React, Blazor, or equivalent.
  • Understanding of on-premises deployment constraints, including customer-specific configurations, upgrade compatibility, and long-lived versions.
  • Ability to reason about how changes propagate across module and service boundaries.
  • Authorization to work for any U.S. employer; the employer will not sponsor work visas.

Nice To Haves

  • Experience in healthcare, pharmacy automation, or a regulated environment.
  • Experience with event-driven architectures and domain event patterns.
  • Familiarity with Azure cloud services and hybrid cloud/on-premises models.
  • Active use of AI-assisted development tools with concrete examples of productivity impact; hands-on experience with Claude Code, Opus, or Sonnet is a significant plus.
  • Experience with container orchestration such as Kubernetes or OpenShift in on-premises environments.

Responsibilities

  • Decompose legacy NEXiA capabilities into bounded contexts based on pharmacy workflows such as fulfillment, dispensing, inventory, and patient safety.
  • Design and implement anti-corruption layers and facade patterns that isolate new modules from legacy coupling.
  • Execute incremental strangler fig migrations, routing traffic from legacy paths to new implementations with rollback capability.
  • Maintain a seamless end-user experience while underlying systems are modernized.
  • Collaborate with pharmacists, operators, support staff, and other domain experts to validate domain models against real-world workflows.
  • Reason about system behavior across module boundaries, including failure modes, data consistency, and latency.
  • Design for on-premises customer-deployed environments, including upgrade paths, backward compatibility, and long-lived versions.
  • Own technical design within bounded contexts, propose decomposition strategies, and defend them in design reviews.
  • Build full-stack applications using .NET Core / ASP.NET Core and modern front-end frameworks.
  • Write integration tests that validate domain behavior across old and new system boundaries.
  • Apply domain-driven design patterns, including aggregates, domain events, and context mapping, where they provide clarity.
  • Contribute to CI/CD pipelines, containerized deployments, and observability, especially at legacy-modern integration points.
  • Adopt, evaluate, and integrate AI-assisted development tools into daily workflows for activities such as understanding legacy code, generating migration scaffolding, and validating domain models.
  • Work across engineering, product, QA, and customer-facing teams to align modernization priorities with customer impact.
  • Participate in design discussions, challenge assumptions, surface risks, and propose alternatives.
  • Mentor team members on domain-driven design, migration patterns, and systems thinking.

Benefits

  • Generous time off
  • Paid volunteer days
  • Wellness programs
  • Medical insurance
  • Dental insurance
  • Vision insurance
  • 401(k) with employer match
  • Up to 12 weeks of 100% paid parental leave
  • Pet insurance
  • iA University
  • Tuition reimbursement for eligible degree programs and certifications
  • Professional development funding
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service